成功升级 RaaS 节点后,可以升级使用主节点插件连接到 SaltStack Config 的任何 Salt 主节点。

注:

在升级 Salt 主节点之前,请确保在 Salt 主节点上安装了 pip3 应用程序。如果要从最新版本的主节点插件进行升级,则已安装此应用程序。

要升级 Salt 主节点上的主节点插件,请执行以下操作:

  1. 使用以下命令停止 salt-master 服务:
    sudo systemctl stop salt-master
  2. 检查在 Salt 主节点上运行的 Python 版本。如果运行的是 Python 3.6 或更高版本,则不需要进行更改。否则,请删除以前版本的 SSEAPE 模块。(SSEAPE 是 Salt 主节点的 SaltStack Config 插件)。例如:

    RHEL/CentOS

    sudo rm -rf /usr/lib/python3.6/site-packages/SSEAPE*

    Ubuntu

    sudo rm /usr/lib/python3.6/dist-packages/SSEAPE*
  3. 通过手动安装更新的 Python wheel 来升级主节点插件。使用以下示例命令,并替换为 wheel 文件的确切名称:

    RHEL/CentOS

    sudo pip3 install SSEAPE-file-name.whl --prefix /usr

    Ubuntu

    sudo pip3 install SSEAPE-file-name.whl
    注:

    某些用户可能需要根据操作系统将语法更改为 pip3.6pip36

  4. 更新 API (RaaS) 模块路径:编辑 /etc/salt/master.d/eAPIMasterPaths.conf 文件,引用各个模块的路径。例如,可以将此文件中的所有 python2.7 引用更改为 python3.6
    注:

    根据最初安装 SaltStack Config 的方式,eAPI Salt 主节点路径可能会位于 /etc/salt/master.d/raas.conf 文件中。

  5. 检查 /etc/salt/master.d/raas.conf 中的 engines 部分,确认与以下内容一致:
    engines:
      - sseapi: {}
      - eventqueue: {}
      - rpcqueue: {}
      - jobcompletion: {}
      - keyauth: {}
    注:

    如果出现问题,可能需要还原 /etc/salt/master.d/raas.conf/etc/salt/master.d/eAPIMasterPaths.conf 文件的备份。

  6. 如果使用的是 salt 主节点密钥身份验证(推荐),请确保已配置 sseapi_pubkey_path 并在 /etc/salt/master.d/raas.conf 中注释掉 sseapi_usernamesseapi_password
    sseapi_pubkey_path: /etc/salt/pki/master/sseapi_key.pub
    
    #sseapi_username:
    #sseapi_password:
  7. 检查 master_job_cacheevent_return 条目是否设置为 sseapipgjsonb 返回程序不再可用。
  8. 使用以下命令启动 salt-master 服务:
    sudo systemctl start salt-master

升级过程现已完成。如果遇到任何其他错误,请参阅故障排除页面或联系支持部门