HorizontalPodAutoscaling su Amazon EKS


12

Quando provo a configurare un HorizontalPodAutoscaler su Amazon EKS, viene sempre visualizzata la colonna TARGETS <unknown>/50%e quando descrivo l'HPA, vedo

Avviso FailedGetResourceMetric 17s (x50 over 1h) orizzontale-pod-autoscaler in grado di ottenere metriche per la CPU della risorsa: impossibile recuperare le metriche dall'API di metriche delle risorse: il server non è riuscito a trovare la risorsa richiesta (get pods.metrics.k8s.io)

Ho trovato più post su altri siti su problemi simili che menzionano l'uso --horizontal-pod-autoscaler-use-rest-clientssul gestore del controller del cubo, ma non riesco a trovare un modo per modificare le impostazioni sul gestore del controller del cubo per un cluster EKS poiché sembra che tu non possa SSH nei nodi master per la gestione e kube-controller-manager non è elencato come risorsa in nessuna parte del sistema.

Ho provato a configurare manualmente il metrics-server seguendo le istruzioni su https://github.com/kubernetes-incubator/metrics-server ma in tal caso, mi viene mostrato che EKS non fornisce la mappa di configurazione necessaria per l'autenticazione dell'API estensioniCould not create the API server: configmaps "extension-apiserver-authentication" not found


Ecco una soluzione alternativa eks hpa medium.com/eks-hpa-workaround/k8s-hpa-controller-6ac2dfb4c028 che stiamo usando
James Smith

meglio il kubernete originale, ci sono molti strumenti per avviare il cluster e gestire gli addon è così facile usando
helm

Risposte:


12

MODIFICATO

AWS ha rilasciato il supporto per il ridimensionamento automatico dei pod orizzontali con metrica personalizzata: https://aws.amazon.com/pt/about-aws/whats-new/2018/08/amazon-eks-supports-horizontal-pod-autoscaling- con-custom-metrico /

RISPOSTA PRECEDENTE

Questo è un problema noto attualmente con EKS. Ecco la mia risposta dal supporto (parzialmente omesso):

Sfortunatamente, il piano di controllo EKS presenta attualmente problemi con l'aggregatore metriche-server. Il team di assistenza EKS sta lavorando a questi problemi per portare il supporto metrico server al piano di controllo.

Non appena questa funzione viene rilasciata, dovrebbe essere annunciata pubblicamente in uno dei seguenti collegamenti:

Ho indicato il tuo interesse per questo problema e proporrò una soluzione per tuo conto.

Spero che lo risolvano presto.


Grazie. Avevo assolutamente bisogno di questa funzione e ho ottenuto una risposta simile da loro. Sono andato avanti e ho creato un cluster con kops su cui posso effettivamente lavorare in caso di problemi. Spero che Amazon fornirà qualche configurazione in più a questa piattaforma in futuro.
James Mills,

2

So che questo è un argomento più vecchio, ma volevo aggiungere qualcosa, dal momento che abbiamo avuto problemi a configurarlo di recente.

Mentre HPA è supportato in Kubernetes 1.10 dalla versione eks.2 di eks, in Kubernetes 1.11 è già supportato dalla versione eks.1.

Ma non funziona "out of the box" e il problema è lo stesso descritto nella domanda (la CPU corrente non è impostata).

È necessario sapere che il server metriche non è installato su EKS per impostazione predefinita. Il server delle metriche è disponibile qui: https://github.com/kubernetes-incubator/metrics-server .

Dopo che il metrics-server è in esecuzione, HPA sta lavorando su EKS come previsto.

Spero che aiuti qualcuno!


Salve anche dopo aver aggiunto il server delle metriche, hpa non è in grado di ricevere le metriche. :(
Balakumar Ezhilmaran,

Per me questo ha funzionato. Quale versione di EKS stai usando? Forse il supporto AWS può essere d'aiuto quando tutti gli altri suggerimenti non sono stati d'aiuto.
Pampy,

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.