はじめに
GKEでクラスタやノードプールを作成・削除を繰り返している内に、kubectlが使えなくなったしまった。
どうやらkuebctlでアクセスするクラスタへの権限が書かれているconfigとcontext(コンテキスト)がぐちゃぐちゃになったみたいです。
それらを整理した際のメモです。
※ぐちゃぐちゃになった原因がGCPウェブコンソールからクラスタを作成したり、CentOSサーバー内のkubectlで作成したりとしていたからだと後々気づきました。
kubectlのconfigファイル
どのクラスタにアクセスして操作するかの権限をまとめたファイルかと勝手に認識しています。
複数あるコンテキストを1つにまとめたものになるかと思います。
なので各コンテキストをちゃんと整理すれば、このファイルは自動的に整理されるはず・・・。
configファイルの場所
CentOS内ユーザーのホームディレクトリ配下に/.kube/configになります。
これは今は触らない。
kubectl config view
でも内容は確認できます。
コンテキスト
コンテキスト一覧を確認
kubectl config get-contexts
コンテキストがあれば表示されます。
*印があるものが現在選択されているコンテキストです。
なので現在選択させているコンテキストに書かれているクラスタにしかkubectlは利用できません。
コンテキストを切り替える
別のクラスタに命令を出す場合は、コンテキストの切り替えが必要になる。
kubectl config use-context コンテキスト名
コンテキストの削除
クラスタを使わなくなった場合などはコンテキストを削除して整理したいので。
config delete-context コンテキスト名
まとめ
1つのコンテキストで複数のクラスタへのアクセスも可能みたいです。
今回の参照元はこちら