web-dev-qa-db-fra.com

Métriques Kubernetes incapables d'extraire des métriques de pod/noeud

J'ai installé metrics-server sur kubernetes v1.11.2.

J'exécute un cluster de métal nu utilisant 3 nœuds et 1 maître

Dans le journal metrics-server, j'ai les erreurs suivantes:

E0907 14:29:51.774592       1 manager.go:102] unable to fully collect metrics: [unable to fully scrape metrics from source kubelet_summary:vps01: unable to 
fetch metrics from Kubelet vps01 (vps01): Get https://vps01:10250/stats/summary/: dial tcp: lookup vps01 on 10.96.0.10:53: no such Host, unable to fully scr
ape metrics from source kubelet_summary:vps04: unable to fetch metrics from Kubelet vps04 (vps04): Get https://vps04:10250/stats/summary/: dial tcp: lookup 
vps04 on 10.96.0.10:53: no such Host, unable to fully scrape metrics from source kubelet_summary:vps03: unable to fetch metrics from Kubelet vps03 (vps03): 
Get https://vps03:10250/stats/summary/: dial tcp: lookup vps03 on 10.96.0.10:53: no such Host, unable to fully scrape metrics from source kubelet_summary:vp
s02: unable to fetch metrics from Kubelet vps02 (vps02): Get https://vps02:10250/stats/summary/: dial tcp: lookup vps02 on 10.96.0.10:53: no such Host]     
E0907 14:30:01.694794       1 reststorage.go:98] unable to fetch pod metrics for pod boxweb/boxweb-deployment-7756c49688-fz625: no metrics known for pod "bo
xweb/boxweb-deployment-7756c49688-fz625"                                                                                                                    
E0907 14:30:10.517886       1 reststorage.go:112] unable to fetch node metrics for node "vps01": no metrics known for node "vps01"

Je ne peux pas non plus obtenir de métrique avec kubectl top node vps01

Pareil pour autoscale ça ne marche pas

  unable to get metrics for resource cpu: unable to fetch metrics from
 resource metrics API: the server could not find the requested resource (get pods.metrics.k8s.io)       
4
Ben D

En cherchant j'ai trouvé la solution suivante:

Modifiez le fichier metrics-server-deployment.yaml et ajoutez:

commander: -/metrics-server - --kubelet-preferred-preferred-types = InternalIP - --kubelet-insecure-tls

3
Lucas Sales

Il semble que vous ayez un problème DNS provenant de votre pod metrics-server. Vous pouvez vous connecter au pod:

kubectl exec -it metrics-server-xxxxxxxxxx-xxxxx -n kube-system sh
/ # ping vps01

Si vous ne pouvez pas ping, vous ne pouvez pas résoudre votre noeud.

les core-dns ou kube-dns utilisent aussi le /etc/resolv.conf sur chacun de vos nœuds, aussi je vérifierais si vous pouvez résoudre les nœuds entre eux Dites, pouvez-vous ping vps01 à partir de vps02 ou vps03, etc.

1
Rico