Skip to main content
本产品推出了新版本。
简体中文版经机器翻译而成,仅供参考。如与英语版出现任何冲突,应以英语版为准。

升级 NetApp HCI 上的 Rancher

贡献者

要升级 Rancher 软件,您可以使用 NetApp Hybrid Cloud Control ( HCC ) UI 或 REST API 。HCC 提供了一个简单的按钮流程来升级 Rancher 部署的组件,包括 Rancher 服务器, Rancher Kubernetes 引擎( RKE) 和管理集群的节点操作系统(用于安全更新)。您也可以使用 API 帮助自动升级。

升级按组件进行,而不是累积软件包。因此,某些组件升级(例如 Ubuntu 操作系统)的速度更快。升级仅会影响 Rancher 服务器实例以及部署 Rancher 服务器的管理集群。升级到管理集群节点的 Ubuntu 操作系统仅适用于关键安全修补程序,不适用于升级操作系统。无法从 NetApp Hybrid Cloud Control 升级用户集群。

您需要的内容
  • * 管理员权限 * :您拥有执行升级的存储集群管理员权限。

  • * 管理服务 * :您已将管理服务捆绑包更新到最新版本。

重要说明 要使用 Rancher 功能,您必须升级到最新的管理服务包 2.17 或更高版本。
  • * 系统端口 * :如果您使用 NetApp Hybrid Cloud Control 进行升级,则已确保必要的端口处于打开状态。请参见 "网络端口" 有关详细信息 …​

  • 最终用户许可协议(EULA):从管理服务2.20.69开始、您必须先接受并保存此EULA、然后才能使用NetApp Hybrid Cloud Control UI或API升级Rancher部署:

    1. 在Web浏览器中打开管理节点的IP地址:

      https://<ManagementNodeIP>
    2. 通过提供存储集群管理员凭据登录到 NetApp Hybrid Cloud Control 。

    3. 选择靠近接口右上角的 * 升级 * 。

    4. 此时将弹出EULA。向下滚动、选择*我接受当前更新和所有未来更新*、然后选择*保存*。

升级选项

选择以下升级过程之一:

使用 NetApp Hybrid Cloud Control UI 升级 Rancher 部署

使用 NetApp Hybrid Cloud Control UI ,您可以升级 Rancher 部署中的以下任一组件:

  • Rancher 服务器

  • Rancher Kubernetes Engine ( RKE)

  • 节点操作系统安全更新

您需要的内容
  • 互联网连接良好。无法进行非公开站点升级(在没有外部连接的站点上升级)。

步骤
  1. 在Web浏览器中打开管理节点的IP地址:

    https://<ManagementNodeIP>
  2. 通过提供存储集群管理员凭据登录到 NetApp Hybrid Cloud Control 。

  3. 选择靠近接口右上角的 * 升级 * 。

  4. 在 * 升级 * 页面上,选择 * Rancher* 。

  5. 选择要升级的软件的 * 操作 * 菜单。

    • Rancher 服务器

    • Rancher Kubernetes Engine ( RKE)

    • 节点操作系统安全更新

  6. 对于 Rancher 服务器或 RKE 升级,请选择 * 升级 * ;对于节点操作系统安全更新,请选择 * 应用升级 * 。

    备注 对于节点操作系统,安全修补程序的无人值守升级会每天运行,但节点不会自动重新启动。通过应用升级,您将重新启动每个节点,以使安全更新生效。

此时将显示一个横幅,指示组件升级成功。在 NetApp Hybrid Cloud Control UI 显示更新后的版本号之前,可能会有长达 2 分钟的延迟。

使用 NetApp Hybrid Cloud Control API 升级 Rancher 部署

您可以使用 API 升级 Rancher 部署中的以下任一组件:

  • Rancher 服务器

  • Rancher Kubernetes Engine ( RKE)

  • 节点操作系统(用于安全更新)

您可以使用您选择的自动化工具运行管理节点上可用的 API 或 REST API UI 。

选项

升级 Rancher 服务器

API 命令
  1. 启动列表升级版本请求:

    curl -X POST "https://<managementNodeIP>/k8sdeployer/1/upgrade/rancher-versions" -H "accept: application/json" -H "Authorization: Bearer ${TOKEN}"
    备注 您可以找到 API 命令使用的承载 ` $ { token }` "授权"。承载 ` $ { token }` 位于 cURL 响应中。
  2. 使用先前命令中的任务 ID 获取任务状态,并从响应中复制最新版本号:

    curl -X GET "https://<mNodeIP>/k8sdeployer/1/task/<taskID>" -H "accept: application/json" -H "Authorization: Bearer ${TOKEN}"
  3. 启动 Rancher 服务器升级请求:

    curl -X PUT "https://<mNodeIP>/k8sdeployer/1/upgrade/rancher/<version number>" -H "accept: application/json" -H "Authorization: Bearer"
  4. 使用升级命令响应中的任务 ID 获取任务状态:

    curl -X GET "https://<mNodeIP>/k8sdeployer/1/task/<taskID>" -H "accept: application/json" -H "Authorization: Bearer ${TOKEN}"
REST API UI 步骤
  1. 在管理节点上打开管理节点 REST API UI :

    https://<ManagementNodeIP>/k8sdeployer/api/
  2. 选择 * 授权 * 并完成以下操作:

    1. 输入集群用户名和密码。

    2. 输入客户端 ID mnode-client

    3. 选择 * 授权 * 以开始会话。

    4. 关闭授权窗口。

  3. 检查最新的升级包:

    1. 从 REST API UI 中,运行 * POST /v upgrade​ /rancher-versions * 。

    2. 从响应中,复制任务 ID 。

    3. 使用上一步中的任务 ID 运行 * 获取 / task​ / { taskID } * 。

  4. 在 * / task​ / { taskID } * 响应中,复制要用于升级的最新版本号。

  5. 运行 Rancher 服务器升级:

    1. 从 REST API UI 中,使用上一步中的最新版本号运行 * PUT upgrade​ /v í rancher​ / { version } * 。

    2. 从响应中,复制任务 ID 。

    3. 使用上一步中的任务 ID 运行 * 获取 / task​ / { taskID } * 。

PercentComplete 指示 100results 指示升级后的版本号时,升级已成功完成。

升级 RKE

API 命令
  1. 启动列表升级版本请求:

    curl -X POST "https://<mNodeIP>/k8sdeployer/1/upgrade/rke-versions" -H "accept: application/json" -H "Authorization: Bearer ${TOKEN}"
    备注 您可以找到 API 命令使用的承载 ` $ { token }` "授权"。承载 ` $ { token }` 位于 cURL 响应中。
  2. 使用先前命令中的任务 ID 获取任务状态,并从响应中复制最新版本号:

    curl -X GET "https://<mNodeIP>/k8sdeployer/1/task/<taskID>" -H "accept: application/json" -H "Authorization: Bearer ${TOKEN}"
  3. 启动 RKE- 升级请求

    curl -X PUT "https://<mNodeIP>/k8sdeployer/1/upgrade/rke/<version number>" -H "accept: application/json" -H "Authorization: Bearer"
  4. 使用升级命令响应中的任务 ID 获取任务状态:

    curl -X GET "https://<mNodeIP>/k8sdeployer/1/task/<taskID>" -H "accept: application/json" -H "Authorization: Bearer ${TOKEN}"
REST API UI 步骤
  1. 在管理节点上打开管理节点 REST API UI :

    https://<ManagementNodeIP>/k8sdeployer/api/
  2. 选择 * 授权 * 并完成以下操作:

    1. 输入集群用户名和密码。

    2. 输入客户端 ID mnode-client

    3. 选择 * 授权 * 以开始会话。

    4. 关闭授权窗口。

  3. 检查最新的升级包:

    1. 从 REST API UI 中,运行 * POST /t upgrade​ /RKE-Versions * 。

    2. 从响应中,复制任务 ID 。

    3. 使用上一步中的任务 ID 运行 * 获取 / task​ / { taskID } * 。

  4. 在 * / task​ / { taskID } * 响应中,复制要用于升级的最新版本号。

  5. 运行 RKE- 升级:

    1. 从 REST API UI 中,使用上一步中的最新版本号运行 * PUT /upgrade/RKE/ { version } * 。

    2. 复制响应中的任务 ID 。

    3. 使用上一步中的任务 ID 运行 * 获取 / task​ / { taskID } * 。

PercentComplete 指示 100results 指示升级后的版本号时,升级已成功完成。

应用节点操作系统安全更新

API 命令
  1. 启动检查升级请求:

    curl -X GET "https://<mNodeIP>/k8sdeployer/1/upgrade/checkNodeUpdates" -H "accept: application/json" -H "Authorization: Bearer ${TOKEN}"
    备注 您可以找到 API 命令使用的承载 ` $ { token }` "授权"。承载 ` $ { token }` 位于 cURL 响应中。
  2. 使用先前命令中的任务 ID 获取任务状态,并验证响应中是否提供了最新版本号:

    curl -X GET "https://<mNodeIP>/k8sdeployer/1/task/<taskID>" -H "accept: application/json" -H "Authorization: Bearer ${TOKEN}"
  3. 应用节点更新:

    curl -X POST "https://<mNodeIP>/k8sdeployer/1/upgrade/applyNodeUpdates" -H "accept: application/json" -H "Authorization: Bearer"
    备注 对于节点操作系统,安全修补程序的无人值守升级会每天运行,但节点不会自动重新启动。通过应用升级,您可以按顺序重新启动每个节点,以使安全更新生效。
  4. 使用升级中的任务 ID 获取任务状态 applyNodeUpdates response :

    curl -X GET "https://<mNodeIP>/k8sdeployer/1/task/<taskID>" -H "accept: application/json" -H "Authorization: Bearer ${TOKEN}"
REST API UI 步骤
  1. 在管理节点上打开管理节点 REST API UI :

    https://<ManagementNodeIP>/k8sdeployer/api/
  2. 选择 * 授权 * 并完成以下操作:

    1. 输入集群用户名和密码。

    2. 输入客户端 ID mnode-client

    3. 选择 * 授权 * 以开始会话。

    4. 关闭授权窗口。

  3. 验证是否有可用的升级软件包:

    1. 从 REST API UI 中,运行 * 获取 /upgrade/checkNodeUpdates* 。

    2. 从响应中,复制任务 ID 。

    3. 使用上一步中的任务 ID 运行 * 获取 / task​ / { taskID } * 。

    4. 在 * / task​ / { taskID } * 响应中,验证是否存在比当前应用于节点的版本号更新的版本号。

  4. 应用节点操作系统升级:

    备注 对于节点操作系统,安全修补程序的无人值守升级会每天运行,但节点不会自动重新启动。通过应用升级,您可以按顺序重新启动每个节点,以使安全更新生效。
    1. 从 REST API UI 中,运行 * POST upgrade​ /applyNodeUpdates* 。

    2. 从响应中,复制任务 ID 。

    3. 使用上一步中的任务 ID 运行 * 获取 / task​ / { taskID } * 。

    4. 在 * / task​ / { taskID } * 响应中,验证是否已应用升级。

PercentComplete 指示 100results 指示升级后的版本号时,升级已成功完成。

了解更多信息