C.4. 注册主机
您可以使用注册模板注册主机,并在注册过程中设置各种集成功能和主机工具。
先决条件
- 您的 Satellite 帐户已分配有 Register hosts 角色,或者分配有等效权限的角色。
- 您必须在要注册的主机上具有 root 权限。
-
您必须在要注册的主机上安装了
curl
或wget
。 - 您已配置了主机以进行注册。如需更多信息,请参阅 第 C.3 节 “配置主机以进行注册”。
- 主机必须有激活码。如需更多信息,请参阅管理内容中的管理激活码。
-
可选: 如果要将主机注册到 Red Hat Insights,您必须同步
rhel-8-for-x86_64-baseos-rpms
和rhel-8-for-x86_64-appstream-rpms
存储库,并在您使用的激活码中提供它们。这是在您的主机上安装insights-client
软件包所必需的。 - 用于主机的操作系统的 Red Hat Satellite Client 6 存储库在 Satellite 服务器上同步,并在您使用的激活码中启用。如需更多信息,请参阅管理内容中的导入内容。远程执行拉取客户端、Puppet 代理、跟踪器和其他工具需要此存储库。
如果要使用 Capsule 服务器而不是 Satellite 服务器,请确保已相应地配置了胶囊服务器。
重要必须将您的胶囊服务器添加到 Satellite 服务器上的可信代理列表中!
如需更多信息,请参阅 安装 Capsule 服务器 中的 为主机注册配置 Capsule 和置备。
- 如果您的 Satellite 服务器或胶囊服务器位于 HTTP 代理后面,请将主机上的 Subscription Manager 配置为使用 HTTP 代理进行连接。如需更多信息,请参阅 红帽知识库 中的 如何通过防火墙或代理访问 Red Hat Subscription Manager (RHSM)。
流程
- 在 Satellite Web UI 中,进入到 Hosts > Register Host。
输入有关如何配置注册主机的详情。
如果您从 Host Group 列表中选择一个主机组,以下字段会继承其来自主机组的值:
- 操作系统
- 激活码
- 生命周期环境
- 负载均衡器后面的 Capsule 优先于 Satellite Web UI 中选择的 Capsule 作为主机的内容源。
- 在 General 选项卡中,在 Activation Keys 字段中输入分配给您的主机的一个或多个激活码。
-
点 Generate 生成
curl
命令。 -
以
root
用户身份在您要注册的主机上运行curl
命令。注册完成后,您在配置注册模板时指定的主机组的任何 Ansible 角色都将在主机上运行。
您可以指定的注册详情包括:
- 在 General 选项卡中,您可以选择 Capsule 字段中要注册您的主机。负载均衡器后面的 Capsule 优先于 Satellite Web UI 中选择的 Capsule 作为主机的内容源。
-
在 General 选项卡中,在 Download utility 字段中,您可以使用
wget
命令选择wget
。默认情况下,Satellite 生成一个curl
命令。 在 General 选项卡中,您可以选择 Insecure 选项,使第一个调用不安全。在此第一次调用期间,您的主机会从 Satellite 下载 CA 文件。您的主机将使用此 CA 文件连接到 Satellite,并在以后的所有调用都保证它们的安全。
红帽建议您避免不安全的调用。
如果攻击者位于 Satellite 和主机之间的网络中,从第一个不安全的调用中获取 CA 文件,攻击者可以从您的主机和 JSON Web Tokens (JWT)访问 API 调用的内容。因此,如果您选择在注册过程中部署 SSH 密钥,攻击者可以使用 SSH 密钥访问您的主机。
- 在 Advanced 标签页的 Repositories 字段中,您可以在执行注册前列出要添加的存储库。如果您在激活码中提供软件仓库,则不必指定软件仓库。
- 在 Advanced 选项卡中,您可以配置要安装的远程执行、Red Hat Insights 和软件包。
在 Advanced 选项卡中,在 Token lifetime (小时) 字段中,您可以更改 Satellite 用于身份验证的 JSON Web Token (JWT)的有效性持续时间。此令牌的持续时间定义生成的注册命令的工作方式。
请注意,Satellite 将生成注册命令的用户的权限应用到主机的授权。如果用户丢失或获得额外的权限,则 JWT 的权限也会改变。因此,不要在令牌期间删除、阻止或更改用户的权限。
JWT 的范围仅限于注册端点,且不能在其它任何位置使用。
Satellite 生成注册命令,以及按 ID 搜索资源的参数。您可以编辑注册命令,按标题搜索以下资源:
- 机构(Organization)
-
URL 片段示例:
organization=My%20Organization
或organization=My+Organization
- 位置
-
URL 片段示例:
location=My%20Location
或location=My+Location
- 主机组
如果主机组嵌套,请包含以斜杠字符(
/
)分隔的父组。URL 片段示例:
hostgroup=Parent%20Group%2FMy%20Host%20Group
- 操作系统
-
URL 片段示例:
operatingsystem=My%20Operating%20System
或operatingsystem=My+Operating+System
参数值必须采用 URL 编码。
CLI 过程
-
使用
hammer host-registration generate-command
生成注册命令以注册您的主机。 -
在您要注册的主机上,以
root
身份运行注册命令。
如需更多信息,请参阅使用 hammer host-registration generate-command --help
的 Hammer CLI 帮助。
Ansible 流程
-
使用
redhat.satellite.registration_command
模块。
如需更多信息,请参阅 ansible-doc redhat.satellite.registration_command
的 Ansible 模块文档。
API 流程
-
使用
POST /api/registration_commands
资源。
如需更多信息,请参阅 https://satellite.example.com/apidoc/v2.html
的完整 API 参考。
后续步骤
- 要使用 Tracer 设置对过时的服务和应用程序的监控,请参阅管理主机中的 在主机上配置 Tracer。