ドキュメントから私が理解したのは次のことです。
-
クラスターに新しいk8sリソースを作成しますkubectl create
-
ライブクラスタ内のリソースを更新するkubectl replace
-
作成 + 置換 (参照)kubectl apply
私の質問は
- クラスター内で同じタスクを実行するのに 3 つの操作があるのはなぜですか?
- これらの操作の使用例は何ですか?
- 内部的にはそれぞれどう違うのでしょうか?
ベストアンサー1
これらは 2 つの異なるアプローチです。
命令型管理
kubectl create
それを私たちは呼んでいます命令型管理このアプローチでは、Kubernetes API に対して、K8s クラスターの世界をどのようにしたいかではなく、何を作成、置換、または削除したいかを伝えます。
宣言的管理
kubectl apply
の一部である宣言的管理アプローチでは、ライブ オブジェクトに適用した変更 (つまり、 を通じてscale
)は、オブジェクトに他の変更を加えた場合でも「維持」されます。apply
命令型管理と宣言型管理の詳細については、Kubernetes オブジェクト管理ドキュメンテーション。