第 1 章 关于 OVN-Kubernetes 网络插件


OVN-Kubernetes Container Network Interface (CNI)插件是 MicroShift 集群的默认网络解决方案。OVN-Kubernetes 是 pod 和基于 Open Virtual Network (OVN) 的服务的虚拟网络。

  • 默认网络配置和连接会在 MicroShift 中在安装过程中自动应用 microshift-networking RPM。
  • 使用 OVN-Kubernetes 网络插件的集群也会在节点上运行 Open vSwitch (OVS)。
  • OVN-K 在节点上配置 OVS,以实施声明的网络配置。
  • 默认情况下,主机物理接口不绑定到 OVN-K 网关网桥 br-ex。您可以使用主机上的标准工具来管理默认网关,如 Network Manager CLI (nmcli)。
  • MicroShift 不支持更改 CNI。

使用配置文件或自定义脚本,您可以配置以下网络设置:

  • 您可以使用子网 CIDR 范围为 pod 分配 IP 地址。
  • 您可以更改最大传输单元(MTU)值。
  • 您可以配置防火墙入口和出口。
  • 您可以在 MicroShift 集群中定义网络策略,包括入口和出口规则。

1.1. MicroShift 网络自定义列表

下表总结了作为默认值、配置支持或未通过 MicroShift 服务提供的网络功能和功能的状态:

表 1.1. MicroShift 网络功能和自定义状态
网络功能可用性支持的自定义

公告地址

[1]

Kubernetes 网络策略

Kubernetes 网络策略日志

不可用

N/A

负载平衡

多播 DNS

[2]

网络代理

[3]

CRI-O

网络性能

MTU 配置

出口 IP

不可用

N/A

出口防火墙

不可用

N/A

出口路由器

不可用

N/A

防火墙

没有 [4]

硬件卸载

不可用

N/A

混合网络

不可用

N/A

集群内通信的 IPsec 加密

不可用

N/A

IPv6

不可用 [5]

N/A

  1. 如果未设置,则默认值会在服务网络后设置为下一个即时子网。例如,当服务网络为 10.43.0.0/16 时,广告地址 被设置为 10.44.0.0/32
  2. 多播 DNS 协议 (mDNS) 允许使用在 5353/UDP 端口上公开的多播进行名称解析和服务发现。
  3. MicroShift 中没有内置透明代理的出口流量。出口必须手动配置。
  4. RHEL for Edge 支持设置 firewalld 服务。
  5. 任何配置中都不提供 IPv6。

1.1.1. 默认设置

如果没有创建 config.yaml 文件,则使用默认值。以下示例显示了默认配置设置。

  • 要查看默认值,请运行以下命令:

    $ microshift show-config

    YAML 格式的默认值示例

    dns:
      baseDomain: microshift.example.com 1
    network:
      clusterNetwork:
        - 10.42.0.0/16 2
      serviceNetwork:
        - 10.43.0.0/16 3
      serviceNodePortRange: 30000-32767 4
    node:
      hostnameOverride: "" 5
      nodeIP: "" 6
    apiServer:
      advertiseAddress: 10.44.0.0/32 7
      subjectAltNames: [] 8
    debugging:
      logLevel: "Normal" 9

    1
    集群的基域。所有管理的 DNS 记录都将是这个基础的子域。
    2
    从中分配 Pod IP 地址的 IP 地址块。
    3
    Kubernetes 服务的虚拟 IP 地址块。
    4
    端口范围允许用于 NodePort 类型的 Kubernetes 服务。
    5
    节点的名称。默认值为 hostname。
    6
    节点的 IP 地址。默认值是默认路由的 IP 地址。
    7
    指定 API 服务器公告给集群成员的 IP 地址的字符串。默认值根据服务网络的地址计算。
    8
    API 服务器证书的主题备用名称。
    9
    日志详细程度。此字段的有效值为 Normal,Debug,Trace, 或 TraceAll
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.