1.2. 将环境锁定到 Red Hat Enterprise Linux 发行版本

Red Hat OpenStack Platform (RHOSP) 17.1 支持 Red Hat Enterprise Linux (RHEL) 9.2。在执行更新前,将 undercloud 和 overcloud 存储库锁定到 RHEL 9.2 版本,以避免将操作系统升级到较新的次版本。

流程

  1. stack 用户身份登录 undercloud 主机。
  2. 查找 stackrc undercloud 凭证文件:

    $ source ~/stackrc
  3. 编辑 overcloud 订阅管理环境文件,这是包含 RhsmVars 参数的文件。此文件的默认名称为 rhsm.yml
  4. 检查您的订阅管理配置是否包含 rhsm_release 参数。如果 rhsm_release 参数不存在,请添加它并将其设置为 9.2 :

    parameter_defaults:
      RhsmVars:
        …​
        rhsm_username: "myusername"
        rhsm_password: "p@55w0rd!"
        rhsm_org_id: "1234567"
        rhsm_pool_ids: "1a85f9223e3d5e43013e3d6e8ff506fd"
        rhsm_method: "portal"
        rhsm_release: "9.2"
  5. 保存 overcloud 订阅管理环境文件。
  6. 创建一个 playbook,其中包含将操作系统版本锁定到所有节点上的 RHEL 9.2 的任务:

    $ cat > ~/set_release.yaml <<'EOF'
    - hosts: all
      gather_facts: false
      tasks:
        - name: set release to 9.2
          command: subscription-manager release --set=9.2
          become: true
    EOF
  7. 运行 set_release.yaml playbook:

    $ ansible-playbook -i ~/overcloud-deploy/<stack>/tripleo-ansible-inventory.yaml -f 25 ~/set_release.yaml --limit <undercloud>, <Controller>, <Compute>
    • <stack> 替换为您的堆栈的名称。
    • 使用 --limit 选项将内容应用到所有 RHOSP 节点。将 <undercloud>, <Controller>, <Compute> 替换为包含这些节点的环境中的 Ansible 组。不要针对 Ceph Storage 节点运行此 playbook,因为您可能具有这些节点的不同订阅。
注意

要手动将节点锁定到版本,请登录到节点并运行 subscription-manager release 命令:

$ sudo subscription-manager release --set=9.2