gpt4 book ai didi

chef-infra - Chef 客户和验证者

转载 作者:行者123 更新时间:2023-12-02 04:57:57 25 4
gpt4 key购买 nike

我试图理解 Chef 客户端和验证器的概念,以及它们与引导过程的关系。

根据this article ,chef-client 将使用 /etc/chef/validation.pem 私钥在初始运行时对自身进行身份验证,因为 /etc/chef/client.pem 不会还不存在。此初始运行将以某种方式生成 client.pem,然后用于所有后续客户端请求。

我的问题:

  1. 什么进程首先将 /etc/chef/validation.pem 文件放置在 Chef-client 节点上? Bootstrap ?有人可以提供一个可以执行此操作的 Knife 命令示例吗?
  2. 同样的问题,但是针对 /etc/chef/client.pem 文件。
  3. Chef 客户及其 Chef 验证者的名称由什么决定?

最佳答案

回答您更新的问题

1) Validation.Pem(和 client.rb)将在引导过程之后创建。您需要运行下面所示的命令(knife 配置客户端)才能创建这些文件。一旦这些文件在 ~/.chef 目录中创建,您需要将它们移动到/etc/chef

 knife configure client ~/.chef  
sudo su
mkdir -p /etc/chef
cp ~/.chef/client.rb /etc/chef
cp ~/.chef/validation.pem /etc/chef

输出为

创建客户端配置编写client.rb编写validation.pem

2) Client.pem 将在第一次 Chef 客户端运行期间创建。 Chef 文档摘录

“在第一次 Chef 客户端运行期间,此(client.pem)私钥不存在。相反, Chef 客户端将尝试使用分配给 Chef 验证器的私钥,该私钥位于/etc/chef/validation.pem。(如果出于任何原因,chef-validator 无法向 Chef 服务器发出经过身份验证的请求,则初始 Chef-客户端运行将失败。)”

例如,我通常按以下方式进行操作。一旦客户端设置完毕(第一次)并且我使用 Chef-client 命令在该节点上运行 Chef 配方,如下所示,它将自动创建 client.pem

chef-client -o Cookbook_name::Recipe_Name

3) 执行此操作之前,请确保您的主机名是唯一/正确的。在 Centos 上,更改/etc/sysconfig/network 文件并使用/etc/init.d/network restart 重新绑定(bind)所有内容。

我对第一个问题的回答是这里的解决方案。运行命令后(一般在bootstrap后运行该命令)

knife configure client ~/.chef 

客户端节点的主机名将在 Chef 服务器中自动创建。

<小时/>

第一个问题和第二个问题的答案(编辑问题之前)

1) 您在以下链接中看到的所有内容 http://mychefserver.example.com/clients是向该特定 Chef-Server 注册的节点(物理机)的发送。 Chef-Client 是一个代理,将在向 Chef-服务器注册的每个节点上运行。 Chef-client用于在相应的节点上运行菜谱。下面是使用 Chef 客户端在节点上运行 Chef 菜谱的方法。

chef-client -o Cookbook_name::Recipe_Name

将所有客户端放在一起是连接到 Chef 服务器的节点集 Chef 客户端是在所有节点中运行的代理,用于向 Chef 服务器注册节点以便将节点带到 Chef 服务器期望的状态。 Chef -客户还有许多其他用途。有关详细信息,请访问 [Chef-Client][1] 文档页面。

2) Bootstrap 是在目标系统上安装 Chef 客户端的过程,以便它可以作为 Chef 客户端运行并与 Chef 服务器通信。

换句话来说,引导过程是在节点(硬件机器)上安装 Chef 客户端并使该节点作为该 Chef 服务器的客户端之一的方法。仅当引导过程完成后,该特定节点才会在您的客户端列表中可见

http://mychefserver.example.com/clients

关于chef-infra - Chef 客户和验证者,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24788920/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com