第 11 章 节点网络
11.1. 观察节点网络状态
节点网络状态是集群中所有节点的网络配置。
11.1.1. 关于 nmstate
OpenShift Virtualization 使用 nmstate
来报告并配置节点网络的状态。这样就可以通过将单个配置清单应用到集群来修改网络策略配置,例如在所有节点上创建 Linux 桥接。
节点网络由以下对象监控和更新:
NodeNetworkState
- 报告该节点上的网络状态。
NodeNetworkConfigurationPolicy
-
描述节点上请求的网络配置。您可以通过将
NodeNetworkConfigurationPolicy
清单应用到集群来更新节点网络配置,包括添加和删除网络接口 。 NodeNetworkConfigurationEnactment
- 报告每个节点上采用的网络策略。
OpenShift Virtualization 支持使用以下 nmstate 接口类型:
- Linux Bridge
- VLAN
- bond
- Ethernet
如果您的 OpenShift Container Platform 集群使用 OVN-Kubernetes 作为默认 Container Network Interface(CNI)供应商,则无法将 Linux 网桥或绑定附加到主机的默认接口,因为 OVN-Kubernetes 的主机网络拓扑发生了变化。作为临时解决方案,您可以使用连接到主机的二级网络接口,或切换到 OpenShift SDN 默认 CNI 供应商。
11.1.2. 查看节点的网络状态
一个 NodeNetworkState
对象存在于集群中的每个节点上。此对象定期更新,并捕获该节点的网络状态。
流程
列出集群中的所有
NodeNetworkState
对象:$ oc get nns
检查
NodeNetworkState
对象以查看该节点上的网络。为了清楚,这个示例中的输出已被重新编辑:$ oc get nns node01 -o yaml
输出示例
apiVersion: nmstate.io/v1alpha1 kind: NodeNetworkState metadata: name: node01 1 status: currentState: 2 dns-resolver: ... interfaces: ... route-rules: ... routes: ... lastSuccessfulUpdateTime: "2020-01-31T12:14:00Z" 3