Chef客户端安装在图像上,希望让它创建自己的节点

时间:2017-06-30 13:34:55

标签: ruby powershell automation chef

我不知道这是否可能我现在只使用厨师大约一个半星期,我似乎无法在互联网上找到任何关于这样做的事情。但基本上我们在图像上安装了厨师客户端。每个映像都有一个配置脚本,该脚本在首次设置映像时运行,以设置计算机名称和其设置特定的其他设置。

因此,配置脚本完成后我需要创建的节点是使用节点名称创建的节点作为自动输入的计算机的名称,同时将其添加到角色中以便以后可以使用这些节点进行排序并添加正确的角色。因此,一旦设置服务器而没有人工交互,将立即创建每个新节点。

1 个答案:

答案 0 :(得分:0)

执行此操作的方法是使用验证程序密钥系统。基本上在映像中安装了Chef,并且已经创建了/etc/chef/client.rb配置并指向了Chef服务器,但是没有创建client.pem密钥。如果该密钥不存在,chef-client将查找验证密钥并使用该密钥自行注册Chef服务器(默认情况下,它使用服务器的FQDN作为节点名称,但您可以使用最后一个 - 如果您想使用其他内容,则英里脚本会将node_name "whatever"附加到client.rb。基于验证器的bootstraps的难点在于如何存储,访问和管理验证器密钥。懒惰的方式是将其包含在图像中,但这会引发一些令人不安的安全问题。遗憾的是,最好的方法完全取决于您运行的系统类型以及可用的安全基础架构。另外,不要忘记在初始引导程序后删除验证程序密钥,chef-client食谱中有一个配方。