2.4. 逻辑网络

2.4.1. 逻辑网络任务

2.4.1.1. 执行网络任务

NetworkNetworks 为用户提供一个中央位置,供用户执行逻辑网络相关的操作,并根据每个网络的属性或与其他资源关联搜索逻辑网络。通过新建编辑删除按钮,您可以在数据中心内创建、更改 的属性和删除逻辑网络。

点击每个网络名称,并使用详情视图中的标签页执行功能,包括:

  • 将网络附加到集群和主机
  • 从虚拟机和模板中删除网络接口
  • 为用户添加或删除权限以访问和管理网络

这些功能也可以通过每个单独的资源访问。

警告

如果有任何主机正在运行,则不要更改数据中心或集群中的网络,因为这可能导致主机变得不可访问。

重要

如果您计划使用 Red Hat Virtualization 节点提供任何服务,请记住,如果 Red Hat Virtualization 环境停止操作,该服务将停止。

这适用于所有服务,但您应该特别意识到在 Red Hat Virtualization 上运行以下内容:

  • 目录服务
  • DNS
  • 存储

2.4.1.2. 在数据中心或集群中创建新的逻辑网络

创建逻辑网络并在数据中心或数据中心内定义其使用。

流程

  1. ComputeData CentersComputeClusters
  2. 点数据中心或集群名称。Details 视图将打开。
  3. 单击 逻辑网络 选项卡。
  4. 打开 New Logical Network 窗口:

    • 从数据中心详情视图中,单击 New
    • 在集群详情视图中点 Add Network
  5. 输入逻辑网络的 NameDescription注释
  6. 可选: 启用 VLAN 标记
  7. 可选:禁用 VM Network
  8. 可选: 选择 Create on external provider 复选框。这可禁用网络标签和 VM 网络。有关详细信息,请参阅 外部提供程序

    1. 选择 External ProviderExternal Provider 列表不包含处于只读模式下的外部提供程序。
    2. 要创建内部隔离网络,请在 External Provider 列表上选择 ovirt-provider-ovn ,并保持连接到物理网络 已清除。
  9. 输入新标签,或者在 Network Label 文本字段中为逻辑网络选择现有标签。
  10. 对于 MTU,可选择 Default (1500),或者选择 Custom 并指定自定义值。

    重要

    在外部提供程序上创建网络后,您无法更改网络的 MTU 设置。

    重要

    如果更改网络的 MTU 设置,您必须将此更改传播到网络中的正在运行的虚拟机:Hot unplug 和 replug each virtual machine 的 vNIC(应该应用 MTU 设置),或重启虚拟机。否则,当虚拟机迁移到另一台主机时,这些接口会失败。如需更多信息,请参阅 网络 MTU 更改后,一些虚拟机和网桥有旧的 MTU,查看数据包丢弃BZ#1766414

  11. 如果您从 External Provider 下拉列表中选择了 ovirt-provider-ovn,请定义网络是否应该实施安全组。有关详细信息,请参阅 逻辑网络常规设置说明
  12. Cluster 选项卡中,选择将网络分配到的集群。您还可以指定逻辑网络是否是必需的网络。
  13. 如果选中 Create on external provider 复选框,则会看到 Subnet 选项卡。从子网选项卡中,选择创建子网并输入名称CIDR网关地址,然后为逻辑网络提供的子网选择 IP 版本。您还可以根据需要添加 DNS 服务器。
  14. vNIC Profiles 选项卡中,根据需要将 vNIC 配置集添加到逻辑网络中。
  15. 点击 OK

如果您为逻辑网络输入标签,则会自动添加到具有该标签的所有主机网络接口。

注意

当创建新逻辑网络或更改用作显示网络的现有逻辑网络时,必须在网络可用或应用更改前重启使用该网络的任何正在运行的虚拟机。

2.4.1.3. 编辑逻辑网络

重要

如果没有与主机上的网络配置同步,则无法编辑或移动逻辑网络。请参阅 编辑主机网络接口,并在如何同步您的网络时将逻辑网络分配给主机

重要

当更改用作显示网络的现有逻辑网络的虚拟机网络属性时,无法在已在运行的虚拟机的主机上启动新的虚拟机。只有更改 VM Network 属性后没有运行虚拟机的主机才能启动新虚拟机。

流程

  1. 单击 ComputeData Centers
  2. 点数据中心名称。这会打开详情视图。
  3. 单击 Logical Networks 选项卡,再选择逻辑网络。
  4. Edit
  5. 编辑必要的设置。

    注意

    您可以编辑新网络或现有网络的名称,但默认网络除外,而无需停止虚拟机。

  6. 点击 OK
注意

多主机网络配置会自动将更新的网络设置应用到分配到网络的所有主机。只有在使用网络的虚拟机停机时,才能应用更改。您不能重命名已在主机上配置的逻辑网络。在使用该网络的虚拟机或模板运行时,您无法禁用 VM Network 选项。

2.4.1.4. 删除逻辑网络

您可以从 NetworkNetworksComputeData Centers 中删除一个逻辑网络。以下步骤演示了如何删除与数据中心关联的逻辑网络。对于 Red Hat Virtualization 环境,您必须至少有一个逻辑网络用作 ovirtmgmt 管理网络。

流程

  1. 单击 ComputeData Centers
  2. 点数据中心的名称。这会打开详情视图。
  3. 逻辑网络 选项卡,以列出数据中心的逻辑网络。
  4. 选择逻辑网络,然后单击删除
  5. (可选) 从提供程序选择 Remove external network (s) 和复选框,以便在外部提供者提供网络时从 Manager 中删除逻辑网络或从外部供应商中删除。如果外部供应商处于只读模式,则勾选框将灰显。
  6. 点击 OK

逻辑网络已从 Manager 中删除,且不再可用。

2.4.1.5. 将非管理逻辑网络配置为默认路由

集群中主机使用的默认路由通过管理网络(ovirtmgmt)。以下流程提供将非管理逻辑网络配置为默认路由的说明。

先决条件:

  • 如果使用 default_route 自定义属性,则需要从所有附加的主机清除自定义属性,然后按照以下步骤操作。

配置默认路由角色

  1. 单击 NetworkNetworks
  2. 点非管理逻辑网络的名称,将其配置为默认路由,以访问其详细信息。
  3. Clusters 选项卡。
  4. 单击 Manage Network。这将打开 Manage Network 窗口。
  5. 为适当的集群选择默认路由复选框。
  6. 点击 OK

当网络附加到主机时,将在您选择的网络上设置主机的默认路由。建议您在将任何主机添加到集群中前配置默认路由角色。如果集群已经包含主机,则它们可能会不同步,直到您将更改同步至它们。

IPv6 的重要限制

  • 对于 IPv6,Red Hat Virtualization 仅支持静态寻址。
  • 如果两个网络共享一个网关(在同一子网中),您可以将默认路由角色从管理网络(ovirtmgmt)移到另一个逻辑网络。
  • 如果主机和管理器不在同一子网中,则管理器将断开与主机的连接,因为删除了 IPv6 网关。
  • 将默认路由角色移到非管理网络中,会从网络接口中删除 IPv6 网关,并生成警报:"On cluster clustername the 'Default Route Role' network is no longer network ovirtmgmt.IPv6 网关正在从此网络中删除"。

2.4.1.6. 在主机上添加静态路由

您可以使用 nmstate 为主机添加静态路由。此方法要求您直接配置主机,而无需使用 Red Hat Virtualization Manager。

只要相关的路由网桥、接口或绑定存在并且具有 IP 地址,您添加的 static-route 就会保留。否则,系统会移除静态路由。

重要

除了在主机上添加或删除静态路由外,请务必使用 RHV Manager 在集群中配置主机网络设置。详情请查看 Network Manager Stateful Configuration (nmstate)

注意

自定义 static-route 会保留,只要其 interface/bond 存在且具有 IP 地址。否则,它将被删除。

因此,VM 网络的行为与非VM 网络不同:

  • VM 网络基于网桥。将网络从一个接口/bond 移动到另一个接口不会影响虚拟机网络上的路由。
  • 非 VM 网络基于接口。将网络从一个接口/bond 移到另一个接口,会删除与 Non-VM 网络相关的路由。

前提条件

这个过程需要 nmstate,这只在您的环境使用时可用:

  • Red Hat Virtualization Manager 版本 4.4
  • 基于 Red Hat Enterprise Linux 8 的 Red Hat Enterprise Linux 主机和 Red Hat Virtualization 主机

流程

  1. 连接到您要配置的主机。
  2. 在主机上,创建一个 static_route.yml 文件,其中包含以下示例内容:

    routes:
      config:
      - destination: 192.168.123.0/24
        next-hop-address: 192.168.178.1
        next-hop-interface: eth1
  3. 将示例值替换为您的网络实际值。
  4. 要将流量路由到添加的二级网络,请使用 next-hop-interface 指定接口或网络名称。

    • 要使用非虚拟机网络,请指定 eth1 等接口。
    • 要使用虚拟机网络,请指定同时是网桥名称(如 net1) 的网络名称。
  5. 运行这个命令:

    $ nmstatectl set static_route.yml

验证步骤

  • 使用您在 static_route.yml 中设置的目的地参数值运行 IP route 命令 ip route。这应该会显示所需的路由。例如,运行以下命令:

    $ ip route | grep 192.168.123.0`

2.4.1.7. 删除主机上的静态路由

您可以使用 nmstate 从主机中删除静态路由。此方法要求您直接配置主机,而无需使用 Red Hat Virtualization Manager。

重要

除了在主机上添加或删除静态路由外,请务必使用 RHV Manager 在集群中配置主机网络设置。详情请查看 Network Manager Stateful Configuration (nmstate)

注意

自定义 static-route 会保留,只要其 interface/bond 存在且具有 IP 地址。否则,它将被删除。

因此,VM 网络的行为与非VM 网络不同:

  • VM 网络基于网桥。将网络从一个接口/bond 移动到另一个接口不会影响虚拟机网络上的路由。
  • 非 VM 网络基于接口。将网络从一个接口/bond 移到另一个接口,会删除与 Non-VM 网络相关的路由。

前提条件

这个过程需要 nmstate,这只在您的环境使用时可用:

  • Red Hat Virtualization Manager 版本 4.4
  • 基于 Red Hat Enterprise Linux 8 的 Red Hat Enterprise Linux 主机和 Red Hat Virtualization 主机

流程

  1. 连接到您要重新配置的主机。
  2. 在主机上,编辑 static_route.yml 文件。
  3. 插入行 state: absent,如下例所示。
  4. interfaces: [] 的括号间添加 next-hop-interface。其结果应当类似于此处显示的示例。

    routes:
      config:
      - destination: 192.168.123.0/24
        next-hop-address: 192.168.178.
        next-hop-interface: eth1
        state: absent
    interfaces: [{“name”: eth1}]
  5. 运行这个命令:

    $ nmstatectl set static_route.yml

验证步骤

  • 使用您在 static_route.yml 中设置的目的地参数值运行 IP route 命令 ip route。这应该不再显示所需的路由。例如,运行以下命令:

    $ ip route | grep 192.168.123.0`

2.4.1.8. 查看或编辑逻辑网络的网关

用户可以为逻辑网络定义网关以及 IP 地址和子网掩码。当主机上存在多个网络,并且流量应通过指定的网络而不是默认网关进行路由时需要这样做。

如果主机上存在多个网络,且未定义网关,返回的流量将通过默认网关路由,该网关可能无法到达预期的目的地。这会导致用户无法 ping 主机。

当接口上线或停机时,Red Hat Virtualization 会自动处理多个网关。

流程

  1. 单击 ComputeHosts
  2. 单击主机的名称。这会打开详情视图。
  3. 单击 Network Interfaces 选项卡,以列出附加到主机的网络接口,以及它们的配置。
  4. 单击 Setup Host Networks
  5. 将光标悬停在分配的逻辑网络上,然后点铅笔图标。此时将打开 Edit Management Network 窗口。

Edit Management Network 窗口显示网络名称、引导协议以及 IP、子网掩码和网关地址。可以通过选择 静态 引导协议来手动编辑地址信息。

2.4.1.9. 逻辑网络常规设置说明

下表描述了新逻辑网络编辑逻辑网络窗口的常规选项卡的设置。

表 2.15. New Logical NetworkEdit Logical Network 设置

字段名称Description

Name

逻辑网络的名称。此文本字段必须是唯一名称,包含大写字母和小写字母、数字、连字符和下划线的任意组合。

请注意,尽管逻辑网络的名称可能超过 15 个字符,并且可以包含非 ASCII 字符,但 on-host 标识符(vdsm_name)将与您定义的名称不同。有关显示这些名称 映射的信息,请参阅将 VDSM 名称映射到逻辑网络 名称。

Description

逻辑网络的描述。此文本字段具有 40 个字符的限值。

注释

用于添加与逻辑网络相关的纯文本可读注释的字段。

在外部供应商上创建

允许您将逻辑网络创建到作为外部提供者添加到 Manager 的 OpenStack 网络实例中。

external Provider - 允许您选择要在其上创建逻辑网络的外部供应商。

启用 VLAN 标记

VLAN 标记是一种安全功能,可为逻辑网络上传输的所有网络流量具有特殊特征。标记为 VLAN 的流量无法通过没有该特征的接口读取。在逻辑网络上使用 VLAN 还支持单个网络接口与多个网络接口关联,不同的是 VLAN 标记的逻辑网络。如果启用了 VLAN 标记,在文本条目字段中输入数字值。

VM Network

如果只有虚拟机使用此网络,则选择这个选项。如果网络用于不涉及虚拟机(如存储通讯)的流量,请不要选中此复选框。

端口隔离

如果已设置此项,则同一主机上的虚拟机会被禁止在此逻辑网络上相互通信和查看。要使此选项在不同的虚拟机监控程序上工作,交换机需要在连接到虚拟机监控程序的相应端口/VLAN 上配置使用 PVLAN/Port 隔离,而不用任何 hairpin 设置重新显示帧。

MTU

选择" 默认 ",这会将最大传输单元(MTU)设置为父括号 () 给出的值,或者 Custom 来为逻辑网络设置自定义 MTU。您可以使用它来将新逻辑网络支持的 MTU 与它接口的硬件支持的 MTU 匹配。如果选择了 Custom,在文本条目字段中输入数字值。重要:如果更改网络的 MTU 设置,您必须将此更改传播到网络中的正在运行的虚拟机:Hot unplug 和 replug each virtual machine 的 vNIC(应该应用 MTU 设置),或重启虚拟机。否则,当虚拟机迁移到另一台主机时,这些接口会失败。如需更多信息,请参阅 网络 MTU 更改后,一些虚拟机和网桥有旧的 MTU,查看数据包丢弃BZ#1766414

Network Label

允许您为网络指定一个新标签,或者从已附加到主机网络接口的现有标签中选择。如果您选择了现有标签,则逻辑网络将自动分配给具有该标签的所有主机网络接口。

安全组

允许您将安全组分配给此逻辑网络上的端口。禁用 禁用安全组功能。Enabled 启用功能。当端口创建并附加到这个网络时,它将通过启用端口安全性进行定义。这意味着,对/虚拟机的访问/虚拟机的访问会受到当前调配的安全组约束。从 Configuration 继承,端口可继承 为所有网络定义的配置文件中的行为。默认情况下,该文件将禁用安全组。详情请参阅 将安全组分配给逻辑网络

2.4.1.10. 逻辑网络集群设置说明

下表描述了新建逻辑网络窗口的集群选项卡的设置。

表 2.16. 新的逻辑网络 设置

字段名称Description

Attach/Detach Network to/from Cluster(s)

允许您从数据中心中的集群附加或分离逻辑网络,并指定逻辑网络是否为单个集群必需的网络。

Name - 设置要应用到的集群名称。此值无法编辑。

Attach All - 允许您向数据中心的所有集群附加或分离逻辑网络。或者,选择或清除要附加或从给定集群分离的每个集群名称旁边的 Attach 复选框。

必需所有 - 允许您指定逻辑网络是所有集群中需要的网络。或者,选择或清除每个集群名称旁边的 Required 复选框,以指定逻辑网络是给定集群的所需网络。

2.4.1.11. 逻辑网络 vNIC 配置文件设置说明

下表描述了 新建逻辑网络 窗口的 vNIC Profiles 选项卡的设置。

表 2.17. 新的逻辑网络 设置

字段名称Description

vNIC 配置集

允许您指定一个或多个逻辑网络的 vNIC 配置集。您可以通过点击 vNIC 配置集旁边的加号或减去按钮,向逻辑网络添加或删除 vNIC 配置集。第一个字段用于输入 vNIC 配置集的名称。

public - 允许您指定配置集是否可供所有用户使用。

QoS - 允许您指定 vNIC 配置集的网络质量服务(QoS)配置集。

2.4.1.12. 使用 Manage Networks Window 为逻辑网络指定特定流量类型

指定逻辑网络的流量类型,以优化网络流量流。

流程

  1. 单击 ComputeClusters
  2. 点集群名称。这会打开详情视图。
  3. 单击 逻辑网络 选项卡。
  4. 单击 Manage Networks
  5. 选中适当的复选框和单选按钮。
  6. 点击 OK
注意

外部提供者提供的逻辑网络必须用作虚拟机网络;不能分配显示或迁移等特殊集群角色。

2.4.1.13. Manage Networks 窗口中的 Settings 解释

下表描述了 Manage Networks 窗口的设置。

表 2.18. 管理网络设置

字段description/Action

分配

将逻辑网络分配到集群中的所有主机。

必需

标记为"required"的网络必须保持正常运行状态,以便它能够正常工作。如果需要网络功能,则与它关联的任何主机都无法运行。

VM Network

标记为"VM Network"的逻辑网络承载与虚拟机网络相关的网络流量。

显示网络

标记为"显示网络"的逻辑网络承载与 SPICE 和虚拟网络控制器相关的网络流量。

迁移网络

标记为"Migration Network"的逻辑网络执行虚拟机和存储迁移流量。如果此网络上发生中断,则改为使用管理网络(默认情况下ovirtmgmt )。

2.4.1.14. 在 NIC 上配置虚拟功能

注意

这是显示如何在 Red Hat Virtualization 上设置和配置 SR-IOV 的一系列主题中的一个。如需更多信息,请参阅设置和配置 SR-IOV

单根 I/O 虚拟化(SR-IOV)使您能够使用物理功能(PF)和虚拟功能(VF)将每个 PCIe 端点用作多个单独的设备。PCIe 卡可以有一个到 8 个 PF。每个 PF 都可以有多个 VF。可以拥有的 VF 数量取决于具体类型的 PCIe 设备。

要配置支持 SR-IOV 的网络接口控制器(NIC),您可以使用 Red Hat Virtualization Manager。您可以在每个 NIC 上配置 VF 数量。

您可以配置 VF,如您要配置独立 NIC,包括:

  • 将一个或多个逻辑网络分配给 VF。
  • 使用 VF 创建绑定接口。
  • 为直接设备透传分配 vNIC。

默认情况下,所有虚拟网络都可以访问虚拟功能。您可以禁用此默认值,并指定哪些网络有权访问虚拟功能。

前提条件

流程

  1. 单击 ComputeHosts
  2. 点击支持 SR-IOV 的主机的名称。这会打开详情视图。
  3. 点击 Network Interfaces 选项卡。
  4. 单击 Setup Host Networks
  5. 选择一个支持 SR-IOV 的 NIC,标记为 SR IOV icon ,然后点铅笔图标。
  6. 可选:要更改虚拟功能的数量,请点 Number of VFs setting 下拉菜单,并编辑 Number of VFs 文本字段。

    重要

    更改 VF 的数量会在创建新 VF 前删除网络接口上所有之前的 VF。这包括直接附加虚拟机的任何 VF。

  7. 可选: 要限制哪些虚拟网络可以访问虚拟功能,请选择 Specific network

    1. 选择应有权访问 VF 的网络,或者使用 Labels 根据其网络标签选择网络。
  8. 点击 OK
  9. Setup Host Networks 窗口中,单击 OK

2.4.2. 虚拟网络接口卡(vNIC)

2.4.2.1. vNIC 配置文件概述

虚拟网络接口卡(vNIC)配置集是可应用于 Manager 中的独立虚拟网络接口卡的设置集合。vNIC 配置集允许您将 Network QoS 配置集应用到 vNIC,启用或禁用端口镜像,并添加或删除自定义属性。vNIC 配置集还提供新增的管理权限层,以授予这些配置集供特定用户使用(假设)这些配置集。这样,您可以控制不同用户从给定网络接收的服务质量。

2.4.2.2. 创建或编辑 vNIC 配置集

创建或编辑 Virtual Network Interface Controller (vNIC)配置集,以注册用户和组的网络带宽。

注意

如果您要启用或禁用端口镜像,在编辑前,使用相关配置集的所有虚拟机都必须处于 down 状态。

流程

  1. 单击 NetworkNetworks
  2. 点逻辑网络的名称。这会打开详情视图。
  3. vNIC Profiles 选项卡。
  4. NewEdit
  5. 输入配置文件的名称描述
  6. QoS 列表中选择相关的服务质量策略。
  7. 从下拉列表中选择 Network Filter,以管理进出虚拟机的网络数据包的流量。有关网络过滤器的更多信息,请参阅 Red Hat Enterprise Linux Virtualization Deployment and Administration Guide 中的应用网络过滤
  8. 选择 Passthrough 复选框,以启用 vNIC 的透传并允许直接分配虚拟功能。启用 passthrough 属性将禁用 QoS、网络过滤和端口镜像,因为它们不兼容。有关 passthrough 的更多信息,请参阅在 vNIC Profile 上启用 Passthrough
  9. 如果选择了 Passthrough,可以选择选择 Migratable 复选框,以禁用使用这个配置集的 vNIC 迁移。如果保留此复选框,请参阅虚拟机管理指南中的带有 SR-IOV-Enabled vNIC 的虚拟机的其他先决条件
  10. 使用 Port MirroringAllow all users to use this Profile 复选框来切换这些选项。
  11. 从自定义属性列表中选择自定义属性,它默认显示 Please select a key…​。使用 +- 按钮添加或删除自定义属性。
  12. 点击 OK

将这个配置集应用到用户和组,以规范其网络带宽。如果您编辑了 vNIC 配置集,则必须重启虚拟机或热拔,如果客户机操作系统支持 vNIC 热插和热拔,则热插拔 vNIC。

2.4.2.3. VM Interface Profile 窗口中的设置信息

表 2.19. VM Interface Profile 窗口

字段名称Description

Network

要将 vNIC 配置集应用到的可用网络下拉列表。

Name

vNIC 配置集的名称。这必须是一个唯一名称,其任意组合使用大写和小写字母、数字、连字符和下划线(1 到 50 个字符)。

Description

vNIC 配置集的描述。建议使用此字段,但不强制设置。

QoS

可用的网络服务质量策略的下拉列表,以应用到 vNIC 配置集。QoS 策略规定了 vNIC 的入站和出站网络流量。

网络过滤器

适用于 vNIC 配置集的可用网络过滤器的下拉列表。网络过滤器通过过滤可发送到虚拟机的数据包类型以及从虚拟机来改善网络安全性。默认过滤器是 vdsm-no-mac-spoofing,它是一个 no-mac-spoofingno-arp-mac-spoofing 的组合。有关 libvirt 提供的网络过滤器的更多信息,请参阅 Red Hat Enterprise Linux Virtualization 部署和管理指南预先存在的网络过滤器部分。

<No Network Filter > 用于虚拟机 VLAN 和绑定。在可信虚拟机上,选择不使用网络过滤器可提高性能。

注意

红帽不再支持使用 engine-config 工具将 EnableMACAntiSpoofingFilterRules 参数设置为 false 来禁用过滤器。使用 &lt ;No Network Filter&gt; 选项替代。

Passthrough

切换 passthrough 属性的复选框。直通允许 vNIC 直接连接到主机 NIC 的虚拟功能。如果 vNIC 配置集附加到虚拟机,则无法编辑 passthrough 属性。

如果启用了 passthrough,则 vNIC 配置集中禁用了 QoS、网络过滤器和端口镜像。

Migratable

一个复选框来切换是否使用这个配置集的 vNIC。在常规 vNIC 配置集中默认启用迁移;选择复选框且无法更改。选择了 Passthrough 复选框后 ,Migratable 变为可用状态,并在需要时可以取消选择以禁用 passthrough vNIC 的迁移。

故障切换

一个下拉菜单,用于选择充当故障切换设备的可用 vNIC 配置集。仅在选中 Passthrough Migratable 复选框时才可用。

端口镜像

切换端口镜像的复选框。端口镜像将逻辑网络上的第 3 层网络流量复制到虚拟机上的虚拟接口。默认没有选择它。详情请查看技术参考中的端口镜像

设备自定义属性

一个下拉菜单,用于选择应用到 vNIC 配置集的可用自定义属性。使用 +- 按钮分别添加和删除属性。

允许所有用户使用这个配置集

将配置集可用性切换为环境中的所有用户的复选框。默认会被选择。

2.4.2.4. 在 vNIC 配置文件中启用 Passthrough

注意

这是显示如何在 Red Hat Virtualization 上设置和配置 SR-IOV 的一系列主题中的一个。如需更多信息,请参阅设置和配置 SR-IOV

vNIC 配置集的 passthrough 属性可让 vNIC 直接连接到支持 SR-IOV 的 NIC 的虚拟功能(VF)。然后,vNIC 将绕过软件网络虚拟化,直接连接到 VF 进行直接设备分配。

如果 vNIC 配置集已附加到 vNIC,则无法启用 passthrough 属性,这个过程会创建一个新配置集来避免这种情况。如果 vNIC 配置集启用了 passthrough,则同一配置集无法启用 passthrough、QoS、网络过滤器和端口镜像。

有关 SR-IOV、直接设备分配以及在 Red Hat Virtualization 中实现这些 硬件注意事项的更多信息,请参阅实施 SR-IOV 的硬件注意事项

流程

  1. 单击 NetworkNetworks
  2. 点逻辑网络的名称。这会打开详情视图。
  3. 单击 vNIC Profiles 选项卡,以列出该逻辑网络的所有 vNIC 配置集。
  4. 单击 New
  5. 输入配置文件的名称描述
  6. 选择 Passthrough 复选框。
  7. (可选)选择 Migratable 复选框,以使用这个配置集禁用 vNIC 的迁移。如果保留此复选框,请参阅虚拟机管理指南中的带有 SR-IOV-Enabled vNIC 的虚拟机的其他先决条件
  8. 如有必要,从自定义属性列表中选择自定义属性,它默认会显示 Please select a key…​。使用 +- 按钮添加或删除自定义属性。
  9. 点击 OK

vNIC 配置集现在具有 passthrough 功能。要使用此配置集将虚拟机直接连接到 NIC 或 PCI VF,请将逻辑网络附加到 NIC,并在使用 passthrough vNIC 配置集的所需虚拟机上创建一个新的 PCI Passthrough vNIC。有关这些步骤的更多信息,请参阅虚拟机管理指南中的编辑主机网络接口和将逻辑网络分配到主机,以及添加一个新网络接口

2.4.2.5. 为使用故障转移的 SR-IOV 迁移启用 vNIC 配置集

故障转移允许选择在需要分离 VF 时作为虚拟机迁移期间的故障切换设备,从而保留虚拟机通信并最小化中断。

注意

故障转移只是一个技术预览功能。技术预览功能不被红帽产品服务级别协议(SLA)支持,且可能无法完成。红帽不建议在生产环境中使用它们。这些技术预览功能可以使用户提早试用新的功能,并有机会在开发阶段提供反馈意见。如需更多信息,请参阅红帽技术预览功能支持范围

前提条件

  • 选择配置集的 PassthroughMigratable 复选框。
  • 故障转移网络附加到主机。
  • 要使 vNIC 配置集充当故障切换可编辑,您必须首先删除所有故障切换引用。
  • 作为故障转移的 vNIC 配置集是没有选择为 Passthrough 的配置集,或者没有连接到外部网络。

流程

  1. 在管理门户中,进入 NetworkVNIC 配置集,选择 vNIC 配置集,点 Edit,然后从下拉列表中选择 Failover vNIC 配置集
  2. 单击 OK 以保存配置文件设置。
注意

附加两个 vNIC 配置集,在 libvirt 中引用同一故障切换 vNIC 配置集将会失败。

2.4.2.6. 删除 vNIC 配置集

删除 vNIC 配置集,将其从虚拟环境中删除。

流程

  1. 单击 NetworkNetworks
  2. 点逻辑网络的名称。这会打开详情视图。
  3. 单击 vNIC Profiles 选项卡,以显示可用的 vNIC 配置集。
  4. 选择一个或多个配置集并点 Remove
  5. 点击 OK

2.4.2.7. 为 vNIC 配置集分配安全组

注意

只有将 ovirt-provider-ovn 添加为外部网络提供程序时,此功能才可用。安全组不能通过 Red Hat Virtualization Manager 创建。您必须通过 ovirt-provider-ovn 上的 OpenStack Networking 创建安全组。如需更多信息,请参阅 Red Hat OpenStack Platform Users and Identity Management Guide 中的 Project Security Management

您可以将安全组分配给从 OpenStack Networking 实例导入的网络的 vNIC 配置集,以及使用 Open vSwitch 插件。安全组是严格强制规则的集合,允许您通过网络接口过滤入站和出站流量。以下流程概述了如何将安全组附加到 vNIC 配置集。

注意

安全组使用在 Open Virtual Network (OVN) External Network Provider 中注册的安全组 ID 标识。您可以使用 OpenStack Networking API 查找给定租户的安全组 ID,请参阅 OpenStack API 参考中的列出安全组

流程

  1. 单击 NetworkNetworks
  2. 点逻辑网络的名称。这会打开详情视图。
  3. vNIC Profiles 选项卡。
  4. New,或者选择现有的 vNIC 配置集并点 Edit
  5. 从自定义属性下拉列表中,选择 SecurityGroups。使自定义属性下拉列表应用默认安全设置,允许所有出站流量和相互连接,但拒绝来自默认安全组外的所有入站流量。请注意,稍后删除 SecurityGroups 属性不会影响应用的安全组。
  6. 在文本字段中,输入要附加到 vNIC 配置集的安全组 ID。
  7. 点击 OK

您已将安全组附加到 vNIC 配置集。根据针对该安全组定义的规则,将过滤该配置集附加到的逻辑网络的所有流量。

2.4.2.8. vNIC 配置集的用户权限

配置用户权限以将用户分配到特定的 vNIC 配置集。将 VnicProfileUser 角色分配给用户,使其能够使用配置集。通过删除该配置集的权限来限制特定配置集的用户。

vNIC 配置集的用户权限

  1. 单击 NetworkvNIC Profile
  2. 点 vNIC 配置集的名称。这会打开详情视图。
  3. Permissions 选项卡显示配置集的当前用户权限。
  4. AddRemove 更改 vNIC 配置集的用户权限。
  5. Add Permissions to User 窗口中,点 My Groups 以显示您的用户组。您可以使用这个选项为组中的其他用户授予权限。

您已为 vNIC 配置集配置了用户权限。

2.4.3. 外部提供商网络

2.4.3.1. 从外部提供程序导入网络

要使用 Open Virtual Network (OVN)的网络,请通过 Manager 注册该提供程序。如需更多信息,请参阅添加外部网络提供程序。然后,按照以下流程将该提供程序提供的网络导入到 Manager,以便虚拟机可以使用网络。

流程

  1. 单击 NetworkNetworks
  2. Import
  3. Network Provider 下拉列表中选择一个外部供应商。该提供程序提供的网络会自动发现并列在 Provider Networks 列表中。
  4. 使用复选框,选择要在 Provider Networks 列表中导入的网络,然后单击向下箭头,将这些网络移到 Networks to Import 列表中。
  5. 您可以自定义您要导入的网络的名称。要自定义名称,请单击 Name 列中的网络名称,并更改文本。
  6. Data Center 下拉列表中,选择将导入网络的数据中心。
  7. 可选:清除 Allow All 复选框,以防止该网络可供所有用户使用。
  8. Import

所选网络导入到目标数据中心,并可附加到虚拟机。如需更多信息,请参阅虚拟机管理指南中的添加新网络接口

2.4.3.2. 使用外部提供程序网络的限制

以下限制适用于在 Red Hat Virtualization 环境中使用从外部提供程序导入的逻辑网络。

  • 外部提供者提供的逻辑网络必须用作虚拟机网络,不能用作显示网络。
  • 同一逻辑网络可以导入一次,但只能导入不同的数据中心。
  • 您无法编辑 Manager 中外部提供者提供的逻辑网络。要编辑外部提供者提供的逻辑网络的详细信息,您必须直接从提供该逻辑网络的外部供应商编辑逻辑网络。
  • 端口镜像不适用于连接到外部提供者提供的逻辑网络的虚拟网络接口卡。
  • 如果虚拟机使用外部提供者提供的逻辑网络,那么当逻辑网络仍在被虚拟机使用时,无法从 Manager 中删除该提供者。
  • 外部提供者提供的网络不是必需网络。因此,在主机选择期间,调度已导入此类逻辑网络的集群不会将这些逻辑网络考虑在内。此外,用户负责确保逻辑网络在已导入此类逻辑网络的集群中主机上可用。

2.4.3.3. 在外部提供程序逻辑网络上配置子网

如果该逻辑网络上定义了一个或多个子网,则外部提供者提供的逻辑网络只能为虚拟机分配 IP 地址。如果没有定义子网,则不会为虚拟机分配 IP 地址。如果有一个子网,虚拟机将从该子网分配一个 IP 地址,如果存在多个子网,则虚拟机将从任何可用子网中分配一个 IP 地址。托管逻辑网络的外部网络提供商提供的 DHCP 服务负责分配这些 IP 地址。

虽然 Red Hat Virtualization Manager 会自动发现导入的逻辑网络上的预定义子网,但您也可以从 Manager 内向逻辑网络添加或删除子网。

如果您将 Open Virtual Network (OVN) (ovirt-provider-ovn)添加为外部网络提供程序,则路由器可以互相连接多个子网。要管理这些路由器,您可以使用 OpenStack 网络 API v2.0。但请注意,ovirt-provider-ovn 有一个限制: Source NAT (OpenStack API 中的enable_snat)没有实现。

2.4.3.4. 将子网添加到外部提供程序逻辑网络

在由外部提供者提供的逻辑网络上创建子网。

流程

  1. 单击 NetworkNetworks
  2. 点逻辑网络的名称。这会打开详情视图。
  3. 单击 子网选项卡
  4. 单击 New
  5. 输入新子网的 NameCIDR
  6. IP Version 下拉列表中,选择 IPv4IPv6
  7. 点击 OK
注意

对于 IPv6,Red Hat Virtualization 仅支持静态寻址。

2.4.3.5. 从外部提供程序逻辑网络中删除子网

从外部提供者提供的逻辑网络中删除子网。

流程

  1. 单击 NetworkNetworks
  2. 点逻辑网络的名称。这会打开详情视图。
  3. 单击 子网选项卡
  4. 选择子网,再单击删除
  5. 点击 OK

2.4.3.6. 为逻辑网络和端口分配安全组

注意

只有将 Open Virtual Network (OVN)添加为外部网络提供程序(作为 ovirt-provider-ovn)时,此功能才可用。安全组不能通过 Red Hat Virtualization Manager 创建。您必须通过 OpenStack Networking API v2.0 或 Ansible 创建安全组。

安全组是严格强制规则的集合,允许您通过网络过滤入站和出站流量。您还可以使用安全组在端口级别上过滤流量。

在 Red Hat Virtualization 4.2.7 中,安全组默认为禁用。

流程

  1. 单击 ComputeClusters
  2. 点集群名称。这会打开详情视图。
  3. 单击 逻辑网络 选项卡。
  4. Add Network 并定义属性,确保从 External Providers 下拉列表中选择 ovirt-provider-ovn。如需更多信息 ,请参阅在数据中心或集群中创建新的逻辑网络
  5. Security Group 下拉列表中,选择 Enabled。详情请查看 逻辑网络常规设置说明
  6. 点击 OK
  7. 使用 OpenStack Networking API v2.0Ansible 创建安全组。
  8. 使用 OpenStack Networking API v2.0Ansible 创建安全组规则。
  9. 使用 OpenStack Networking API v2.0Ansible 定义的安全组更新端口。
  10. 可选。定义在端口级别是否启用了安全功能。目前,这只能使用 OpenStack 网络 API。如果没有设置 port_security_enabled 属性,它将默认为它所属的网络指定的值。

2.4.4. 主机和网络

2.4.4.1. Network Manager Stateful Configuration (nmstate)

Red Hat Virtualization 版本 4.4 使用 Network Manager Stateful Configuration (nmstate) 为基于 RHEL 8 的 RHV 主机配置网络。RHV 版本 4.3 及更早版本使用接口配置(ifcfg)网络脚本来管理主机网络。

要使用 nmstate,请升级 Red Hat Virtualization Manager 和主机,如 RHV Upgrade Guide 所述。

作为管理员,您不需要安装或配置 nmstate。它默认启用,并在后台运行。

重要

始终使用 RHV Manager 修改集群中主机的网络配置。否则,您可能创建不受支持的配置。

对 nmstate 的更改几乎是透明的。它仅通过以下方法更改配置主机网络:

  • 将主机添加到集群中后,请始终使用 RHV Manager 修改主机网络。
  • 在不使用 Manager 的情况下修改主机网络可以创建不受支持的配置。
  • 要修复不支持的配置,您可以使用 Manager 来同步主机网络,将其替换为支持的一个配置。详情请参阅 同步主机网络。
  • 修改 Manager 之外的主机网络的唯一情形是在主机上配置静态路由。如需了解更多详细信息,请参阅在主机中添加静态路由

对 nmstate 的更改改进了 RHV Manager 在将主机添加到管理器前如何应用您在 Cockpit 和 Anaconda 中进行的配置更改。在这个版本中,如果 NM 管理接口,则 BZ#1680970 静态 IPv6 地址会在主机上丢失

重要

如果您使用 dnfyum 手动更新 nmstate 软件包,请在主机上重启 vdsmdsupervdsmd。例如:

# dnf update nmstate
# systemctl restart vdsmd supervdsmd
重要

如果您使用 dnfyum 手动更新 Network Manager 软件包,请在主机上重启 NetworkManager。例如:

# dnf update NetworkManager
# systemctl restart NetworkManager

2.4.4.2. 刷新主机功能

当将网络接口卡添加到主机时,必须刷新主机的功能来显示 Manager 中的网络接口卡。

流程

  1. 单击 ComputeHosts 并选择一个主机。
  2. 单击 ManagementRefresh Capabilities

所选主机的 Network Interfaces 选项卡中的网络接口卡列表会被更新。现在,所有新的网络接口卡都可以在 Manager 中使用。

2.4.4.3. 编辑主机网络接口并将逻辑网络分配给主机

您可以更改物理主机网络接口的设置,将管理网络从一个物理主机网络接口移到另一个,并将逻辑网络分配到物理主机网络接口。也支持 bridge 和 ethtool 自定义属性。

警告

更改 Red Hat Virtualization 中主机的 IP 地址的唯一方法是移除该主机,然后再次添加它。

要更改主机的 VLAN 设置,请参阅 编辑 VLAN Settings

重要

您无法将外部提供者提供的逻辑网络分配给物理主机网络接口;此类网络会动态分配到主机,因为虚拟机需要它们。

注意

如果切换已配置为提供链接层发现协议(LLDP)信息,您可以将光标悬停于物理网络接口上,以查看交换机端口的当前配置。这有助于防止配置不正确。在分配逻辑网络前检查以下信息:

  • Port Description (TLV type 4)System Name (TLV type 5) 有助于检测主机的接口是否已修补至哪些端口和切换。
  • 端口 VLAN ID 显示在未标记以太网帧的交换机端口上配置的原生 VLAN ID。交换机端口上配置的所有 VLAN 都显示为 VLAN NameVLAN ID 组合。

流程

  1. 单击 ComputeHosts
  2. 单击主机的名称。这会打开详情视图。
  3. 点击 Network Interfaces 选项卡。
  4. 单击 Setup Host Networks
  5. (可选)将光标悬停在主机网络接口上,以查看交换机提供的配置信息。
  6. 通过选择逻辑网络并将其拖到物理主机网络接口旁边的已分配 逻辑网络 区域,将逻辑网络附加到物理主机网络接口,从而将其附加到物理主机网络接口。

    注意

    如果 NIC 连接到多个逻辑网络,则只有其中一个网络可以是非 VLAN。所有其他逻辑网络都必须是唯一的 VLAN。

  7. 配置逻辑网络:

    1. 将光标悬停在分配的逻辑网络上,然后点铅笔图标。此时将打开 Edit Management Network 窗口。
    2. IPv4 标签页中,选择一个 Boot ProtocolNone, DHCP, 或 Static)。如果您选择了 Static,请输入 IPNetmask/ Routing PrefixGateway

      注意

      对于 IPv6,只支持静态 IPv6 地址。要配置逻辑网络,请选择 IPv6 选项卡并添加以下条目:

      • Boot Protocol 设置为 Static
      • 对于 ForRouting Prefix ,使用正斜杠和十进制输入前缀长度。例如: /48
      • IP :主机网络接口的完整 IPv6 地址。例如: 2001:db8::1:0:0:6
      • 网关 :源路由器的 IPv6 地址。例如: 2001:db8::1:0:0:1
      注意

      如果更改主机的管理网络 IP 地址,则必须 重新安装主机,以便能配置新的 IP 地址。

      每个逻辑网络都可以有一个独立的网关,由管理网络网关定义。这样可保证使用逻辑网络上的流量将使用逻辑网络的网关进行转发,而不是管理网络使用的默认网关。

      重要

      群集中的所有主机 都设置为将相同的 IP 堆栈用于其管理网络;仅 IPv4 或 IPv6。不支持双堆栈。

    3. 使用 QoS 选项卡覆盖默认主机网络服务质量。选择 Override QoS,然后在以下字段中输入所需的值:

      • 加权共享 :指定应分配特定网络的逻辑链接的容量量,相对于附加到同一逻辑链接的其他网络。确切共享取决于该链接上所有网络共享的总和。默认情况下,这是 1 到 100 范围内的数字。
      • 速率限制 [Mbps ]:网络要使用的最大带宽。
      • 提交率 [Mbps ]:网络所需的最小带宽。请求的提交率不能保证,并根据网络基础架构和同一逻辑链路上其他网络请求的提交率不同。
    4. 要配置网络桥接,请点击 Custom Properties 选项卡,然后从下拉列表中选择 bridge_opts。输入有效的键和值,语法如下: key=value。使用空格字符分隔多个条目。以下键有效,且值为示例提供的值。有关这些参数的更多信息,请参阅 bridge_opts 参数说明

      forward_delay=1500
      group_addr=1:80:c2:0:0:0
      group_fwd_mask=0x0
      hash_max=512
      hello_time=200
      max_age=2000
      multicast_last_member_count=2
      multicast_last_member_interval=100
      multicast_membership_interval=26000
      multicast_querier=0
      multicast_querier_interval=25500
      multicast_query_interval=13000
      multicast_query_response_interval=1000
      multicast_query_use_ifaddr=0
      multicast_router=1
      multicast_snooping=1
      multicast_startup_query_count=2
      multicast_startup_query_interval=3125
    5. 要配置以太网属性,请单击 Custom Properties 选项卡,然后从下拉列表中选择 ethtool_opts。使用 ethtool 的命令行参数格式输入有效值。例如:

      --coalesce em1 rx-usecs 14 sample-interval 3 --offload em2 rx on lro on tso off --change em1 speed 1000 duplex half

      此字段可以接受通配符。例如,要将相同的选项应用到所有网络的接口,请使用:

      --coalesce * rx-usecs 14 sample-interval 3

      ethtool_opts 选项默认不可用,您需要使用 engine 配置工具来添加它。如需更多信息 ,请参阅如何设置 Manager 以使用 Ethtool。有关 ethtool 属性的更多信息,请在命令行中输入 man ethtool 来查看 man page。

    6. 要通过以太网配置光纤通道 (FCoE),请点 Custom Properties 选项卡,从下拉菜单中选择 fcoe。输入有效的键和值,语法如下: key=value。至少 enable=yes。您还可以添加 dcb=[yes|no] 和 'auto_vlan=[yes|no]。使用空格字符分隔多个条目。fcoe 选项默认不可用,您需要使用 engine 配置工具来添加它。如需更多信息 ,请参阅如何设置 Manager 以使用 FCoE

      注意

      建议使用单独的专用逻辑网络与 FCoE 一起使用。

    7. 要将主机从管理网络 (ovirtmgmt) 使用的默认网络改为非管理网络,请配置非管理网络的默认路由。如需更多信息 ,请参阅配置 默认路由。
    8. 如果您的逻辑网络定义没有与主机上的网络配置同步,请选择 Sync network 复选框。有关未同步主机以及如何同步它们的更多信息,请参阅 同步主机网络
  8. 选择 Verify connectivity between Host and Engine 复选框,以选中网络连接。此操作仅在主机处于维护模式时才有效。
  9. 点击 OK
注意

如果没有显示主机的所有网络接口卡,请单击 ManagementRefresh Capabilities 以更新可用于该主机的网络接口卡列表。

故障排除

在某些情况下,使用 Setup Host Networks 窗口或 setupNetwork 命令对主机网络配置进行多个并发更改会失败,并显示 Operation failed: [Cannot setup Networks]。主机上进行另一个设置网络或主机刷新过程。请稍后尝试。] 错误。此错误表示主机上尚未配置一些更改。这是因为为了保持配置状态的完整性,一次只能处理单个设置网络命令。其他并发配置命令排队,使其默认超时为 20 秒。为了帮助防止出现上述故障,请使用 engine-config 命令将 SetupNetworksWaitTimeoutSeconds 的超时时间增加到 20 秒。例如:

# engine-config --set SetupNetworksWaitTimeoutSeconds=40

2.4.4.4. 同步主机网络

当主机上的接口的定义 与 Manager 存储的定义不同,管理器将把网络接口定义为非同步

内存不足网络出现在主机网络接口选项卡中 out of sync 的 Out-of-sync 图标,并在 Setup Host Networks 窗口中使用此图标 out of sync setup

当主机的网络不同步时,您只能在 Setup Host Networks 窗口中对未同步的网络执行的活动将从网络接口中分离逻辑网络或同步网络。

了解主机如何变为同步

如果出现以下情况,主机将变得不同步:

  • 您在主机上进行配置更改,而不是使用 Edit Logical Networks 窗口,例如:

    • 更改物理主机上的 VLAN 标识符。
    • 更改 物理主机上的自定义 MTU
  • 您可以将主机移动到具有相同网络名称的不同数据中心,但使用不同的值/参数。
  • 您可以通过从主机中手动删除桥接来更改网络 VM Network 属性。
重要

如果更改网络的 MTU 设置,您必须将此更改传播到网络中的正在运行的虚拟机:Hot unplug 和 replug each virtual machine 的 vNIC(应该应用 MTU 设置),或重启虚拟机。否则,当虚拟机迁移到另一台主机时,这些接口会失败。如需更多信息,请参阅 网络 MTU 更改后,一些虚拟机和网桥有旧的 MTU,查看数据包丢弃BZ#1766414

防止主机无法同步

遵循这些最佳实践将阻止您的主机变得未同步:

  1. 使用管理门户进行更改,而不是在主机上进行本地更改。
  2. 根据编辑 VLAN 设置中的说明 编辑 VLAN 设置

同步主机

同步主机网络接口定义涉及使用 Manager 中的定义并将其应用到主机。如果这些不是您需要的定义,则在同步主机从管理门户中更新其定义。您可以在三个级别同步主机的网络:

  • 每个逻辑网络
  • 每个主机
  • per cluster

在逻辑网络级别同步主机网络

  1. 单击 ComputeHosts
  2. 单击主机的名称。这会打开详情视图。
  3. 点击 Network Interfaces 选项卡。
  4. 单击 Setup Host Networks
  5. 将光标悬停在未同步网络上,然后点铅笔图标。此时将打开 Edit Network 窗口。
  6. 选中 Sync network 复选框。
  7. 单击确定以 保存网络更改。
  8. 单击 OK,以关闭 Setup Host Networks 窗口。

在主机级别上同步主机的网络

  • 单击主机的 Network Interfaces 选项卡中的 Sync All Networks 按钮,以同步所有主机的未同步网络接口。

在集群级别同步主机的网络

  • 点集群逻辑网络选项卡中的 Sync All Networks 按钮,以同步整个集群的所有未同步逻辑网络定义。
注意

您还可以通过 REST API 同步主机的网络。请参阅 REST API 指南中的 syncallnetworks

2.4.4.5. 编辑主机的 VLAN 设置

要更改主机的 VLAN 设置,必须从 Manager 中删除主机、重新配置并重新添加到管理器。

要保持网络同步,请执行以下操作:

  1. 将主机置于维护模式。
  2. 从主机中手动删除管理网络。这将使主机能够通过新的 VLAN 访问。
  3. 将主机添加到集群。在主机间可以安全地迁移没有直接连接到管理网络的虚拟机。

当管理网络的 VLAN ID 被改变时,会出现以下警告信息:

Changing certain properties (e.g. VLAN, MTU) of the management network could lead to loss of connectivity to hosts in the data center, if its underlying network infrastructure isn't configured to accommodate the changes. Are you sure you want to proceed?

继续会导致数据中心中的所有主机丢失与 Manager 的连接,并导致主机迁移到新的管理网络失败。管理网络将报告为 "out-of-sync"。

重要

如果更改管理网络的 VLAN ID,则必须 重新安装主机 以应用新的 VLAN ID。

2.4.4.6. 使用逻辑网络在单一网络接口中添加多个 VLAN

多个 VLAN 可以添加到单一网络接口中,以分隔一个主机上的流量。

重要

您必须已创建了多个逻辑网络,它们都在 New Logical NetworkEdit Logical Network 窗口中选中 Enable VLAN tagging 复选框。

流程

  1. 单击 ComputeHosts
  2. 单击主机的名称。这会打开详情视图。
  3. 点击 Network Interfaces 选项卡。
  4. 单击 Setup Host Networks
  5. 将 VLAN 标记的逻辑网络拖放到物理网络接口旁边的已分配 逻辑网络 区域。物理网络接口可能会因为 VLAN 标记而分配多个逻辑网络。
  6. 编辑逻辑网络:

    1. 将光标悬停在分配的逻辑网络上,然后点铅笔图标。
    2. 如果您的逻辑网络定义没有与主机上的网络配置同步,请选择 Sync network 复选框。
    3. 选择 引导协议

      • None
      • DHCP
      • Static
    4. 提供 IP子网掩码
    5. 点击 OK
  7. 选择 Verify connectivity between Host and Engine 复选框来运行网络检查。这只有在主机处于维护模式时才能正常工作。
  8. 点击 OK

通过编辑集群中的每个主机上的 NIC,将逻辑网络添加到集群中的每个主机。完成后,网络将变为可操作。

此过程可以重复多次,在每次主机上选择并编辑相同的网络接口,以将具有不同 VLAN 标签的逻辑网络添加到单个网络接口。

2.4.4.6.1. 复制主机网络

要节省时间,您可以将源主机的网络配置复制到同一集群中的目标主机。

复制网络配置包括:

  • 附加到主机的逻辑网络,但 ovirtmgmt 管理网络除外
  • 附加到接口的绑定

限制

  • 不要复制包含静态 IP 地址的网络配置。这样做会将目标主机中的引导协议设置为 none
  • 将配置复制到与源主机相同的接口名称,但不同的物理网络连接会产生错误的配置。
  • 目标主机必须与源主机相等或大于多个接口。否则,操作会失败。
  • 不支持复制 QoSDNScustom_properties
  • 网络接口标签不会被复制。
警告

复制主机网络将替换目标主机上的 ALL 网络设置,除了将其附加到 ovirtmgmt 管理网络外。

前提条件

  • 目标主机上的 NIC 数量必须相等或大于源主机上的 NIC 数量。否则,操作会失败。
  • 主机必须位于同一集群中。

流程

  1. 在管理门户中,点 ComputeHosts
  2. 选择您要复制的配置的源主机。
  3. 单击 Copy Host Networks。此时将打开 Copy Host Networks 窗口。
  4. 使用 Target Host 选择应接收配置的主机。列表仅显示同一集群中的主机。
  5. 单击 Copy Host Networks
  6. 验证目标主机的网络设置

提示

  • 选择多个主机将禁用 Copy Host Networks 按钮和上下文菜单。
  • 您可以右键单击主机并从上下文菜单中选择 Copy Host Networks 按钮,而不是使用 Copy Host Networks 按钮。
  • " 复制主机网络 "按钮也可在任何主机的详细信息视图中使用。

2.4.4.7. 为主机网络分配额外的 IPv4 地址

在最初设置时,仅使用一个 IP 地址创建主机网络,如 ovirtmgmt 管理网络。这意味着,如果 NIC 的配置文件配置了多个 IP 地址,则只有第一个列出的 IP 地址分配给主机网络。如果连接到存储或者使用相同的 NIC 单独专用子网上的服务器,则可能需要额外的 IP 地址。

vdsm-hook-extra-ipv4-addrs hook 允许您为主机网络配置额外的 IPv4 地址。有关 hook 的更多信息,请参阅 VDSM 和 Hook

在以下步骤中,必须在要为其配置额外 IP 地址的每个主机上执行特定于主机的任务。

流程

  1. 在您要为其配置额外 IPv4 地址的主机上,安装 VDSM hook 软件包。软件包需要在 Red Hat Enterprise Linux 主机和 Red Hat Virtualization 主机上手动安装。

    # dnf install vdsm-hook-extra-ipv4-addrs
  2. 在 Manager 中运行以下命令添加密钥:

    # engine-config -s 'UserDefinedNetworkCustomProperties=ipv4_addrs=.*'
  3. 重启 ovirt-engine 服务:

    # systemctl restart ovirt-engine.service
  4. 在管理门户中,点 ComputeHosts
  5. 单击主机的名称。这会打开详情视图。
  6. 单击 Network Interfaces 选项卡,再单击 Setup Host Networks
  7. 将光标悬停在分配的逻辑网络上,然后点铅笔图标,以编辑主机网络接口。
  8. Custom Properties 下拉列表中选择 ipv4_addr 并添加额外 IP 地址和前缀(如 5.5.5.5/24)。必须用逗号分开多个 IP 地址。
  9. 单击 OK 以关闭 Edit Network 窗口。
  10. 单击 OK,以关闭 Setup Host Networks 窗口。

额外的 IP 地址不会在 Manager 中显示,但您可以在主机上运行 ip addr show 命令,以确认它们已被添加。

2.4.4.8. 在主机网络接口中添加网络标签

通过使用网络标签,您可以大大简化与分配逻辑网络关联的管理工作负载,以托管网络接口。在角色网络中设置标签(例如,迁移网络或显示网络)会导致在所有主机上大规模地部署该网络。这种大规模网络通过利用 DHCP 来实现。这种批量部署的方法是通过在静态地址中键入的方法来选择,因为很多静态 IP 地址中键入任务无法可扩展。

在主机网络接口中添加标签的方法有两种:

  • 在管理门户中手动进行
  • 自动通过 LLDP Labeler 服务

流程

  1. 单击 ComputeHosts
  2. 单击主机的名称。这会打开详情视图。
  3. 点击 Network Interfaces 选项卡。
  4. 单击 Setup Host Networks
  5. Labels,右键点击 [New Label]。选择要标记的物理网络接口。
  6. Label 文本字段中输入网络标签的名称。
  7. 点击 OK

流程

您可以使用 LLDP Labeler 服务,自动化在集群列表中分配标签到主机网络接口的过程。

2.4.4.8.1. 配置 LLDP Labeler

默认情况下,LLDP Labeler 作为每小时服务运行。如果您进行硬件更改(如 NIC、交换机或电缆)或更改交换机配置,这个选项很有用。

前提条件

  • 接口必须连接到 Juniper 交换机。
  • 必须将 Juniper 开关配置为使用 LLDP 来提供 端口 VLAN

流程

  1. /etc/ovirt-lldp-labeler/conf.d/ovirt-lldp-credentials.conf 中配置用户名密码

    • username - Manager 管理员的用户名。默认值为 admin@internal
    • Password - Manager 管理员密码。默认值为 123456
  2. 通过更新 etc/ovirt-lldp-labeler/conf.d/ovirt-lldp-credentials.conf 中的下列值来配置 LLDP Labeler 服务:

    • Clusters - 应该运行该服务的以逗号分隔的集群列表。支持通配符。例如,Cluster* 定义在所有以词 Cluster 开始的集群中运行 LLDP Labeler。要在数据中心的所有集群中运行该服务,请输入 *。默认值为 Def*
    • api_url - Manager API 的完整 URL。默认值为 https://Manager_FQDN/ovirt-engine/api
    • ca_file - 自定义 CA 证书文件的路径。如果不使用自定义证书,请保留这个值为空。默认值为空。
    • auto_bonding - 启用 LLDP Labeler 的绑定功能。默认值是 true
    • auto_labeling - 启用 LLDP Labeler's 标签功能。默认值是 true
  3. 另外,您可以通过更改 etc/ovirt-lldp-labeler/conf.d/ovirt-lldp-labeler.timer 中的 OnUnitActiveSec 的值,将服务配置为以不同的间隔运行。默认值为 1h
  4. 输入以下命令将服务配置为默认启动和引导时:

    # systemctl enable --now ovirt-lldp-labeler

    要手动调用服务,请输入以下命令:

    # /usr/bin/python /usr/share/ovirt-lldp-labeler/ovirt_lldp_labeler_cli.py

您已在主机网络接口中添加网络标签。新创建的具有相同标签的逻辑网络将自动分配给具有该标签的所有主机网络接口。从逻辑网络中删除标签会自动从所有带有该标签的主机网络接口中删除该逻辑网络。

2.4.4.9. 更改主机的 FQDN

使用以下步骤更改主机的完全限定域名。

流程

  1. 将主机置于维护模式,以便虚拟机实时迁移到其他主机。如需更多信息,请参阅 将主机移动到维护模式。或者,手动关闭或将所有虚拟机迁移到另一主机。如需更多信息,请参阅虚拟机管理指南中的手动迁移虚拟机
  2. 单击 Remove,再单击 OK 以将主机从管理门户中删除。
  3. 使用 hostnamectl 工具更新主机名。如需了解更多选项,请参阅 Red Hat Enterprise Linux 7 网络指南中的 配置主机名

    # hostnamectl set-hostname NEW_FQDN
  4. 重启主机。
  5. 使用 Manager 重新注册主机。如需更多信息 ,请参阅在 Manager 中添加标准主机
2.4.4.9.1. IPv6 网络支持

Red Hat Virtualization 在大多数环境中支持静态 IPv6 网络。

注意

Red Hat Virtualization 要求在运行 Manager(也称为" Manager 机器")的计算机或虚拟机上保持启用 IPv6。不要在 Manager 机器上禁用 IPv6,即使您的系统没有使用它。

IPv6 的限制

  • 仅支持静态 IPv6 地址。不支持使用 DHCP无状态地址自动配置的动态 IPv6 地址。
  • 不支持 IPv4 IPv6 的双栈寻址。
  • OVN 网络只能与 IPv4 IPv6 一起使用。
  • 不支持将集群从 IPv4 切换到 IPv6。
  • 每个主机只能为 IPv6 设置单个网关。
  • 如果两个网络共享一个网关(在同一子网中),您可以将默认路由角色从管理网络(ovirtmgmt)移到另一个逻辑网络。主机和管理器应该具有相同的 IPv6 网关。如果主机和管理器不在同一子网中,则管理器将断开与主机的连接,因为删除了 IPv6 网关。
  • 不支持使用带有 IPv6addressed gluster 服务器的 glusterfs 存储域。
2.4.4.9.2. 设置和配置 SR-IOV

本主题总结了设置和配置 SR-IOV 的步骤,以及详细论述每个步骤的主题。

流程

要设置和配置 SR-IOV,请完成以下任务。

备注

  • 'passthrough' vNIC 的数量取决于主机上可用的虚拟功能(VF)的数量。例如,要运行具有三个 SR-IOV 卡(vNIC)的虚拟机,主机必须启用三个或更多 VF。
  • 支持热插拔和拔下。
  • 支持实时迁移。
  • 要迁移虚拟机,目标主机还必须有足够的可用 VF 来接收虚拟机。在迁移过程中,虚拟机在源主机上释放了很多 VF,并在目标主机上占用相同的 VF 数量。
  • 在主机上,您将看到一个设备、链接或是否像任何其他接口一样。当设备附加到虚拟机时,该设备会消失,并在它被释放后重新显示。
  • 避免将主机设备直接附加到虚拟机以获取 SR-IOV 功能。
  • 要将 VF 用作多个 VLAN 的中继端口并配置客户机内的 VLAN,请参阅无法在虚拟机中的 SR-IOV VF 接口上配置 VLAN

以下是接口的 libvirt XML 示例:

  ----
  <interface type='hostdev'>
     <mac address='00:1a:yy:xx:vv:xx'/>
     <driver name='vfio'/>
     <source>
       <address type='pci' domain='0x0000' bus='0x05' slot='0x10' function='0x0'/>
     </source>
     <alias name='ua-18400536-5688-4477-8471-be720e9efc68'/>
     <address type='pci' domain='0x0000' bus='0x00' slot='0x08' function='0x0'/>
   </interface>
   ----

故障排除

以下示例演示了如何获取有关附加到接口的 VF 的诊断信息。

# ip -s link show dev enp5s0f0

1: enp5s0f0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9000 qdisc mq state UP mode DEFAULT qlen 1000
    link/ether 86:e2:ba:c2:50:f0 brd ff:ff:ff:ff:ff:ff
    RX: bytes  packets  errors  dropped overrun mcast
    30931671   218401   0       0       0       19165434
    TX: bytes  packets  errors  dropped carrier collsns
    997136     13661    0       0       0       0
    vf 0 MAC 02:00:00:00:00:01, spoof checking on, link-state auto, trust off, query_rss off
    vf 1 MAC 00:1a:4b:16:01:5e, spoof checking on, link-state auto, trust off, query_rss off
    vf 2 MAC 02:00:00:00:00:01, spoof checking on, link-state auto, trust off, query_rss off
2.4.4.9.2.1. 其它资源

2.4.5. 网络绑定

2.4.5.1. 绑定方法

网络绑定将多个 NIC 组合到一个绑定设备中,具有以下优点:

  • 绑定 NIC 的传输速度大于单个 NIC 的传输速度。
  • 网络绑定提供容错功能,因为绑定设备不会失败,除非其所有 NIC 都失败。

使用相同 make 和 模型的 NIC 可确保它们支持相同的绑定选项和模式。

重要

Red Hat Virtualization 的默认绑定模式 (Mode 4)动态链路聚合 需要支持 802.3ad 的交换机。

绑定的逻辑网络必须兼容。绑定只支持 1 个非 VLAN 逻辑网络。其余的逻辑网络必须具有唯一的 VLAN ID。

必须为交换机端口启用绑定。有关具体说明,请参考您的厂商提供的手册。

您可以使用以下方法之一创建网络绑定设备:

如果您的环境使用 iSCSI 存储并且您要实现冗余性,请按照 配置 iSCSI 多路径 的说明进行操作。

2.4.5.2. 在管理门户中创建绑定设备

您可以在管理门户的特定主机上创建绑定设备。绑定设备可以同时执行 VLAN 标记和未标记的流量。

流程

  1. 单击 ComputeHosts
  2. 单击主机的名称。这会打开详情视图。
  3. Network Interfaces 选项卡,以列出附加到主机的物理网络接口。
  4. 单击 Setup Host Networks
  5. 检查交换机配置。如果切换已配置为提供 Link Layer Discovery Protocol (LLDP)信息,请将光标悬停于物理 NIC 上,以查看交换机端口的聚合配置。
  6. 将 NIC 拖放到另一个 NIC 或一个绑定中。

    注意

    两个 NIC 形成新绑定。NIC 和一个绑定将 NIC 添加到现有绑定中。

    如果逻辑网络不兼容,则绑定操作会被阻断。

  7. 从下拉菜单中选择 Bond NameBonding Mode。有关详细信息,请参阅 绑定模式

    如果选择 Custom bonding 模式,您可以在文本字段中输入绑定选项,如下例所示:

    • 如果您的环境没有通过 ethtool 报告链接状态,则可以通过输入 mode=1 arp_interval=1 arp_ip_target=192.168.0.2 来设置 ARP 监控。
    • 您可以通过输入 mode=1 primary=eth0,将具有更高吞吐量的 NIC 指定为主接口。

      有关绑定选项及其描述的完整列表,请参阅 Kernel.org 上的 Linux 以太网绑定驱动程序 HOWTO

  8. 点击 OK
  9. 将逻辑网络附加到新绑定并进行配置。具体步骤请参阅编辑主机网络接口和将逻辑网络分配到主机

    注意

    您不能直接将逻辑网络附加到绑定中的独立 NIC。

  10. 另外,如果主机处于维护模式,您可以选择 Verify connectivity between Host and Engine
  11. 点击 OK

2.4.5.3. 使用 LLDP Labeler 服务创建绑定设备

LLDP Labeler 服务可让您为一个或多个集群或整个数据中心中的所有主机自动使用未绑定 NIC 创建绑定设备。绑定模式为 (Mode 4) Dynamic Link Aggregation (802.3ad)

带有 不兼容逻辑网络的 NIC 无法绑定。

2.4.5.3.1. 配置 LLDP Labeler

默认情况下,LLDP Labeler 作为每小时服务运行。如果您进行硬件更改(如 NIC、交换机或电缆)或更改交换机配置,这个选项很有用。

前提条件

  • 接口必须连接到 Juniper 交换机。
  • 必须使用 LLDP 为链路聚合控制协议(LACP)配置 Juniper 交换机。

流程

  1. /etc/ovirt-lldp-labeler/conf.d/ovirt-lldp-credentials.conf 中配置用户名密码

    • username - Manager 管理员的用户名。默认值为 admin@internal
    • Password - Manager 管理员密码。默认值为 123456
  2. 通过更新 etc/ovirt-lldp-labeler/conf.d/ovirt-lldp-credentials.conf 中的下列值来配置 LLDP Labeler 服务:

    • Clusters - 应该运行该服务的以逗号分隔的集群列表。支持通配符。例如,Cluster* 定义在所有以词 Cluster 开始的集群中运行 LLDP Labeler。要在数据中心的所有集群中运行该服务,请输入 *。默认值为 Def*
    • api_url - Manager API 的完整 URL。默认值为 https://Manager_FQDN/ovirt-engine/api
    • ca_file - 自定义 CA 证书文件的路径。如果不使用自定义证书,请保留这个值为空。默认值为空。
    • auto_bonding - 启用 LLDP Labeler 的绑定功能。默认值是 true
    • auto_labeling - 启用 LLDP Labeler's 标签功能。默认值是 true
  3. 另外,您可以通过更改 etc/ovirt-lldp-labeler/conf.d/ovirt-lldp-labeler.timer 中的 OnUnitActiveSec 的值,将服务配置为以不同的间隔运行。默认值为 1h
  4. 输入以下命令将服务配置为默认启动和引导时:

    # systemctl enable --now ovirt-lldp-labeler

    要手动调用服务,请输入以下命令:

    # /usr/bin/python /usr/share/ovirt-lldp-labeler/ovirt_lldp_labeler_cli.py
  1. 将逻辑网络附加到新绑定并进行配置。具体步骤请参阅编辑主机网络接口和将逻辑网络分配到主机

    注意

    您不能直接将逻辑网络附加到绑定中的独立 NIC。

2.4.5.4. 绑定模式

数据包分布算法由绑定模式决定。(请参阅 Linux 以太网绑定驱动程序 HOWTO )。Red Hat Virtualization 的默认绑定模式是 (Mode 4) Dynamic Link Aggregation (802.3ad)

Red Hat Virtualization 支持以下绑定模式,因为它们可用于虚拟机(桥接)网络:

(模式 1)Active-Backup
一个 NIC 处于活跃状态。如果活跃 NIC 失败,则备份 NIC 之一会将其替换为绑定中唯一的活跃 NIC。此绑定的 MAC 地址仅在网络适配器端口中可见。这可防止在绑定 MAC 地址更改时发生 MAC 地址混淆,这反映了新活跃 NIC 的 MAC 地址。
(模式 2)负载平衡(balance-xor)
通过对源 MAC 地址和目的地 MAC 地址执行 XOR 操作来选择传输数据包的 NIC,乘以 NIC 总数的 modulo。此算法确保为每个目标 MAC 地址选择相同的 NIC。
(模式 3)广播
数据包传输到所有 NIC。
(模式 4)动态链路聚合(802.3ad) (默认)

NIC 聚合成共享相同速度和双工设置的组中。使用活跃聚合组中的所有 NIC。

注意

(模式 4)动态链路聚合(802.3ad) 需要支持 802.3ad 的交换机。

绑定 NIC 必须具有相同的聚合器 ID。否则,管理器在 Network Interfaces 选项卡中显示绑定的警告感叹号图标,绑定的 ad_partner_mac 值报告为 00:00:00:00:00:00。您可以输入以下命令来检查聚合器 ID:

# cat /proc/net/bonding/bond0

与虚拟客户机或容器连接到的网桥一起使用时,请查看哪些绑定模式工作?

以下绑定模式与虚拟机逻辑网络不兼容,因此只能使用非VM 逻辑网络附加到绑定中:

(模式 0)Round-Robin
NIC 按顺序传输数据包。在以绑定中的第一个可用 NIC 开头的循环中传输数据包,并以绑定中最后一个可用 NIC 结束。后续循环从第一个可用 NIC 开始。
(模式 5)Balance-TLB,也称为 Transmit Load-Balance
传出流量会根据绑定中的所有 NIC 的负载进行分发。入站流量由活跃 NIC 接收。如果 NIC 接收传入流量失败,则会分配另一个 NIC。
(模式 6)balance-ALB,也称为 Adaptive Load-Balance
(模式 5)Balance-TLB 与 IPv4 流量接收负载平衡相结合。ARP 协商用于平衡接收负载。