7 votes

Bootstrap (ajouter noeud) localhost dans chef

Problème. La commande suivante en ligne

knife bootstrap 127.0.0.1 -r 'recipe[chef-client]' -x user -p password --sudo

retourne

Bootstrap de Chef sur 127.0.0.1
AVERTISSEMENT : Échec de la connexion à 127.0.0.1 -- Errno::ECONNREFUSED : Connexion refusée - connect(2)

Attendu que cette commande réussisse et après cela

knife node list

devrait retourner

[
"127.0.0.1"
]

Le serveur SSH fonctionne correctement en localhost et ssh user@127.0.0.1 -p password fonctionne comme prévu.

5voto

William McVey Points 156

Il semble que le problème avec l'invocation est que vous avez spécifié le mot de passe avec l'option -p, que knife bootstrap utilise pour spécifier un port ssh alternatif. Vous vouliez utiliser le -P (P majuscule), qui est la bonne option pour spécifier le mot de passe à la commande bootstrap.

Et, comme Justin l'a indiqué, le bootstrap n'est probablement pas techniquement nécessaire si vous avez déjà installé Chef au point de pouvoir exécuter des commandes 'knife'. Vous devriez être en mesure de lancer un 'chef-client' pour inscrire votre nœud sur le serveur (peut-être avoir besoin de la clé de validation avec l'option -K, si elle n'est pas déjà installée/disponible dans /etc/chef). Une fois enregistré sur votre serveur, vous pouvez émettre des commandes knife node run_list add pour ajouter les rôles/recettes appropriés à la liste d'exécution, puis invoquer un autre chef-client pour que cela prenne effet. D'un autre côté, le bootstrap fait tout en une seule commande, donc ce n'est pas une mauvaise option.

1voto

Pandemonium Points 101

Et vous devez ajouter l'IP et le NOMDU NOEUD (Nom d'hôte) à /etc/hosts :

127.0.0.1 NOMDU NOEUD

Ensuite, divisez % knife bootstrap 127.0.0.1 -r 'recipe[chef-client]' -x user -p password --sudo en deux étapes :

Étape 1 :

% knife bootstrap ADRESSE_IP -x ubuntu -P MOT DE PASSE --sudo

Étape 2 :

% knife ssh name:NOM DU NOEUD -x ubuntu -P MOT DE PASSE "sudo chef-client"

0voto

BrewinBombers Points 1122

Si vous recevez un message de connexion refusée, alors une connexion SSH n'a pas pu être ouverte parce que :

  • SSH ne fonctionne pas sur le système.
  • Une règle de pare-feu bloque l'accès au port 22.
  • SSH fonctionne sur un port autre que 22.

Cela dit, "knife bootstrap" est destiné à être utilisé pour configurer des systèmes distants avec Ruby/RubyGems, installer Chef et le configurer pour se connecter à un serveur chef configuré (depuis votre configuration knife locale). Pour plus d'informations sur la commande "knife bootstrap", consultez :

De plus, le nom du nœud sera le nom de domaine complet détecté (généralement la sortie de hostname -f), sauf s'il est spécifié avec -N NODE_NAME.

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