如果已将 VMware Container Networking 版本升级到新版本,必须同时升级已注册的 Antrea 容器集群中的 Antrea-NSX interworking 部署。

前提条件

  1. 必须成功升级 Antrea 容器集群中注册到 NSXVMware Container Networking 版本。
  2. 仅完成向 NSX-T Data Center 注册 Antrea 容器集群的必备条件中所述的以下必备条件步骤。跳过此链接中的其他必备条件步骤。
    • 确定 Kubernetes 集群中的 Antrea 版本。
    • 下载 Antrea-NSX interworking zip 文件。
    • 将容器映像导入到容器注册表。

      确保编辑 interworking.yamlderegisterjob.yaml 文件,并将映像 URL 更新到导入的映像或联机映像 URL。

过程

  1. 运行以下 kubectl 命令以删除注册作业和 antrea-interworking 部署。
    kubectl delete job register -n vmware-system-antrea --ignore-not-found
    kubectl delete deployment antrea-interworking -n vmware-system-antrea --ignore-not-found
    注: 请勿删除此命名空间中的 vmware-system-antrea 命名空间、ConfigMaps 和密钥。
  2. 运行以下 kubectl 命令,将 interworking.yaml 文件提交到 Kubernetes API 服务器,并触发升级。
    kubectl apply -f interworking.yaml
    注: 只有 interworking.yaml 必须提交。升级过程不需要 bootstrap-config.yaml 文件。
  3. 运行以下 kubectl 命令以列出 vmware-system-antrea 命名空间中的所有 Pod。
    kubectl get pods -o wide -n vmware-system-antrea
    注意 register-xxx Pod 的状态是否为 正在运行。由于已向 NSX 注册 Antrea 容器集群,因此 register-xxx Pod 会跳过注册过程,并且状态很快更改为 已完成。旧的 interworking-yyy Pod 状态将更改为 正在终止,而新的 interworking-zzz Pod 状态将更改为 正在运行

    当新的 interworking-zzz Pod 状态为正在运行,且就绪容器为 4/4 时,无需重新启动容器,且升级成功。

    #Example output:
    
    NAME                            READY   STATUS    RESTARTS   AGE   IP              NODE              NOMINATED NODE   READINESS GATES
    interworking-7764988ddd-wnvcg   4/4     Running   0          29s   192.168.x.y     example-node-10   <none>           <none>
  4. 运行以下 kubectl 命令,确认新的 interworking-zzz Pod 正在使用新映像,并且映像 URL 与预期相同。
    确保将“interworking-7764988ddd-wnvcg”Pod 名称替换为您在上一步的 kubectl get pods 命令输出中看到的实际 Pod 名称。
    kubectl get pods -o yaml interworking-7764988ddd-wnvcg -n vmware-system-antrea | grep image:
    
    # Example output:
        image: vmware.io/antrea/interworking:0.11.0
        image: vmware.io/antrea/interworking:0.11.0
        image: vmware.io/antrea/interworking:0.11.0
        image: vmware.io/antrea/interworking:0.11.0
        image: vmware.io/antrea/interworking:0.11.0
        image: vmware.io/antrea/interworking:0.11.0
        image: vmware.io/antrea/interworking:0.11.0
        image: vmware.io/antrea/interworking:0.11.0