我不知道这是否可能,我现在只使用了大约一个半星期的厨师,我似乎在互联网上找不到任何关于这样做的信息。但基本上我们在图像上安装了厨师客户端。每个映像都有一个配置脚本,该脚本在第一次设置映像时运行,以设置计算机名称和其他特定于其设置的设置。
因此,一旦配置脚本完成,我需要做的是创建一个节点,将节点名称作为自动输入的计算机名称,并将其添加到角色中,以便以后可以对这些节点进行排序和添加了正确的角色。这样一来,一旦设置了服务器,就会在没有人工交互的情况下创建每个新节点。
您这样做的方法是使用验证器密钥系统。基本上在图像中安装了 Chef,并/etc/chef/client.rb
创建了配置并指向您的 Chef 服务器,但不要创建client.pem
密钥。如果该密钥不存在,chef-client 将查找验证密钥并使用它向 Chef 服务器进行自注册(默认情况下,它使用服务器的 FQDN 作为节点名称,但您可以使用最后一个 -英里脚本附加node_name "whatever"
到client.rb
如果你想使用别的东西)。基于验证器的引导程序的难点在于如何存储、访问和管理该验证器密钥。懒惰的方法是将它包含在图像中,但这会引发一些令人不安的安全问题。不幸的是,最好的方法将完全取决于您正在运行的系统类型以及可用的安全基础设施。也不要忘记在初始引导后删除验证器密钥,食谱中有一个食谱chef-client
。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句