6
votes

Erreur Kubernetes: impossible de se connecter au serveur: composez le tcp 127.0.0.1:8080

Je vois l'erreur suivante lors de l'exécution de kubectl get pods :

apiVersion: v1
clusters:
- cluster:
    insecure-skip-tls-verify: true
    server: https://zld05687.vci.co.com
  name: dev-cluster
- cluster:
    insecure-skip-tls-verify: true
    server: https://zlt20087.vci.co.com
  name: perf-cluster
- cluster:
    insecure-skip-tls-verify: true
    server: https://zlt17291.vci.co.com
  name: test-cluster
contexts:
- context:
    cluster: dev-cluster
    namespace: com-co-acp-dev
    user: default-user
  name: default-context
- context:
    cluster: perf-cluster
    namespace: com-co-acp-perf
    user: default-user
  name: perf-context
- context:
    cluster: test-cluster
    namespace: com-co-acp-test
    user: default-user
  name: test-context
current-context: perf-context
kind: Config
preferences: {}
users:
- name: default-user
  user:
    token: myusername:enc:23hfeu39393yd223944uekd

Cela fonctionnait lorsque je l'ai exécuté il y a deux semaines. Mon fichier de configuration dans le répertoire ~ / .kube / config se présente comme suit:

Unable to connect to the server: dial tcp 127.0.0.1:8080: connectex: No connection could be made because the target machine actively refused it.

Qu'est-ce qui a causé cette erreur et comment puis-je la corriger?


6 commentaires

Cela ne semble pas être la bonne configuration pour le message. Il n'y a pas de 127.0.0.1:8080 dans la configuration. est la bonne configuration?


Oui, c'est le fichier de configuration situé dans ~ / .kube / config


Je ne vois pas 127.0.0.1:8080 dans votre ~ / .kube / config


Avez-vous résolu ce problème?


Non, ce n'est toujours pas résolu


Pouvez-vous ajouter votre fichier kubeconfig via le paramètre KUBECONFIG env. var?


4 Réponses :


0
votes

L'API du serveur Kubernetes semble invalide:

curl -LIk https://zlt20087.vci.co.com
HTTP/1.1 301 Moved Permanently
Date: Wed, 02 Jan 2019 21:43:24 GMT
Server: Apache
Location: https://registry.co.com
Content-Type: text/html; charset=iso-8859-1

HTTP/1.1 403 Forbidden
Date: Wed, 02 Jan 2019 21:43:24 GMT
Server: Apache
Vary: User-Agent
Accept-Ranges: bytes
Content-Type: text/html

Êtes-vous sûr que l'URL est correcte?


4 commentaires

Cette URL est correcte, oui ( https://zlt20087.vci.co.com ), mais je ne sais pas d'où vient le 127.0.0.1:8080 (ou pourquoi cette adresse IP et ce port sont connectés).


Il semble que la résolution DNS est cassée. Je résous registry.co.com pour votre URL. Est-ce normal?


registry.co.com est une URL d'espace réservé que j'ai utilisée pour remplacer l'URL réelle de l'entreprise - comment puis-je "résoudre" mon URL?


Le problème est que zlt20087.vci.co.com n'est pas un point de terminaison d'API Kubernetes valide. Il renvoie le contenu de registry.co.com qui est un WordPress



1
votes

Je ne sais pas si cela s'applique à votre environnement, mais j'avais un problème similaire - toutes les commandes kubectl retournaient: Impossible de se connecter au serveur: composez le tcp [:: 1]: 8080: connectex: aucune connexion n'a pu être établie car la machine cible l'a activement refusée.

127.0.0.1 est l'hôte local (IPV4), [:: 1] est l'équivalent IPV6.

kubectl semble configurer un proxy de connexion local sur l'hôte local vers le contrôleur de cluster. Dans mon cas sur un PC Windows10, l'exécution de la session (dans mon cas, c'était une fenêtre PowerShell) en tant qu'administrateur a résolu le problème. Quoi qu'il en soit, c'était la solution pour mon environnement.


0 commentaires

0
votes

Il semble que Kubernetes ne fonctionne pas sur votre machine. Comme votre question ne mentionne pas l'environnement. J'ai eu des problèmes similaires avec la configuration suivante:

Windows 7 avec Docker Toolbox 18.09.6

Kubernetes v1.14.3

minikube v1.1.1.

Vous devrez démarrer Kubernetes et vérifier s'il affiche correctement les informations du cluster avant d'obtenir les pods. Exécutez les commandes suivantes pour configurer et afficher les informations sur le cluster.

minikube start

kubectl cluster-info

kubectl get pods

 entrez la description de l'image ici

 entrez la description de l'image ici


0 commentaires

0
votes

Si kubectl est déjà installé et pointe vers un autre environnement, tel que minikube ou un cluster GKE, veillez à changer de contexte pour que kubectl pointe vers docker-desktop:

  1. kubectl config get-contextts

  2. kubectl config use-context docker-desktop


0 commentaires