要在 NSX 中注册 Antrea Kubernetes 集群,您必须将 bootstrap-config.yaml 文件和 interworking.yaml 部署清单文件提交到 Kubernetes API 服务器。
过程
- 运行以下 kubectl 命令,以将 .yaml 文件提交到 Kubernetes API 服务器:
$ kubectl apply -f bootstrap-config.yaml -f interworking.yaml
确保 bootstrap-config.yaml 文件是在该命令中出现的第一个文件。
该命令会在
NSX 中注册
Antrea Kubernetes 集群。将在
vmware-system-antrea
命名空间中部署 register-xxx 和 interworking-yyy Pod。
其中:xxx 和 yyy 是表示集群中 Pod 的实例 ID 的任意编号。
- 运行以下 kubectl 命令,以查看
vmware-system-antrea
命名空间中的所有 Pod 的列表:
$ kubectl get pods -o wide -n vmware-system-antrea
确认 register Pod 的状态为 Completed,而 interworking Pod 的状态为 Running。
interworking Pod 中
管理平面适配器和
中央控制平面适配器的容器现在开始在
Antrea Kubernetes 集群中运行。
Antrea Kubernetes 集群中的资源已与
NSX 清单同步。
注: 在
NSX 中注册
Antrea Kubernetes 集群后,
管理平面适配器 将连接到 NSX 管理平面,并为
NSX 清单中的
Antrea Kubernetes 集群资源执行完全同步。执行完全同步操作所需的时间与集群规模成正比。此后,仅按预定义的时间间隔定期执行增量同步操作。如果
管理平面适配器由于任何原因而失败,则不会与
NSX 清单同步资源。只有在适配器再次启动后,才会将
Antrea Kubernetes 集群中的资源与
NSX 清单中的现有对象进行比较,然后执行增量同步。
- 仅当 Antrea Kubernetes 集群使用 1.20 或更低版本的 Kubernetes 时,才执行此步骤。
- 运行以下 kubectl 命令,以在用于创建事件的命名空间上注册 Antrea 控制器 Webhook。
$ kubectl apply -f ns-label-webhook.yaml
您可以在从下载 VMware Antrea 页面下载的 antrea-interworking-version.zip 文件中找到此 Webhook 定义文件。
- 重新启动 Antrea 控制器 Pod。
kubectl rollout restart deployment antrea-controller -n kube-system
此命令将删除现有的 Antrea 控制器 Pod,并创建新的 Antrea 控制器 Pod。
- 验证新的 Antrea 控制器 Pod 是否正在运行。
$ kubectl get pod -l component=antrea-controller -n kube-system
下一步做什么
在 NSX Manager UI 中查看 Antrea Kubernetes 集群资源清单,例如 Pod、命名空间、Antrea 网络策略、Antrea 集群网络策略和其他资源。