地方エンジニアの学習日記

興味ある技術の雑なメモだったりを書いてくブログ。たまに日記とガジェット紹介。

【k8s】bashで便利に補完したりする

kubetnetsクラスタを壊して繰り返してをしてるとzshのセットアップなんかするのすらめんどくさいことがあったりします。

なのでbashで使えるk8sの便利ツールを最低限入れる際の手順です。(githubcurl & shとかで叩けるようにしておくと便利)

cat <<"EOT" >> ${HOME}/.bash_profile

alias k="kubectl"
complete -o default -F __start_kubectl k
EOT

git clone https://github.com/jonmosco/kube-ps1.git ~/.kube-ps1
cat <<"EOT" >> ~/.bash_profile

source ~/.kube-ps1/kube-ps1.sh
function get_cluster_short() {
  echo "$1" | cut -d . -f1
}
KUBE_PS1_CLUSTER_FUNCTION=get_cluster_short
KUBE_PS1_SUFFIX=') '
PS1='$(kube_ps1)'$PS1
EOT

git clone https://github.com/ahmetb/kubectx.git ~/.kubectx
ln -sf ~/.kubectx/completion/kubens.bash /etc/bash_completion.d/kubens
ln -sf ~/.kubectx/completion/kubectx.bash /etc/bash_completion.d/kubectx

cat <<"EOT" >> ~/.bash_profile

export PATH=~/.kubectx:$PATH
EOT

curl -L -o /usr/local/bin/stern https://github.com/wercker/stern/releases/download/1.11.0/stern_linux_amd64
chmod +x /usr/local/bin/stern

最低限定番どころだけでも入れておけば自宅で遊び半分でやる程度の検証なら問題なさそう。

kubernetes.io