2013-03-12 4 views
2

Я использую повар для загрузки узла. Я создал зашифрованные пакеты данных и скопировал секретный ключ на узле как/etc/chef/encrypted_data_bag_secret.Ошибка сборки сборной шеф-повара во время начальной загрузки Узел

Когда я пытаюсь самонастройки узел, я получаю следующее сообщение об ошибке:

================================================================================ 
Recipe Compile Error in /var/chef/cache/cookbooks/webapps-configs/recipes/httpd.rb 
================================================================================ 
Net::HTTPServerException 
------------------------ 
404 "Not Found" 
Cookbook Trace: 
--------------- 
    /var/chef/cache/cookbooks/webapps-configs/recipes/httpd.rb:12:in `from_file' 
Relevant File Content: 
---------------------- 
/var/chef/cache/cookbooks/webapps-configs/recipes/httpd.rb: 

    10: 
    11: CHEF_ENV = node.chef_environment 
    12>> http_ssl_creds = Chef::EncryptedDataBagItem.load("#{CHEF_ENV}", "http-ssl") 
    13: PRIVATE_KEY = http_ssl_creds["private_key"] 
    14: CHAIN_FILE= http_ssl_creds["chain_file"] 
    15: CERT= http_ssl_creds["cert"] 
    16: 

ERROR: Running exception handlers 
FATAL: Saving node information to /var/chef/cache/failed-run-data.json 
ERROR: Exception handlers complete 
Chef Client failed. 0 resources updated 
FATAL: Stacktrace dumped to /var/chef/cache/chef-stacktrace.out 
FATAL: Net::HTTPServerException: 404 "Not Found" 

Вот трассировки стека:

Net::HTTPServerException: 404 "Not Found" 
/opt/chef/embedded/lib/ruby/1.9.1/net/http.rb:2632:in `error!' 
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.4.0/lib/chef/rest.rb:199:in `block in raw_http_request' 
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.4.0/lib/chef/rest.rb:280:in `retriable_rest_request' 
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.4.0/lib/chef/rest.rb:164:in `raw_http_request' 
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.4.0/lib/chef/rest.rb:158:in `api_request' 
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.4.0/lib/chef/rest.rb:99:in `get' 
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.4.0/lib/chef/data_bag_item.rb:149:in `load' 
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.4.0/lib/chef/encrypted_data_bag_item.rb:294:in `load' 
/var/chef/cache/cookbooks/webapps-configs/recipes/httpd.rb:12:in `from_file' 
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.4.0/lib/chef/mixin/from_file.rb:30:in `instance_eval' 
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.4.0/lib/chef/mixin/from_file.rb:30:in `from_file' 
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.4.0/lib/chef/cookbook_version.rb:346:in `load_recipe' 
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.4.0/lib/chef/run_context.rb:151:in `load_recipe' 
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.4.0/lib/chef/run_context/cookbook_compiler.rb:139:in `block in compile_recipes' 
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.4.0/lib/chef/run_context/cookbook_compiler.rb:137:in `each' 
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.4.0/lib/chef/run_context/cookbook_compiler.rb:137:in `compile_recipes' 
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.4.0/lib/chef/run_context/cookbook_compiler.rb:74:in `compile' 
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.4.0/lib/chef/run_context.rb:86:in `load' 
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.4.0/lib/chef/client.rb:224:in `setup_run_context' 
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.4.0/lib/chef/client.rb:467:in `do_run' 
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.4.0/lib/chef/client.rb:200:in `run' 
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.4.0/lib/chef/application.rb:190:in `run_chef_client' 
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.4.0/lib/chef/application/client.rb:297:in `block in run_application' 
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.4.0/lib/chef/application/client.rb:290:in `loop' 
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.4.0/lib/chef/application/client.rb:290:in `run_application' 
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.4.0/lib/chef/application.rb:73:in `run' 
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.4.0/bin/chef-client:26:in `<top (required)>' 
/usr/bin/chef-client:23:in `load' 
/usr/bin/chef-client:23:in `<main>' 

Любая помощь или указатели?

ответ

3

Я разрешил эту проблему. Похоже, что среда не была создана должным образом. Поэтому, когда я загружал узел, его среда была настроена на «_default», поэтому узлу не удалось найти элементы.

Я восстановил среду и загрузил узел, передав параметр --environment, и я смог загрузиться без каких-либо проблем.

Еще раз, благодаря всем вкладчикам для их ввода. Это сообщество потрясающее!

2

Попробуйте добавить следующую строку в ваш рецепт:

11. CHEF_ENV = node.chef_environment 
+ 12. Chef::Config[:encrypted_data_bag_secret] 
    13. http_ssl_creds = Chef::EncryptedDataBagItem.load("#{CHEF_ENV}", "http-ssl") 
    14. PRIVATE_KEY = http_ssl_creds['private_key'] 
    15. CHAIN_FILE= http_ssl_creds['chain_file'] 
    16. CERT= http_ssl_creds['cert'] 

Другое дело, чтобы проверить, что окружающая среда узел имя зашифрованного мешок данных.

, так как вы скопировали /etc/chef/encrypted_data_bag_secret на узел, который должен сделать трюк.

+1

Привет, спасибо за ответ. Мой рецепт уже содержит вышеупомянутый код. Я решил проблему, кажется, что среда не создавалась должным образом, а среда для узла была настроена на «_default» при загрузке. Я воссоздал среду и загрузился с флагом --environment, и ошибка была решена. Еще раз спасибо за то, что нашли время ответить на это :). Очень признателен!! –

+0

Я поддержал ответ, потому что он указывает на точную точку падения и может помочь кому-то сузить подобные проблемы. –

+0

Я рад, что вы это решили ... –

Смежные вопросы