kubectl editとは
kubernetes上のオブジェクトを直接編集できる
何が便利
# マニフェストを編集して保存
$ vi manifest.yaml
# 編集したマニフェストを適用
$ kubectl apply -f manifest.yaml
このようにマニフェストの編集とapplyという2段階の手順を踏む必要があったものが
$ kubectl edit config-map manifest
# ここで、エディタが起動するので編集して保存
という感じで、kubectl edit
を実行すると起動してくるエディタで編集して保存するだけで修正内容がすぐに反映されるので、設定をちょこちょこ修正して、動きを見るような時に重宝する
使い方
kubectl edit <オブジェクト種別> <オブジェクト名>
kubectl edit svc/docker-registry # docker-registryという名前のサービスを編集します
KUBE_EDITOR="nano" kubectl edit svc/docker-registry # エディターを指定します
editのほかにpatchもある
kubectl patch
もあり、こちらはエディタでリソースを編集せずに、コマンドのみでダイレクトにリソース変更を完結することができる
# ノードを部分的に更新します
kubectl patch node k8s-node-1 -p '{"spec":{"unschedulable":true}}'
公式ドキュメント
kubectl edit
kubectl patch