【Kubernetes】kubectl diffで差分チェック
2022.02.16
2024.03.24
Kubernetes
kubectl
はじめに
Kubernetesで現在のリソースと適用したいマニフェストの差分を確認する方法を紹介します。
差分チェック
現在のリソースとの差分チェックはkubectl diff
を利用します。
ファイルを指定して、現在のリソースとの差分を確認する場合は下記のコマンドになります。
1kubectl diff -f <manifest file>
実際に使ってみると下記のようになります。
1❯ kubectl diff -f deployment.yml
2diff -u -N /var/folders/v7/jvzb8y655l37rx9g_tgmb3p80000gn/T/LIVE-225846615/apps.v1.Deployment.default.myapp /var/folders/v7/jvzb8y655l37rx9g_tgmb3p80000gn/T/MERGED-496287946/apps.v1.Deployment.default.myapp
3--- /var/folders/v7/jvzb8y655l37rx9g_tgmb3p80000gn/T/LIVE-225846615/apps.v1.Deployment.default.myapp 2022-02-15 23:06:47.000000000 +0900
4+++ /var/folders/v7/jvzb8y655l37rx9g_tgmb3p80000gn/T/MERGED-496287946/apps.v1.Deployment.default.myapp 2022-02-15 23:06:47.000000000 +0900
5@@ -6,7 +6,7 @@
6 kubectl.kubernetes.io/last-applied-configuration: |
7 {"apiVersion":"apps/v1","kind":"Deployment","metadata":{"annotations":{},"labels":{"app":"myapp"},"name":"myapp","namespace":"default"},"spec":{"replicas":3,"selector":{"matchLabels":{"app":"myapp"}},"template":{"metadata":{"labels":{"app":"myapp"}},"spec":{"containers":[{"image":"nginx","name":"web-container","ports":[{"containerPort":80}],"resources":{"limits":{"cpu":"500m","memory":"128Mi"},"requests":{"cpu":"250m","memory":"64Mi"}}}]}}}}
8 creationTimestamp: "2022-02-15T14:04:48Z"
9- generation: 1
10+ generation: 2
11 labels:
12 app: myapp
13 managedFields:
14@@ -109,7 +109,7 @@
15 uid: f483bd8e-7f6a-4298-8253-022e7d32aee8
16 spec:
17 progressDeadlineSeconds: 600
18- replicas: 3
19+ replicas: 5
20 revisionHistoryLimit: 10
21 selector:
22 matchLabels:
23@@ -137,8 +137,8 @@
24 cpu: 500m
25 memory: 128Mi
26 requests:
27- cpu: 250m
28- memory: 64Mi
29+ cpu: 500m
30+ memory: 128Mi
31 terminationMessagePath: /dev/termination-log
32 terminationMessagePolicy: File
33 dnsPolicy: ClusterFirst
本番クラスタなどに適用する前には、
kubectl diff
で差分を確認するのがいいと思います。
参考
Share
関連記事
【Kubernetes】Podを作成された順で取得する
2022.02.09
【Kubernetes】YAML形式とJSON形式でオブジェクトを取得
2022.02.05
KCNA受験体験記
2022.03.27
【Kubernetes】Security Contextについて
2022.06.19