Kubernetes Learning 第13章:kubectl apply / diff / deleteの運用

Kubernetes の設定を管理・反映していく上で、kubectl コマンドは欠かせません。特に、日常的な運用でよく使うのが:

  • kubectl apply
  • kubectl diff
  • kubectl delete

この3つの役割と使い分けを理解することで、マニフェストの運用がグッとスムーズになります。


🔹 kubectl apply:マニフェストの適用(=反映)

kubectl apply -f deployment.yaml
  • applyYAMLファイルに書かれた内容をクラスタに反映します。
  • すでに存在しているリソースがあれば 差分を反映(上書き) し、無ければ新規作成します。
  • デプロイや設定変更のたびに基本的にこれを使います。

✅ よく使うオプション:

kubectl apply -f .  # ディレクトリ内のすべてのマニフェストを適用

🔹 kubectl diff:変更点の事前確認

kubectl diff -f deployment.yaml
  • 現在のクラスタの状態と、マニフェストで適用しようとしている内容の差分を確認できます。
  • git diff に近い感覚で使えます。
  • CI/CD の前に差分を確認したいときに便利。

📌 注意:

  • kubectl diff実際の変更を加えません。確認だけ です。
  • 変更がない場合は何も表示されません。

🔹 kubectl delete:リソースの削除

kubectl delete -f deployment.yaml
  • マニフェストファイルに対応するリソースを クラスタから削除します。
  • 主に一時的なテストリソースや不要になった設定を消すときに使います。

✅ よく使う例:

kubectl delete deployment my-deployment
kubectl delete pod mypod --namespace=test

🧩 運用のベストプラクティス

操作目的タイミング
applyクラスタへの反映マニフェストに変更を加えたとき
diff変更点の確認apply 実行前、CI/CDチェック前
delete不要なリソースの削除テスト終了時、構成変更時

💡 実践Tips

  • Git管理しているマニフェストを使って「GitOps」的に運用する場合、この3つは不可欠です。
  • kubectl apply -f . を定期的にCIパイプラインに組み込むと、定義と現実がズレない運用が可能です。
  • kubectl delete -f は事故につながることもあるので、削除前に kubectl getkubectl describe で状況確認を!

📘 例:差分確認 → 適用 の流れ

kubectl diff -f deployment.yaml     # まずは差分確認
kubectl apply -f deployment.yaml    # 問題なければ適用

🧹 リソース整理にも delete

特に test, dev 環境では、不要になったリソースをこまめに kubectl delete することで、クラスタをクリーンに保つことができます。


🧭 まとめ

  • kubectl apply現実をマニフェストに合わせるコマンド
  • kubectl diff安全な確認
  • kubectl delete削除の明示的操作

この3つをうまく使い分ければ、Kubernetesの運用が安定し、ミスも減らせます。

mh

Related Posts

Kubernetes Learning 第32章:Helmの基本操作(install, upgrade, rollback)~マニフェスト管理をもっと効率よく、自動化するために~

Kubernetes Learning 第31章:コンテナのセキュリティ対策(PodSecurityなど)~Kubernetes環境を守るために最低限知っておきたいこと~

You Missed

Google Cloud Platform エンジニア向け教科書:実践から認定まで : 第6章:Cloud Shellの活用:GCPを「どこからでも手軽に操作できる秘密基地」

  • 投稿者 mh
  • 6月 6, 2025
  • 10 views

Kubernetes Learning 第32章:Helmの基本操作(install, upgrade, rollback)~マニフェスト管理をもっと効率よく、自動化するために~

  • 投稿者 mh
  • 6月 5, 2025
  • 12 views

現場で使えるChrome DevTools実践ガイド 第11章:アクセシビリティの確認

  • 投稿者 mh
  • 6月 5, 2025
  • 16 views

Google Cloud Platform エンジニア向け教科書:実践から認定まで : 第5章:Cloud SDKとgcloudコマンド:GCPを「キーボードから操る」魔法のツール

  • 投稿者 mh
  • 6月 4, 2025
  • 25 views

Kubernetes Learning 第31章:コンテナのセキュリティ対策(PodSecurityなど)~Kubernetes環境を守るために最低限知っておきたいこと~

  • 投稿者 mh
  • 6月 4, 2025
  • 27 views

現場で使えるChrome DevTools実践ガイド 第10章:Device Modeでのレスポンシブ検証

  • 投稿者 mh
  • 6月 4, 2025
  • 29 views