Chef infra 刀子命令无法进行身份验证
我已经创建了如下设置,为此,我使用Amazon EC2: 一个ubuntu服务器12.04版,我安装了一个Chef服务器并配置了刀片。这是完美的工作,我能够运行刀命令,它给了我预期的结果 另一个类似的ubuntu服务器,我正试图将其用作chef客户端。已安装并配置客户端。另外,在客户机上安装刀。我知道这是正确安装的,因为安装后我运行了命令Chef infra 刀子命令无法进行身份验证,chef-infra,knife,Chef Infra,Knife,我已经创建了如下设置,为此,我使用Amazon EC2: 一个ubuntu服务器12.04版,我安装了一个Chef服务器并配置了刀片。这是完美的工作,我能够运行刀命令,它给了我预期的结果 另一个类似的ubuntu服务器,我正试图将其用作chef客户端。已安装并配置客户端。另外,在客户机上安装刀。我知道这是正确安装的,因为安装后我运行了命令 knife --version knife client list 我得到了输出 Chef: 10.16.2 现在我已经配置了knife.rb文件。
knife --version
knife client list
我得到了输出
Chef: 10.16.2
现在我已经配置了knife.rb文件。
内容如下:
日志级别:信息
日志位置标准输出
节点名称“刀”
缓存类型为“基本文件”
缓存\u选项(:path=>“~/.chef/checksums”)
客户密钥“~/.chef/clientkey.pem”
cookbook_path [ "~/mychefrepo/cookbooks" ]
cookbook_copyright "example org"
cookbook_email "cookbooks@example.net"
cookbook_license "apachev2"
chef_server_url "http://ip-11-213-23-99:4000"
validation_key "~/.chef/validation.pem"
在配置之后,如果我运行刀命令
knife --version
knife client list
我得到以下错误:
错误:无法使用密钥/etc/chef/clientkeys.pem对as client1进行身份验证
请您澄清我的以下疑问:
您的客户端是否存在于chef服务器上?我相信它会被称为“刀”,因为这是你的名字
http://ip-11-213-23-99:4040/clients
客户机pem密钥确实在服务器上注册,您可以通过服务器webui查看服务器上的“客户机”选项卡。密钥存储在CouchDB中。当您使用服务器执行chef客户端运行时,此值会出现在此处
提供的pem密钥的值必须与您提供的“节点名称”的客户端视图中显示的存储pem相匹配。是这样吗
客户端密钥本身可以存储在任何位置。您的客户端是否存在于chef服务器上?我相信它会被称为“刀”,因为这是你的名字
http://ip-11-213-23-99:4040/clients
客户机pem密钥确实在服务器上注册,您可以通过服务器webui查看服务器上的“客户机”选项卡。密钥存储在CouchDB中。当您使用服务器执行chef客户端运行时,此值会出现在此处
提供的pem密钥的值必须与您提供的“节点名称”的客户端视图中显示的存储pem相匹配。是这样吗
客户机密钥本身可以存储在任何地方。从服务器引导客户机时,它会在那里创建client.pem。甚至当您在客户机上运行chef client时,它也会创建client.pem。 您需要在服务器节点上复制此文件。 同样,您必须提供进入knife.rb的路径,该路径在/chef repo/.chef中可用
当您从服务器引导客户机时,它会在那里创建client.pem。甚至当您在客户机上运行chef client时,它也会创建client.pem。 您需要在服务器节点上复制此文件。 同样,您必须提供进入knife.rb的路径,该路径在/chef repo/.chef中可用
嗯,我不知道如何检查客户机是否正确地存在于chef服务器上。如果你告诉我怎么做,我会查一查。此外,我在chef服务器上的knife CLI的帮助下在chef服务器上创建了客户机,因此我认为这是合适的。无论如何,我会验证coach数据库中的密钥。如果您查看上面的链接并替换为您的实际ip,您应该会看到所有已配置api客户端的列表。您应该在knife.rb中查找与“node_name”同名的节点,并通过单击它来检查其键的值。将其与您使用knife.rb提交的pem密钥进行比较。希望这对汉克斯有帮助。。我可以用其他方法解决这个问题……)但是你的回答让我想了想。。谢谢你的帮助:)介意分享一下你解决问题的其他方法吗?这会帮助其他读者。我遇到了这个问题。请与社区分享您的答案。不知道如何检查客户机是否正确地存在于chef服务器上。如果你告诉我怎么做,我会查一查。此外,我在chef服务器上的knife CLI的帮助下在chef服务器上创建了客户机,因此我认为这是合适的。无论如何,我会验证coach数据库中的密钥。如果您查看上面的链接并替换为您的实际ip,您应该会看到所有已配置api客户端的列表。您应该在knife.rb中查找与“node_name”同名的节点,并通过单击它来检查其键的值。将其与您使用knife.rb提交的pem密钥进行比较。希望这对汉克斯有帮助。。我可以用其他方法解决这个问题……)但是你的回答让我想了想。。谢谢你的帮助:)介意分享一下你解决问题的其他方法吗?这会帮助其他读者。我遇到了这个问题。请与社区分享您的答案。贪图答案而不做贡献是不好的。你能提供下面提到的解决方案吗?我现在遇到了这个问题。你能提供下面提到的解决方案吗?我现在遇到了这个问题。