2 votes

Permission refusée (publickey) - lors de la mise en place d'un cluster Kubernetes avec Kubespray

Ce problème provient de la documentation suivante Comment déployer Kubernetes à l'aide de Kubespray ? . J'ai suivi leur documentation mot à mot et je suis arrivé à ce point :

ansible -i inventory.ini -m ping all

Voici la commande ci-dessus dans la documentation

La documentation décrit toutes les étapes nécessaires au déploiement de Kubernetes sur UpCloud à l'aide de Kubespray et Terraform. Comme mentionné précédemment, j'ai pu exécuter toutes les commandes jusqu'à ce que je tombe sur la commande : ansible -i inventory.ini -m ping all

Enter passphrase for key '/home/summer/.ssh/id_rsa':
kubespray-worker-2 | UNREACHABLE! => {
    "changed": false,
    "msg": "Failed to connect to the host via ssh: Warning: Permanently added '<IP address>' (ECDSA) to the list of known hosts.\r\nubuntu@<IP address>: Permission denied (publickey).",
    "unreachable": true
}

Enter passphrase for key '/home/summer/.ssh/id_rsa':
kubespray-worker-0 | UNREACHABLE! => {
    "changed": false,
    "msg": "Failed to connect to the host via ssh: Warning: Permanently added '<IP address>' (ECDSA) to the list of known hosts.\r\nConnection closed by <IP address> port 22",
    "unreachable": true
}

Enter passphrase for key '/home/summer/.ssh/id_rsa':
kubespray-worker-1 | UNREACHABLE! => {
    "changed": false,
    "msg": "Failed to connect to the host via ssh: Warning: Permanently added '<IP address>' (ECDSA) to the list of known hosts.\r\nubuntu@<IP address>: Permission denied (publickey).",
    "unreachable": true
}
kubespray-master-0 | UNREACHABLE! => {
    "changed": false,
    "msg": "Failed to connect to the host via ssh: Warning: Permanently added '<IP address>' (ECDSA) to the list of known hosts.\r\nubuntu@<IP address>: Permission denied (publickey).",
    "unreachable": true
}

l'erreur ci-dessus sous forme d'image pour référence ultérieure

Veuillez noter : La région cachée dans les encres blanches sont les adresses IP publiques assignées à chaque noeud dans l'image ci-dessus. .

Je suis capable d'accéder à distance au serveur Ubuntu en tapant : ssh <username>@<ip_address> . Voici un instantané de cluster-settings.tfvars pour voir si j'ai raté quelque chose :

zone     = "fe-fxfx"
username = "ubuntu"

# Prefix to use for all resources to separate them from other resources
prefix = "kubespray"

inventory_file = "inventory.ini"

#  Set the operating system using UUID or exact name
template_name = "Ubuntu Server 20.04 LTS (Focal Fossa)"

ssh_public_keys = [
  # Put your public SSH key here
  "removed the Public Key for security reasons",
]

De même, l'image de cluster-settings,tfvars pour référence : paramètres de groupe.tfvars

Le résultat de l'envoi de ping aux nœuds est également irrégulier, en un sens, si master-0 est envoyé avec succès dans une instance, dans l'autre, aucun d'entre eux n'est envoyé [lors d'une nouvelle tentative]. Alors que, parfois worker-2 est envoyé et les autres ne le sont pas.

0 votes

Remplacez les images par du texte

1voto

Sebastian Points 33

J'ai trouvé la réponse à cette question après avoir consulté un camarade senior. Tout d'abord, la paire de clés SSH doit être générée sans phrase de passe ou si vous en utilisez une avec une phrase de passe, passez simplement cette commande pour la désactiver :

Exécuter ssh-keygyen con -p option.

ssh-keygen -p

Je vous suggère de faire cela dans le répertoire où se trouve votre paire de clés SSH ou de le spécifier avec -f ~/<username>/.ssh/id_rsa

Si vous avez effectué correctement l'étape ci-dessus, vous serez invité à saisir la phrase de passe existante :

Enter old passphrase:

Ensuite, saisissez la nouvelle phrase de passe [en principe, laissez-la vide] et confirmez-la :

Enter new passphrase (empty for no passphrase):
Enter same passphrase again:

En cas de succès, vous obtiendrez l'invite suivante :

Your identification has been saved with the new passphrase.

Note : Ces étapes peuvent être utilisées pour supprimer ou modifier la phrase de passe.

Suivant A l'intérieur de la cluster-settings.tfvars il y a deux endroits avec "enter your SSH key here" pour entrer vos clés publiques. Il n'est pas obligatoire d'entrer les deux. Dans mon cas, j'ai utilisé une seule des clés publiques et je me suis également assuré que la paire de clés était disponible dans l'agent SSH.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X