这是在Ubuntu机器上。我在厨师服务器上安装了刀备用宝石来备份服务器。
sudo gem install knife-backup
现在我按以下配置创建knife.rb
文件。
log_level :info
log_location STDOUT
validation_client_name 'chef-validator'
validation_key '/etc/chef-server/chef-validator.pem'
chef_server_url 'https://ip'
当我运行以下命令时,
sudo knife backup export -D / etc / chef / backups -c knife.rb
它显示我错误: -
/opt/vagrant_ruby/lib/ruby/gems/1.8/gems/ohai-7.0.4/lib/ohai/loader.rb:188: warning: character class has [' without escape /opt/vagrant_ruby/lib/ruby/gems/1.8/gems/ohai-7.0.4/lib/ohai/loader.rb:188: warning: regexp has]' without escape
Backing up clients
ERROR: Your private key could not be loaded from /etc/chef/client.pem
Check your configuration file and ensure that your private key is readable
答案 0 :(得分:3)
我已使用以下命令解决了这个问题。这是管理任务,我们需要描述相同的用户和管理员密钥。
sudo knife backup export -D / etc / chef / backups --user admin --key /etc/chef-server/admin.pem -c knife.rb
请为我提供更多相同和更好描述的解决方案
答案 1 :(得分:0)
您需要使用私钥对Chef服务器进行身份验证才能执行操作。 解决方案是使用命令[knife configure -i]命令配置刀具。如果已配置,则已将私钥的实际路径作为命令行参数之一。
由于您正在使用vagrant,您可以从chef服务器创建客户端密钥或使用chef服务器注册刀以获取密钥并将其作为[-k«您的api客户端密钥路径»]提供给命令刀备份。 / p>