从 RHEL 7 迁移到 RHEL 8/9 的第一步是创建新的 RHEL 8/9 系统。

创建这些新系统时,请根据您组织的要求,基于以前的 Salt 基础架构系统配置这些新系统。如果提供了相应的选项,则首选安装 RHEL 9,否则使用 RHEL 8。

创建后,在每个系统上安装 Salt 工作节点代理,并将其连接到 RHEL 7 Salt 主节点。

使用 Salt 执行以下步骤。
注: 以下示例中使用的工作节点 ID 与环境中使用的工作节点 ID 不同。

前提条件

迁移到 RHEL 8/9 之前,必须使用 RHEL 7.4 -7.9。

过程

  1. 通过运行以下命令更新操作系统,以确保将最新的修补程序应用于新系统:
    salt \*rhel9 cmd.run ‘yum update -y’ 
  2. 确保在所有 RHEL 9 服务器上安装了依赖项:
    1. Openssl
    2. epel-release
    3. Python3-cryptography(RHEL8 中不存在 Python36-cryptography)
    4. Python3-pyOpenSSL(RHEL8 中不存在 Python36-pyOpenSSL)
  3. 禁用防火墙服务,或确保端口 443、4505 和 4506 对服务之间的通信打开。要禁用防火墙服务,请打开命令,导航到新的 RHEL8/9 系统,然后运行以下命令
    Systemctl stop firewalld
    Systemctl disable firewalld
    
  4. 要安装依赖项,请执行以下操作:
    1. 创建此状态文件,并将其存储在 RHEL7 Salt 主节点系统(RHEL 8/9 系统报告的位置)上的 /srv/salt 目录中。
      # Install the dependencies for Salt install
      # file: /srv/salt/install_dependencies.sls
      # to apply this state run:
      # salt <minion_id> state.sls install_dependencies
      install_openssl:
        pkg.installed:
          - name: openssl
      
      install_codeready_repo:
        cmd.run:
          - name: subscription-manager repos --enable codeready-builder-for-rhel-9-$(arch)-rpms
          - require:
            - install_openssl
      
      install_epel:
        cmd.run:
          - name: dnf -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm
          - require:
            - install_codeready_repo
      
      install_pycrypto:
        pkg.installed:
          - name: python3-cryptography
          - require:
            - install_epel
      
      install_pyopenssl:
        pkg.installed:
          - name: python3-pyOpenSSL
          - require:
            - install_pycrypto
      
    2. 在测试模式下运行 install_dependencies.sls state 命令:
      Salt ‘*rhel9-*’ state.sls install_dependencies test=True
    3. 如果已成功完成状态文件创建且未发生错误,请在不使用 test=true 的情况下运行命令:
      Salt ‘*rhel9-*’ state.sls install_dependencies