У меня есть кластер Kubernetes на AWS, который был запущен с Kops.Я думаю, что изначально запускался как v1.7.0, но с тех пор обновился до v1.9.10.
Все работает нормально, кроме автоматического масштабирования горизонтального модуля.
Ошибка переключилась между следующими 2, в зависимости откакую конфигурацию я установил.
"невозможно получить метрики для процессора ресурсов: нет метрик, возвращаемых из heapster"
"невозможно получить метрики для процессора ресурсов: невозможно получить метрики изAPI: серверу не удалось найти запрошенный ресурс (get pods.metrics.k8s.io) "
Мне известно, что в более ранних версиях по умолчанию использовался heapster, а в более новых версиях используется API метрик.
Я попытался установить метрики и кучу как самостоятельно, так и вместе.С установленным heapster я вижу дополнительные графики на приборной панели, поэтому, похоже, все работает нормально.
spec:
kubeControllerManager:
horizontalPodAutoscalerUseRestClients: true
В большинстве обсуждений по этой проблеме выше приведен этот конфигурационный файл, в котором использовались как true, так и false во всех комбинациях heapster.vs metrics setup.
kube-controller-manager 1.8. * имеет --horizontal-pod-autoscaler-use-rest-клиентов не установлен по умолчанию, в то время как 1.9. * имеет значение true по умолчанию.Поэтому мой путь обновления предполагает, что это вполне может быть связано.
Попробовал множество других предложений от SO и Google, но не могу вспомнить их все.
Ниже приведен YAML от HPA,не уверен, какие другие выходные данные будут полезны в диагностике этой проблемы, но при необходимости обновятся с дополнительными.
{
"kind": "HorizontalPodAutoscaler",
"apiVersion": "autoscaling/v1",
"metadata": {
"name": "myappname-mobile-deployment",
"namespace": "myappname",
"selfLink": "/apis/autoscaling/v1/namespaces/myappname/horizontalpodautoscalers/myappname-mobile-deployment",
"uid": "a8cd45d0-02a4-11e9-9660-12306a211636",
"resourceVersion": "53939792",
"creationTimestamp": "2018-12-18T09:09:44Z",
"annotations": {
"autoscaling.alpha.kubernetes.io/conditions": "[{\"type\":\"AbleToScale\",\"status\":\"True\",\"lastTransitionTime\":\"2018-12-18T09:10:14Z\",\"reason\":\"SucceededGetScale\",\"message\":\"the HPA controller was able to get the target's current scale\"},{\"type\":\"ScalingActive\",\"status\":\"False\",\"lastTransitionTime\":\"2018-12-18T09:10:14Z\",\"reason\":\"FailedGetResourceMetric\",\"message\":\"the HPA was unable to compute the replica count: unable to get metrics for resource cpu: no metrics returned from heapster\"}]"
}
},
"spec": {
"scaleTargetRef": {
"kind": "Deployment",
"name": "myappname-mobile-deployment",
"apiVersion": "extensions/v1beta1"
},
"minReplicas": 1,
"maxReplicas": 5,
"targetCPUUtilizationPercentage": 30
},
"status": {
"currentReplicas": 1,
"desiredReplicas": 0
}
}