Kubernetes InPlacePodVerticalScaling feature
Kubernetes v1.27 introduces InPlacePodVerticalScaling, allowing seamless pod resource resizing without restarts
Enhanced Continuity: Eliminates the downtime and potential data loss caused by pod restart
Cost Savings: Avoid overprovisioning and optimizing resource usage. InPlacePodVerticalScaling lets you allocate resources precisely as needed
In this example for pod memory resources configuration, the resizePolicy indicates that changes to the memory allocation require a restart of the container, and for CPU resources the restart is not necessary during resizing.
cat <<EOF | kubectl apply -f -
---
apiVersion: v1
kind: Pod
metadata:
labels:
run: nginx
name: nginx
spec:
containers:
- image: nginx
name: nginx
resizePolicy:
- resourceName: "memory"
restartPolicy: "RestartContainer"
- resourceName: "cpu"
restartPolicy: "NotRequired"
resources:
limits:
cpu: "300m"
memory: "1Gi"
requests:
cpu: "100m"
memory: "500Mi"
EOF