【发布时间】:2019-04-23 18:33:17
【问题描述】:
我使用的yaml如下图
apiVersion: v1
kind: Service
metadata:
name: xxx-svc
labels:
app: xxxxxx
spec:
type: NodePort
ports:
- port: 8080
selector:
app: xxxxxx
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: my-xxx
labels:
app: xxxxxx
spec:
selector:
matchLabels:
app: xxxxxx
template:
metadata:
labels:
app: xxxxxx
spec:
containers:
- name: xxxxxx
image: yyy/xxxxxx:latest
ports:
- containerPort: 8080
resources:
requests:
cpu: "100m"
memory: "504Mi"
limits:
cpu: "100m"
memory: "504Mi"
---
apiVersion: autoscaling/v2beta2
kind: HorizontalPodAutoscaler
metadata:
name: xxxxxx
spec:
scaleTargetRef:
apiVersion: apps/v1
kind: Deployment
name: my-xxx
minReplicas: 1
maxReplicas: 3
metrics:
- type: Resource
resource:
name: cpu
target:
type: Utilization
averageUtilization: 50
- type: Resource
resource:
name: memory
target:
type: Value
averageValue: 500Mi
Service、HPA、Deployment 一切都已成功部署,但是当我检查 hpa (kubectl get hpa) 时,我得到以下结果
NAME REFERENCE TARGETS MINPODS
MAXPODS REPLICAS AGE
xxxxxx Deployment/my-xxx unknown/500Mi, 1%/50% 1 3 3 69m
我得到 (kubectl describe hpa) 的原因是
警告 FailedComputeMetricsReplicas 21m (x4 over 22m) Horizontal-pod-autoscaler 无法获取内存利用率:缺少内存请求
内存未知但 CPU 工作的原因可能是什么
【问题讨论】:
-
在后台 hpa 正在为内存工作,但是当我尝试 kubectl describe 时,它显示未知。我认为它将在新版本中修复
标签: docker kubernetes