24.2. 使用 rhc RHEL 系统角色,使用 Satellite 注册系统
当组织使用 Satellite 管理系统时,需要通过 Satellite 注册系统。您可以使用 rhc
RHEL 系统角色,使用 Satellite 远程注册您的系统。
先决条件
- 您已准备好控制节点和受管节点。
- 以可在受管主机上运行 playbook 的用户登录到控制节点。
-
用于连接到受管节点的帐户具有
sudo
权限。
流程
将您的敏感变量存储在一个加密文件中:
创建 vault :
$ ansible-vault create vault.yml New Vault password: <password> Confirm New Vault password: <vault_password>
在
ansible-vault create
命令打开编辑器后,以<key>: <value>
格式输入敏感数据:activationKey: <activation_key> organizationID: <organizationID>
- 保存更改,并关闭编辑器。Ansible 加密 vault 中的数据。
创建一个包含以下内容的 playbook 文件,如
~/playbook.yml
:--- - name: Managing systems with the rhc RHEL system role hosts: managed-node-01.example.com vars_files: - vault.yml tasks: - name: Register to the custom registration server and CDN ansible.builtin.include_role: name: rhel-system-roles.rhc vars: rhc_auth: activation_keys: keys: - "{{ activationKey }}" rhc_organization: "{{ organizationID }}" rhc_server: hostname: example.com port: 443 prefix: /rhsm rhc_baseurl: http://example.com/pulp/content
示例 playbook 中指定的设置包括以下内容:
主机名: example.com
- Satellite 服务器的完全限定域名(FQDN),用于系统注册和软件包管理。
端口: 443
- 定义用于与 Satellite 服务器通信的网络端口。
prefix: /rhsm
- 指定用于访问 Satellite 服务器上资源的 URL 路径前缀。
rhc_baseurl: http://example.com/pulp/content
-
定义内容 URL 的前缀。在 Satellite 环境中,
baseurl
必须设置为注册系统的同一服务器。请参阅hostname
值,以确保使用正确的服务器。
验证 playbook 语法:
$ ansible-playbook --syntax-check --ask-vault-pass ~/playbook.yml
请注意,这个命令只验证语法,不会防止错误但有效的配置。
运行 playbook:
$ ansible-playbook --ask-vault-pass ~/playbook.yml
其他资源
-
/usr/share/ansible/roles/rhel-system-roles.rhc/README.md
文件 -
/usr/share/doc/rhel-system-roles/rhc/
目录 - Ansible Vault