我有一个现有的厨师服务器设置,其中注册了大约300个节点。 现在我想转移到另一个带有更新版本的厨师服务器。但是我不确定如何将所有节点和其他数据从旧的chef-server迁移到更新的.-
答案 0 :(得分:2)
此处有多个步骤,您需要提供一些信息以便更好地回答您的问题。
假设
步骤
a)首先确保您已经清点了当前的厨师设置,以便了解所有节点名称以及每个节点应用的运行列表。
b)SSH进入要移动的节点并删除/etc/chef/client.pem
c)现在登录到新的Chef服务器并使用/etc/chef/chef-validator.pem内容中的私钥在客户端计算机上创建/etc/chef/validation.pem。
d)编辑/etc/client.rb并将chef_server_url更改为您的新厨师服务器。
现在在客户端计算机上运行chef-client。这将从新服务器创建一个新的客户端标识,您应该会看到您的客户端名称出现在您的厨师服务器中,这是新Chef服务器的/ clients列表。
但你还没有脱离杂草,因为: i)你的客户运行列表将是空的 ii)此客户端尚未出现在新服务器的/ nodes列表中。
d)所以你需要使用
knife node create NODE_NAME
来自工作站的命令命名节点并将其记录在新的Chef服务器数据库中。
然后使用
knife node run_list add NODE_NAME RUN_LIST_ITEM(s)
为每个框重新创建运行列表。
然后使用
knife node environment_set NODE_NAME ENVIRONMENT_NAME
为每个节点设置环境。
现在在节点上运行chef-client,您应该在/ nodes中看到具有您分配的运行列表和环境的节点。您还应该在状态选项卡中看到具有最近最后登记时间的节点。
是。你必须这样做300次。流。