Skip to content

Instantly share code, notes, and snippets.

@NorbertFenk
Last active July 25, 2019 08:32
Show Gist options
  • Save NorbertFenk/4f6ef490e80a54c73665f7f52f6601b2 to your computer and use it in GitHub Desktop.
Save NorbertFenk/4f6ef490e80a54c73665f7f52f6601b2 to your computer and use it in GitHub Desktop.
Kubernetes VPA examples
# VPA
---
apiVersion: autoscaling.k8s.io/v1beta2
kind: VerticalPodAutoscaler
metadata:
name: my-vpa
namespace: vpa-pdb-test
spec:
targetRef:
apiVersion: "extensions/v1beta1"
kind: Deployment
name: my-auto-deployment
updatePolicy:
updateMode: "Auto"
resourcePolicy:
containerPolicies:
- containerName: "*"
maxAllowed:
cpu: 1000m
memory: 40Mi
...
# Deployment
---
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: my-auto-deployment
namespace: vpa-pdb-test
spec:
replicas: 2
template:
metadata:
labels:
app: my-auto-deployment
spec:
containers:
- name: my-container
image: k8s.gcr.io/ubuntu-slim:0.1
resources:
requests:
cpu: 350m
memory: 30Mi
command: ["/bin/sh"]
args: ["-c", "while true; do timeout 0.2s yes >/dev/null; sleep 0.5s; done"]
...
# PDB
---
apiVersion: policy/v1beta1
kind: PodDisruptionBudget
metadata:
name: my-auto-pdb
namespace: vpa-pdb-test
spec:
maxUnavailable: 1
selector:
matchLabels:
app: my-auto-deployment
...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment