2016-04-18 1 views
3

J'ai essayé ce lien pour configurer un serveur Chef, un poste de travail et des noeuds. Alors que bootstrapping un nouveau noeud à partir d'un poste de travail pour installer un client sur ce nœud, je suis l'erreur ci-dessous:Demander une erreur d'entité trop importante lors de l'amorçage d'un nouveau noeud à partir d'un poste de travail Chef

Chef Client failed. 0 resources updated in 14 seconds 
[2016-04-18T08:46:31+00:00] FATAL: Stacktrace dumped to /var/chef/cache/chef-stacktrace.out 
[2016-04-18T08:46:31+00:00] FATAL: Please provide the contents of the stacktrace.out file if you file a bug report 
[2016-04-18T08:46:31+00:00] ERROR: 413 "Request Entity Too Large" 
[2016-04-18T08:46:31+00:00] FATAL: Chef::Exceptions::ChildConvergeError: Chef run process exited unsuccessfully (exit code 1) 

Ceci est ma commande bootstrap:

knife bootstrap server_name -x username -P password --sudo --use-sudo-password 

J'ai ajouté Ohai :: Config [: disabled_plugins] = ["passwd"] dans le fichier /etc/chef/client.rb sur le noeud et ré-exécutez la commande à partir du poste de travail, mais la même erreur s'est produite. Quelqu'un peut-il m'aider avec ça?

Merci d'avance.

+0

On dirait que votre objet nœud est trop grand, une façon de creuser est d'ajouter une recette (mieux à la fin de la dernière recette): 'require 'pp'; pp node' pour obtenir l'objet node sur stdout pour trouver quel attribut est très grand. (ou vous pouvez avoir un problème côté serveur, mais difficile à deviner si vous utilisez un serveur chef hébergé ou privé, etc.) – Tensibai

+0

Salut, pouvez-vous être plus précis? Quoi ajouter et où ajouter? – srk

Répondre

2

La commande knife bootstrap écrase l'ensemble de la configuration client.rb chaque fois que vous l'exécutez. Vous devez soit créer un nouveau modèle d'amorçage incluant cet extrait (si vous envisagez de faire un grand nombre de machines), soit le laisser échouer, éditer la configuration, puis exécuter sudo chef-client sur la machine pour l'enregistrer.

+0

Salut, Pouvez-vous me dire comment faire un nouveau modèle de bootstrap et où l'ajouter? – srk

+0

https://docs.chef.io/knife_bootstrap.html#custom-templates – coderanger

+0

La syntaxe n'est pas claire, pouvez-vous s'il vous plaît m'aider avec ce que devrait être le contenu de dire template.erb? – srk

0

Si vous utilisez Che-12.8.1 ou version ultérieure, vous pouvez utiliser la fonction d'amorçage de client.d couteau:

Vous devriez être en mesure de créer un fichier nommé .chef/bootstrap/client.d/disabled_plugins.rb avec la ligne:

Ohai::Config[:disabled_plugins] = ["passwd"] 

Si vous utilisez le livre de recettes chef-client pour gérer votre config chef-client pendant la course, vous devrez regarder votre course pour vous assurer que ceux-ci ne se battent pas et que le livre de cuisine ne supprime pas fichier et re-courir ohai et ballon votre taille de noeud (je n'ai pas joué avec cela, donc ne sais pas de toute façon).