本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
为 Puppet Master 添加要管理的节点
重要
该 AWS OpsWorks for Puppet Enterprise 服务于 2024 年 3 月 31 日终止,新客户和现有客户均已禁用。我们强烈建议客户尽快将其工作负载迁移到其他解决方案。如果您对迁移有疑问,请通过 re AWS : Post 或通过 Pre
添加节点的推荐方法是使用 AWS OpsWorks associateNode()
API。Puppet Enterprise Master 服务器托管您用来在要管理的节点上安装 Puppet 代理软件的存储库,无论这些节点是在本地物理计算机上还是在虚拟机上。作为启动过程的一部分,适用于某些操作系统的 Puppet 代理软件安装在 OpsWorks Puppet Enterprise 服务器上。下表显示了 Puppet Enterprise OpsWorks 服务器启动时可用的操作系统代理。
支持的操作系统 | 版本 |
---|---|
Ubuntu | 16.04、18.04、20.04 |
Red Hat Enterprise Linux (RHEL) | 6、7、8 |
Windows | 64 位版本的所有 Puppet 支持的 |
对于其他操作系统,您可以将 puppet-agent
添加到您的服务器。请注意,系统维护将删除您在启动后添加到服务器的代理。虽然大多数运行已删除代理的现有附加节点将继续签入,但运行 Debian 操作系统的节点会停止报告。我们建议您在运行操作系统的节点puppet-agent
上手动安装,而您 OpsWorks 的 puppet Enterprise 服务器上未预装代理软件。有关如何使 puppet-agent
适用于面向带其他操作系统的节点的服务器的详细信息,请参阅 Puppet Enterprise 文档中的安装代理
有关如何通过填充 EC2 实例用户数据来自动将节点与 Puppet Master 关联的信息,请参阅 OpsWorks 为 Puppet Enterprise 自动添加节点。
运行 associateNode()
API 调用
通过安装添加节点后puppet-agent
,节点会向 Puppet Enterprise 服务器发送证书签名请求 (CSR)。 OpsWorks 您可以在 Puppet console;中查看 CSR。有关节点 CSR 的更多信息,请参阅 Puppet Enterprise 文档中的管理证书签名请求associateNode()
API 调用会处理节点 CSR,并将该节点与您的服务器关联起来。 OpsWorks 以下是如何在中使用此 API 调用关联单个节点的 AWS CLI 示例。您需要节点发送的 PEM 格式的 CSR;您可以从 Puppet 控制台获取它。
aws opsworks-cm associate-node --server-name "test-puppet-server" --node-name "
node or instance ID
" --engine-attributes "Name=PUPPET_NODE_CSR,Value='PEM_formatted_CSR_from_the_node
'
有关如何使用 associateNode()
自动添加节点的更多信息,请参阅 OpsWorks 为 Puppet Enterprise 自动添加节点。
添加本地节点的注意事项
在本地计算机或虚拟机puppet-agent
上安装后,您可以使用两种方式中的任何一种将本地节点与 for Puppet Enterprise OpsWorks 主节点相关联。
-
如果某个节点支持安装 AWS 开发工具包
、AWS CLI 或 AWS Tools for PowerShell ,您可以使用推荐的方法关联节点,即运行 associateNode()
API 调用。首次创建 Puppet Enterpr OpsWorks ise 大师版时下载的入门套件展示了如何使用标签为节点分配角色。在将节点与 Puppet Master 关联的同时,您可以通过在 CSR 中指定可信事实来应用标签。例如,初学者工具包中随附的演示控制存储库被配置为使用标签pp_role
将角色分配到 Amazon EC2 实例。有关如何将标签作为可信事实添加至 CSR 的更多信息,请参阅 Puppet 平台文档中的扩展请求 (永久证书数据)。 -
如果该节点无法运行 AWS 管理或开发工具,你仍然可以在你的 Puppet Enterprise 主节点中注册该节点,就像向任何非托管的 Puppet Enterprise 主节点注册一样。 OpsWorks 如本主题所述,安装
puppet-agent
会向 Puppet Enterprise 主服务器发送一个 CSR。 OpsWorks 授权 Puppet 用户可以手动签署 CSR,或通过编辑存储在 Puppet Master 上的autosign.conf
文件配置 CSR 的自动签署。有关配置自动签署和编辑autosign.conf
的更多信息,请参阅 Puppet 平台文档中的 SSL 配置:自动签署证书请求。
要将本地节点与 Puppet Master 关联,并允许 Puppet Master 接受所有 CSR,请在 Puppet Enterprise 控制台中执行以下操作。控制此行为的参数为 puppet_enterprise::profile::master::allow_unauthenticated_ca
。
重要
出于安全考虑,建议不要启用 Puppet Master 来接受自签名 CSR 或所有 CSR。默认情况下,允许未经身份验证的 CSR 将使 Puppet Master 可供任何人访问。默认情况下,将证书请求上传设置为启用会使您的 Puppet Master 易受拒绝服务 (DoS) 攻击。
-
登录 Puppet Enterprise 控制台。
-
依次选择 Configure (配置)、Classification (分类)、PE Master、Configuration (配置) 选项卡。
-
在 Classification (分类) 选项卡上,找到类 puppet_enterprise::profile::master。
-
将 allow_unauthenticated_ca 参数的值设置为 true。
-
保存您的更改。您的更改将在下一次运行 Puppet 时应用。您可以允许更改在 30 分钟后生效(并添加本地节点),也可以在 PE 控制台的 Run (运行) 部分中手动启动 Puppet 运行。
更多信息
访问 Le arn Puppet 教程网站