Это может быть причиной того, что вы настроили сервер метрик, а сервер метрик не смог найти ваши ресурсы по InternalIP.
Решение состоит в том, чтобы заменить файл metrics-server-deployment.yaml
в metrics-server/deploy/1.8+
наследующий файл yaml:
apiVersion: v1
kind: ServiceAccount
metadata:
name: metrics-server
namespace: kube-system
---
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: metrics-server
namespace: kube-system
labels:
k8s-app: metrics-server
spec:
selector:
matchLabels:
k8s-app: metrics-server
template:
metadata:
name: metrics-server
labels:
k8s-app: metrics-server
spec:
serviceAccountName: metrics-server
volumes:
# mount in tmp so we can safely use from-scratch images and/or read-only containers
- name: tmp-dir
emptyDir: {}
containers:
- command:
- /metrics-server
- --metric-resolution=30s
- --kubelet-insecure-tls
- --kubelet-preferred-address-types=InternalIP
name: metrics-server
image: k8s.gcr.io/metrics-server-amd64:v0.3.1
imagePullPolicy: Always
volumeMounts:
- name: tmp-dir
mountPath: /tmp
Кроме того, включите --authentication-token-webhook
в kubelet.conf
, тогда вы сможете получить метрики.
Кроме того, ознакомьтесь с моим ответом шаг за шагомИнструкция по настройке HPA с использованием metrics-server.
Как включить сервер KubeAPI для метрик HPA Autoscaling
Надеюсь, это поможет.Вернитесь назад, если у вас возникнут какие-либо проблемы.