strategic, merge, json
strategic (Default): kennt Merge-Keys aus dem
Schema, patcht z.B. containers per
name statt die Liste zu ersetzen.
--type=merge (RFC 7386): simpel, aber Listen
werden komplett ersetzt.
--type=json (RFC 6902): Op-Liste
(add/replace/remove) mit
präzisen Pfaden.
CRDs: kein strategic-Support,
merge oder json verwenden.
--subresource (stable seit v1.33) mit
status, scale oder resize
bei get/patch/edit/replace und apply --server-side;
resize ändert
Pod-Ressourcen in place (GA seit v1.35).
kubectl patch deploy web -p '{"spec":{"replicas":4}}'
kubectl patch deploy web --type=merge \
-p '{"metadata":{"labels":{"team":"pay"}}}'
kubectl patch deploy web --type=json -p '[{"op": "replace",
"path": "/spec/template/spec/containers/0/image",
"value": "web:2.0"}]'
kubectl patch pod api --subresource=resize -p \
'{"spec":{"containers":[{"name":"api",
"resources":{"requests":{"cpu":"500m"}}}]}}'