これまでのあらすじ
Kubernetes初心者の私はMacにDockerとKubernetesをインストールし、Kubernetes Dashboardにアクセスすることに成功した
https://qiita.com/pnpnd1111/items/2140f7941cfe3995fc17
以来、業務の傍らサイトやら本やらを見ながらちょこちょこKubernetesをいじっていた。
しかし・・・
ある日のことだった。
ターミナルを開き、
$ kubectl get nodes
get nodesしようとすると
The connection to the server <IP>:8001 was refused - did you specify the right host or port?
むむ!!なんですかこれは!!!
kubeconfigが臭う
検索して色々みてみたところ、どうやらkubeconfigファイルとやらの設定が間違っているとこうなるらしい。
ということでみてみます
$ kubectl config view
apiVersion: v1
clusters:
- cluster:
insecure-skip-tls-verify: true
server: https://localhost:6443
name: docker-for-desktop-cluster
- cluster:
insecure-skip-tls-verify: true
server: https://<IP>:8001
name: mycluster
contexts:
- context:
cluster: docker-for-desktop-cluster
user: docker-for-desktop
name: docker-for-desktop
- context:
cluster: mycluster
namespace: cert-manager
user: admin
name: mycluster-context
current-context: mycluster-context
kind: Config
preferences: {}
users:
- name: admin
user:
token: <token>
- name: docker-for-desktop
user:
client-certificate-data: REDACTED
client-key-data: REDACTED
clusterとcontextsが2つあって、current-contextはmycluster-contextになっています。
もう片方のcontextに切り替えたらいけるのでは?
contextを切り替えてみる
$ kubectl config use-context docker-for-desktop
Switched to context "docker-for-desktop"
これで試してみましょう
$ kubectl get nodes
NAME STATUS ROLES AGE VERSION
docker-for-desktop Ready master 23d v1.10.11
いけました!!!
言われてみれば、それはそうだよね〜〜〜というミスでした。
参考にした記事
https://qiita.com/uni-3/items/a4f2afa0973bfc35b498
https://tracpath.com/works/devops/how-to-install-the-kubernetes-kubeadm/