1.4. 更新 Red Hat Openstack Platform 和 Ansible 存储库

更新您的软件仓库,以使用 Red Hat OpenStack Platform (RHOSP) 16.2 和 Ansible 2.9 软件包。

流程

  1. stack 用户的身份登录 undercloud。
  2. Source stackrc 文件:

    $ source ~/stackrc
  3. 编辑 overcloud 订阅管理环境文件,这是包含 RhsmVars 参数的文件。此文件的默认名称为 rhsm.yml
  4. 检查您的订阅管理配置中的 rhsm_repos 参数。如果 rhsm_repos 参数使用 RHOSP 16.1 和 Ansible 2.8 存储库,请将存储库改为正确的版本:

    parameter_defaults:
      RhsmVars:
        rhsm_repos:
          - rhel-8-for-x86_64-baseos-tus-rpms
          - rhel-8-for-x86_64-appstream-tus-rpms
          - rhel-8-for-x86_64-highavailability-tus-rpms
          - ansible-2.9-for-rhel-8-x86_64-rpms
          - openstack-16.2-for-rhel-8-x86_64-rpms
          - fast-datapath-for-rhel-8-x86_64-rpms
  5. 保存 overcloud 订阅管理环境文件。
  6. 创建 overcloud 的静态清单文件:

    $ tripleo-ansible-inventory --ansible_ssh_user heat-admin --static-yaml-inventory ~/inventory.yaml

    如果您使用与 overcloud 默认 overcloud 名称不同的 overcloud 名称,请使用 --plan 选项设置 overcloud 的名称。

  7. 创建包含在所有 RHOSP 节点上将存储库设置为 RHOSP 16.2 的任务的 playbook:

    $ cat > ~/update_rhosp_repos.yaml <<'EOF'
    - hosts: all
      gather_facts: false
      tasks:
        - name: change osp repos
          command: subscription-manager repos --disable=openstack-16.1-for-rhel-8-x86_64-rpms --enable=openstack-16.2-for-rhel-8-x86_64-rpms --disable=ansible-2.8-for-rhel-8-x86_64-rpms --enable=ansible-2.9-for-rhel-8-x86_64-rpms
          become: true
    EOF
  8. 运行 update_rhosp_repos.yaml playbook:

    $ ansible-playbook -i ~/inventory.yaml -f 25 ~/update_rhosp_repos.yaml --limit <undercloud>,<Controller>,<Compute>
    • 使用 --limit 选项将内容应用到所有 RHOSP 节点。将 & lt;undercloud& gt ; , &lt ;Controller > , <Compute > 替换为包含这些节点的环境中的 Ansible 组。
    • 如果您为这些节点使用不同的订阅,则无法针对 Ceph Storage 节点运行此 playbook。
  9. 创建一个包含在所有 Ceph Storage 节点上将存储库设置为 RHOSP 16.2 的任务的 playbook:

    $ cat > ~/update_ceph_repos.yaml <<'EOF'
    - hosts: all
      gather_facts: false
      tasks:
        - name: change ceph repos
          command: subscription-manager repos --disable=openstack-16-deployment-tools-for-rhel-8-x86_64-rpms --enable=openstack-16.2-deployment-tools-for-rhel-8-x86_64-rpms --disable=ansible-2.8-for-rhel-8-x86_64-rpms --enable=ansible-2.9-for-rhel-8-x86_64-rpms
          become: true
    EOF
  10. 运行 update_ceph_repos.yaml playbook:

    $ ansible-playbook -i ~/inventory.yaml -f 25 ~/update_ceph_repos.yaml --limit CephStorage

    使用 --limit 选项将内容应用到 Ceph Storage 节点。