【发布时间】:2020-02-07 05:02:20
【问题描述】:
我的系统用户名是 myuser,但我尝试使用 chef-validator.pem 和 blah.pem 文件引导机器,并收到以下错误消息:
ERROR: Failed to authenticate to https://mychef01 as blah with key
/etc/chef/blah.pem.
Response: Invalid signature for user or client 'blah'
这是否意味着blah.pem 文件无效,或者是否意味着它需要匹配我的系统用户名(即myuser.pem)?无论哪种方式,根本问题是什么?解决方法是什么?
【问题讨论】:
-
blah.pem来自哪里?通常,当节点找不到客户端密钥时,它会将自己注册为客户端(使用验证器密钥)。 -
感谢@StephenKing (+1) - 我正在构建一个自动化系统,它将通过 Chef 引导和配置节点。我去了厨师服务器并创建了这个
blah用户并下载了它的blah.pem文件。我现在在我的机器上进行本地测试(我的用户名是myuser),我想知道我的用户名是否必须与 PEM 文件的名称匹配,或者 PEM 文件是否有问题/无效。 -
pem文件会自动生成。只需配置一个节点名称(可选,如果没有,厨师将使用主机名)并传递验证密钥。无需手动注册客户端。
-
如果您真的想手动创建它,
client.rb应该将node_name属性设置为您创建的名称,客户端密钥可以使用client_key属性命名为您想要的任何名称在client.rb中匹配,Linux 上默认为/etc/chef/client.pem,Windows 上默认为c:/chef/client.pem -
你在webui中创建用户而不是客户端,客户端可以编写自己的节点。这是主要的区别。用户为刀,客户端为节点。并且运行 chef 的用户应该无事可做(而且您将无法使用此方法创建 2 个 VM)
标签: chef-infra knife