kubernetesで操作する環境が増えてくると、想定外の環境にデプロイするような事故が増えてくるので、少しでも事故を減らすためのツールを紹介します。
kubectx
コンテキストを簡単に切り替えてくれるツール
インストール
$ brew install kubectx
コンテキスト切り替え
# 特定の環境に切り替え $ kubectx gke_my-project-development_asia-northeast1-a_sample-cluster
、、、、コンテキストが長い…
別名をつけることができる。
$ kubectx MYDEV=gke_my-project-development_asia-northeast1-a_sample-cluster
これで、別名で切り替えることができる。
# 開発環境に切り替え $ kubectx MYDEV # 本番に切り替え(本番の別名をつけておく) $ kubectx PROD
kube-ps1
実行中のコンテキストをプロンプトに表示させることができる。 https://github.com/jonmosco/kube-ps1
インストール
$ brew install kube-ps1
.bashrcの設定
# .bashrc PS1='\u:\W\$' # プロンプト表示を、ユーザ名とカレントディレクトリのみにしている(ここは各自の好みで) source "/<インストールパス>/kube-ps1/share/kube-ps1.sh" PS1='$(kube_ps1)'$PS1 kubeoff # デフォルトでオフにしておく
# 表示 $ kubeon # 非表示 $ kubeoff
こんな感じで表示される
$ kubeon # ステージングに切り替え $ kubectx STAGE (⎈ |STAGE:default)username:workspace$ # 本番に切り替え $ kubectx PROD (⎈ |PROD:default)jusername:workspace$ $ kubeoff username:workspace$
これで自分が操作中のコンテキストを確認しながら作業できるので、少しは安全になります。