
Dockerができたら、次は、Kubernetesかな
この通りに実行
Rockey8.4
kubenetesインストール
- docker インストール
- kubernetes インストール
# vi /etc/yum.repos.d/kubernetes.repo
[kubernetes] name=Kubernetes baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-$basearch enabled=1 gpgcheck=1 repo_gpgcheck=1 gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg exclude=kubelet kubeadm kubectl
# dnf upgrade -y
# dnf install -y kubelet kubeadm kubectl –disableexcludes=kubernetes
# systemctl enable kubelet
# systemctl start kubelet
環境設定(マスターノードのみ)
Ubuntu20.04
kubectlインストール
$ curl -LO “https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64/kubectl”
$ chmod +x ./kubectl
$ sudo mv ./kubectl /usr/local/bin/kubectl
$ kubectl version –short
Flag –short has been deprecated, and will be removed in the future. The –short output will become the default.
Client Version: v1.24.3
Kustomize Version: v4.5.4
The connection to the server localhost:8080 was refused – did you specify the right host or port?
kubectl config
コンテキストを作成、表示する方法
ユーザー作成
$ kubectl config set-credentials user1 –username=user1 –password=pass1
User “user1” set.
$ kubectl config set-credentials user2 –username=user2 –password=pass2
User “user2” set.
クラスタを作成
$ kubectl config set-cluster cluster –insecure-skip-tls-verify=true –server=http://master:8080
Cluster “cluster” set.
クラスタとユーザーを関連付ける
$ kubectl config set-context context1 –user=user1 –cluster=cluster
Context “context1” created.
$ kubectl config set-context context2 –user=user2 –cluster=cluster
Context “context2” created.
利用するコンテキストを選択と切替
$ kubectl config use-context context2
Switched to context “context2”.
$ kubectl config get-contexts <= 確認
CURRENT NAME CLUSTER AUTHINFO NAMESPACE
context1 cluster user1
* context2 cluster user2
$ kubectl config use-context context1
Switched to context “context1”.
$ kubectl config get-contexts
CURRENT NAME CLUSTER AUTHINFO NAMESPACE
* context1 cluster user1
context2 cluster user2
設定内容の確認
$ kubectl config view
apiVersion: v1
clusters:
- cluster:
insecure-skip-tls-verify: true
server: http://master:8080
name: cluster
contexts:
- context:
cluster: cluster
user: user1
name: context1
- context:
cluster: cluster
user: user2
name: context2
current-context: context1
kind: Config
preferences: {}
users:
- name: user1
user:
password: pass1
username: user1
- name: user2
user:
password: pass2
username: user2
クラスタの確認
$ kubectl config get-clusters
NAME
cluster
作成したものを削除
[コンテキスト削除]
$ kubectl config delete-context context1
deleted context context1 from /home/u000326/.kube/config
$ kubectl config delete-context context2 <= 警告「activeを消すよ!」
warning: this removed your active context, use "kubectl config use-context" to select a different one
deleted context context2 from /home/u000326/.kube/config
(確認)
$ kubectl config get-contexts <= 確認。消えている。
CURRENT NAME CLUSTER AUTHINFO NAMESPACE
[クラスタ削除]
$ kubectl config delete-cluster cluster
deleted cluster cluster from /home/u000326/.kube/config
[ユーザー削除]
$ kubectl config unset users.user1
Property "users.user1" unset.
$ kubectl config unset users.user2
Property "users.user2" unset.
[最終確認]
$ kubectl config view
apiVersion: v1
clusters: null
contexts: null
current-context: context2
kind: Config
preferences: {}
users: null
指定したホストでPodを動かす方法(taint)
以下は、止めた
事前、Proxyな環境な人は、環境設定
sudo vi /etc/systemd/system/multi-user.target.wants/snapd.service 以下を追加 [Service] Environment=http_proxy=http://172.16.1.81:8080 Environment=https_proxy=http://172.16.1.81:8080 sudo systemctl daemon-reload sudo systemctl restart snapd.service
$ sudo apt-get install -y kubernetes
$ sudo kubernetes install
$ sudo systemctl restart snapd.service
$ sudo kubectl version –short
Client Version: v1.24.3 Kustomize Version: v4.5.4