在开始之前,我在 mac 上运行 kubernetes。
- 迷你库:1.17.0
- 指标服务器:1.8+
- vpa:vpa-release-0.8
我的问题是 vpa 不会扩大我的 pod 只是继续重新创建 pod。我遵循 gke vpa 示例。我设置部署cpu的资源请求:100m,内存:50mi。并部署 vpa。它给了我建议。updatemode 也是自动的。但它会继续重新创建 pod,当我检查 pod 重新创建的内容时,它不会更改资源请求kubectl describe pod podname
。
在此处输入图像描述
apiVersion: autoscaling.k8s.io/v1
kind: VerticalPodAutoscaler
metadata:
name: my-vpa
spec:
targetRef:
apiVersion: "apps/v1"
kind: Deployment
name: my-app-deployment
updatePolicy:
updateMode: "Auto"
apiVersion: apps/v1
kind: Deployment
metadata:
name: my-app-deployment
spec:
replicas: 2
selector:
matchLabels:
app: my-app-deployment
template:
metadata:
labels:
app: my-app-deployment
spec:
containers:
- name: my-container
image: k8s.gcr.io/ubuntu-slim:0.1
resources:
requests:
cpu: 100m
memory: 50Mi
command: ["/bin/sh"]
args: ["-c", "while true; do timeout 0.5s yes >/dev/null; sleep 0.5s; done"]
Status:
Conditions:
Last Transition Time: 2021-02-03T03:13:38Z
Status: True
Type: RecommendationProvided
Recommendation:
Container Recommendations:
Container Name: my-container
Lower Bound:
Cpu: 25m
Memory: 262144k
Target:
Cpu: 548m
Memory: 262144k
Uncapped Target:
Cpu: 548m
Memory: 262144k
Upper Bound:
Cpu: 100G
Memory: 100T
Events: <none>
我也尝试过善良。但它使用新的资源请求重新创建 pod,但从不运行保持挂起,因为节点的资源不足。我认为 vpa 无法正常工作的原因是 minikube 或者我没有制作多个节点。你认为那是亲戚吗?