我对厨师很新!我正在关注learn.chef.io文档https://learn.chef.io/manage-a-web-app/ubuntu/apply-and-verify-your-database-configuration/来创建用于创建数据库的cookbook!获得以下错误!所以请帮我解决这里有什么问题!
$ knife ssh 54.153.93.47 'sudo chef-client' --manual-list --ssh-user ubuntu --identity-file /home/ashish/Keys/chef1.pem
54.153.93.47 Starting Chef Client, version 12.4.2
54.153.93.47 resolving cookbooks for run list: ["awesome_customers"]
54.153.93.47 Synchronizing Cookbooks:
54.153.93.47 - yum-mysql-community
54.153.93.47 - firewall
54.153.93.47 - awesome_customers
54.153.93.47 - apt
54.153.93.47 - chef-sugar
54.153.93.47 - httpd
54.153.93.47 - poise
54.153.93.47 - build-essential
54.153.93.47 - mariadb
54.153.93.47 - database
54.153.93.47 - mysql
54.153.93.47 - mysql2_chef_gem
54.153.93.47 - openssl
54.153.93.47 - smf
54.153.93.47 - postgresql
54.153.93.47 - yum
54.153.93.47 - rbac
54.153.93.47 - yum-epel
54.153.93.47 Compiling Cookbooks...
54.153.93.47 [2015-09-28T13:18:36+00:00] WARN: You declared a new resource Chef::Provider::HttpdServiceRhelSysvinit for resource httpd_service, but it comes alphabetically after Chef::Provider::HttpdServiceRhelSystemd and has the same filters ({:platform_family=>["rhel", "fedora", "suse"]}), so it will not be used. Use override: true if you want to use it for httpd_service.
54.153.93.47 [2015-09-28T13:18:36+00:00] WARN: You are overriding httpd_service on {:platform_family=>["rhel", "fedora", "suse"]} with Chef::Provider::HttpdServiceRhelSystemd: used to be Chef::Provider::HttpdServiceRhelSysvinit. Use override: true if this is what you intended.
54.153.93.47 [2015-09-28T13:18:36+00:00] WARN: You declared a new resource Chef::Provider::HttpdServiceRhelSysvinit for resource httpd_service, but it comes alphabetically after Chef::Provider::HttpdServiceRhelSystemd and has the same filters ({:platform_family=>["rhel", "fedora", "suse"]}), so it will not be used. Use override: true if you want to use it for httpd_service.
54.153.93.47 [2015-09-28T13:18:36+00:00] WARN: You declared a new resource Chef::Provider::HttpdServiceRhelSysvinit for resource httpd_service, but it comes alphabetically after Chef::Provider::HttpdServiceRhelSystemd and has the same filters ({:platform_family=>["rhel", "fedora", "suse"]}), so it will not be used. Use override: true if you want to use it for httpd_service.
54.153.93.47
54.153.93.47 ================================================================================
54.153.93.47 Recipe Compile Error in /var/chef/cache/cookbooks/awesome_customers/recipes/default.rb
54.153.93.47 ================================================================================
54.153.93.47
54.153.93.47 NameError
54.153.93.47 ---------
54.153.93.47 No resource, method, or local variable named `chef' for `Chef::Recipe "database"'
54.153.93.47
54.153.93.47 Cookbook Trace:
54.153.93.47 ---------------
54.153.93.47 /var/chef/cache/cookbooks/awesome_customers/recipes/database.rb:15:in `from_file'
54.153.93.47 /var/chef/cache/cookbooks/awesome_customers/recipes/default.rb:11:in `from_file'
54.153.93.47
54.153.93.47 Relevant File Content:
54.153.93.47 ----------------------
54.153.93.47 /var/chef/cache/cookbooks/awesome_customers/recipes/database.rb:
54.153.93.47
54.153.93.47 8: action :install
54.153.93.47 9: end
54.153.93.47 10:
54.153.93.47 11: mysql_client 'default' do
54.153.93.47 12: action :create
54.153.93.47 13: end
54.153.93.47 14:
54.153.93.47 15>> password_secret = chef::EncryptedDataBagItem.load_secret(node['awesome_customers']['passwords']['secret_path'])
54.153.93.47 16: root_password_data_bag_item = Chef::EncryptedDataBagItem.load('passwords', 'sql_server_root_password', password_secret)
54.153.93.47 17:
54.153.93.47 18: mysql_service 'default' do
54.153.93.47 19: initial_root_password root_password_data_bag_item['password']
54.153.93.47 20: action [:create, :start]
54.153.93.47 21: end
54.153.93.47 22:
54.153.93.47 23: # Create the database instance.
54.153.93.47 24: #mysql_database 'products' do
54.153.93.47
54.153.93.47
54.153.93.47 Running handlers:
54.153.93.47 [2015-09-28T13:18:36+00:00] ERROR: Running exception handlers
54.153.93.47 Running handlers complete
54.153.93.47 [2015-09-28T13:18:36+00:00] ERROR: Exception handlers complete
54.153.93.47 Chef Client failed. 0 resources updated in 2.549055767 seconds
54.153.93.47 [2015-09-28T13:18:37+00:00] FATAL: Stacktrace dumped to /var/chef/cache/chef-stacktrace.out
54.153.93.47 [2015-09-28T13:18:37+00:00] ERROR: No resource, method, or local variable named `chef' for `Chef::Recipe "database"'
54.153.93.47 [2015-09-28T13:18:37+00:00] FATAL: Chef::Exceptions::ChildConvergeError: Chef run process exited unsuccessfully (exit code 1)
因为我是新手,我无法找到错误!请帮帮我找出问题所在!
ps:我有ec2实例作为主厨节点&开源托管的厨师服务器。 我已经停止&自上次成功创建以前的Web服务器创建工具以来重新启动了实例!
答案 0 :(得分:2)
阅读你的日志,厨师很友好地标记有问题的线(重点是我的):
54.153.93.47 NameError
54.153.93.47 ---------
54.153.93.47没有为`Chef :: Recipe“数据库”'
命名为“ c hef”的资源,方法或局部变量[....]删除部分以缩短
54.153.93.47 14:
54.153.93.47 15 **&gt;&gt; ** password_secret = c hef :: EncryptedDataBagItem.load_secret(node ['awesome_customers'] ['passwords'] ['secret_path'])< / p>
54.153.93.47 16:root_password_data_bag_item = C hef :: EncryptedDataBagItem.load('passwords','sql_server_root_password',password_secret)
54.153.93.47 17:
您的c
行中Chef::
只有一个小写password_secret
的拼写错误