第 12 章 节点网络


12.1. 观察节点网络状态

节点网络状态是集群中所有节点的网络配置。

12.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 供应商。

12.1.2. 查看节点的网络状态

一个 NodeNetworkState 对象存在于集群中的每个节点上。此对象定期更新,并捕获该节点的网络状态。

流程

  1. 列出集群中的所有 NodeNetworkState 对象:

    $ oc get nns
  2. 检查 NodeNetworkState 对象以查看该节点上的网络。为了清楚,这个示例中的输出已被重新编辑:

    $ oc get nns node01 -o yaml

    输出示例

    apiVersion: nmstate.io/v1
    kind: NodeNetworkState
    metadata:
      name: node01 1
    status:
      currentState: 2
        dns-resolver:
    ...
        interfaces:
    ...
        route-rules:
    ...
        routes:
    ...
      lastSuccessfulUpdateTime: "2020-01-31T12:14:00Z" 3

    1
    NodeNetworkState 对象的名称从节点获取。
    2
    currentState 包含节点的完整网络配置,包括 DNS、接口和路由。
    3
    最新成功更新的时间戳。只要节点可以被访问,这个时间戳就会定期更新,它可以用来指示报告的新旧程度。
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.