Je travaille sur Azure Kubernates où nous pouvons stocker des images Docker dans Azure. Ici, j'essaie de vérifier ma version de kubectl, puis je reçois
Impossible de se connecter au serveur: composez tcp [:: 1]: 8080: connectex: Aucune connexion n'a pu être établie car la machine cible l'a refusée activement.
Pour cela, j'ai suivi MSDN: uilding Microservices with AKS and VSTS - Part 2 and MSDOCS: Kubernetes on windows
Alors, pouvez-vous s'il vous plaît me suggérer "Comment résoudre ce problème?"
Je pense que vous pourriez manquer de configurer le cluster, pour cela, vous devez exécuter la commande ci-dessous dans votre invite de commande.
az aks get-credentials --resource-group myResourceGroup --name myAKSCluster
La commande CLI ci-dessus crée un fichier .config avec les détails complets du cluster et des nœuds dans votre machine locale.
Après cela, vous exécutez kubectl get nodes
commande dans votre invite de commande, vous pouvez alors obtenir la liste des nœuds à l'intérieur du cluster comme dans l'image ci-dessous.
Pour référence, suivez ceci Déployer un cluster Azure Kubernetes Service (AKS) .
Si vous pouvez voir que votre fichier de configuration est correctement configuré en allant à $HOME/.kube/config
- Linux ou %UserProfile%/.kube/config
- Windows mais vous recevez toujours le message d'erreur - essayez d'exécuter la ligne de commande en tant qu'administrateur.
Plus d'informations sur le fichier de configuration peuvent être trouvées ici: https://kubernetes.io/docs/concepts/configuration/organize-cluster-access-kubeconfig/
Pour moi, cela semblait être dû au fait que Windows n'avait pas de variable d'environnement HOME définie. Selon la documentation, kubectl
utilisera le fichier de configuration $(HOME)/.kube/config
. Mais comme cette variable n'est pas définie sur Windows, elle ne peut pas localiser le fichier.
J'ai créé une variable HOME avec la même valeur que USERPROFILE et elle a commencé à fonctionner.
Je faisais face à la même erreur lors du lancement de la commande "kubectl get pods"
Le problème a été résolu en suivant les étapes ci-dessous:
a) Découvre d'abord le contexte actuel
kubectl config get-contexts
CURRENT NAME CLUSTER AUTHINFO NAMESPACE
b) si aucun contexte n'est défini, définissez-le manuellement en utilisant
kubectl config set-context <Your context>
J'espère que ceci vous aidera.
J'utilise Hyper-V sur Windows local et j'ai rencontré cette erreur car je n'ai pas configuré le minikube.
(Je sais que la question concerne Azure, pas le minikube. Mais cet article est en haut pour le message d'erreur. J'ai donc mis la solution ici.)
1. activer Hyper-V.
Tapez systeminfo
sur votre terminal. Si vous pouvez trouver la ligne ci-dessous,
Hyper-V Requirements: A hypervisor has been detected. Features required for Hyper-V will not be displayed.
Hyper-V fonctionne correctement.
Si vous ne pouvez pas, activez-le à partir des paramètres.
2. Créer un commutateur réseau Hyper-V
Ouvrez le gestionnaire Hyper-V. (La recherche est le moyen le plus rapide.)
Ensuite, cliquez sur le nom de votre PC à gauche.
Ensuite, vous pouvez trouver le menu Virtual Switch Manager sur la droite.
Cliquez dessus et choisissez Switch virtuel externe avec le nom: "Switch Minikube"
Cliquez sur appliquer pour le créer.
3. démarrer le minikube
Revenez au terminal et saisissez:
minikube start --vm-driver hyperv --hyperv-virtual-switch "Minikube Switch"
Pour plus d'informations, vérifiez les étapes de cet article .
J'ai eu exactement le même problème même après avoir configuré correctement (en exécutant une commande Azure cli).
Il semble que kubectl s'attende à un ensemble de variables d'environnement HOME, mais il n'existait pas pour moi. Il existe cependant une solution:
Si vous ajoutez une variable d'environnement KUBECONFIG qui pointera vers la configuration, elle commencera à fonctionner.
Exemple:
setx KUBECONFIG %UserProfile%\.kube\config
Lorsque la variable est présente, kubectl n'a aucun problème à lire le fichier.
P.S. C'est une alternative à la définition d'une variable HOME comme suggéré dans une autre réponse.