Deployment
apiVersion: apps/v1
kind: Deployment
metadata: {name: my-agent}
spec:
replicas: 3
selector: {matchLabels: {app: my-agent}}
template:
metadata: {labels: {app: my-agent}}
spec:
containers:
- name: agent
image: myrepo/my-agent:v1
resources:
requests: {cpu: 500m, memory: 1Gi}
limits: {cpu: 2, memory: 4Gi}
readinessProbe:
httpGet: {path: /health, port: 8080}Advertisement
Service
ClusterIP for internal. Ingress or LoadBalancer if external.
Advertisement
HPA
apiVersion: autoscaling/v2
kind: HorizontalPodAutoscaler
metadata: {name: my-agent}
spec:
scaleTargetRef: {kind: Deployment, name: my-agent}
minReplicas: 3
maxReplicas: 20
metrics:
- type: Resource
resource: {name: cpu, target: {type: Utilization, averageUtilization: 60}}