12.9. 手动运行基于 Ansible 的注册


您可以使用 director 节点上的动态清单脚本在部署的 overcloud 上执行手动 Ansible 注册。使用此脚本将节点角色定义为主机组,然后使用 ansible-playbook 针对它们运行 playbook。使用以下示例 playbook 手动注册 Controller 节点。

流程

  1. 创建一个 playbook,它使用 redhat_subscription 模块来注册您的节点。例如,以下 playbook 适用于 Controller 节点:

    ---
    - name: Register Controller nodes
      hosts: Controller
      become: yes
      vars:
        repos:
          - rhel-9-for-x86_64-baseos-eus-rpms
          - rhel-9-for-x86_64-appstream-eus-rpms
          - rhel-9-for-x86_64-highavailability-eus-rpms
          - openstack-17-for-rhel-9-x86_64-rpms
          - fast-datapath-for-rhel-9-x86_64-rpms
      tasks:
        - name: Register system
          redhat_subscription:
            username: myusername
            password: p@55w0rd!
            org_id: 1234567
            release: 9.0
            pool_ids: 1a85f9223e3d5e43013e3d6e8ff506fd
        - name: Disable all repos
          command: "subscription-manager repos --disable *"
        - name: Enable Controller node repos
          command: "subscription-manager repos --enable {{ item }}"
          with_items: "{{ repos }}"
    • 此 play 包含三个任务:

      • 注册节点。
      • 禁用任何自动启用的软件仓库。
      • 仅启用与 Controller 节点相关的软件仓库。存储库使用 repos 变量列出。
  2. 部署 overcloud 后,您可以运行以下命令,以便 Ansible 对 overcloud 执行 playbook (ansible-osp-registration.yml):

    $ ansible-playbook -i /usr/bin/tripleo-ansible-inventory ansible-osp-registration.yml

    这个命令执行以下操作:

    • 运行动态清单脚本以获取主机及其组的列表。
    • 将 playbook 任务应用到 playbook 的 hosts 参数中定义的组中节点,本例中为 Controller 组。
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.