Skip to main content
简体中文版经机器翻译而成,仅供参考。如与英语版出现任何冲突,应以英语版为准。

配置主机网络( Ubuntu 或 Debian )

贡献者

在主机上完成 Linux 安装后,您可能需要执行一些额外的配置,以便在每个主机上准备一组适合映射到稍后要部署的 StorageGRID 节点的网络接口。

开始之前
备注 如果要使用 VM 作为主机,则应选择 VMXNET 3 作为虚拟网络适配器。VMware E1000 网络适配器已导致在某些 Linux 版本上部署 StorageGRID 容器时出现连接问题。
关于此任务

网格节点必须能够访问网格网络,还可以访问管理网络和客户端网络。您可以通过创建映射来提供此访问权限,此映射会将主机的物理接口与每个网格节点的虚拟接口相关联。创建主机接口时,请使用友好名称以方便在所有主机之间进行部署,并启用迁移。

同一接口可以在主机与一个或多个节点之间共享。例如,您可以使用相同的接口进行主机访问和节点管理网络访问,以便于维护主机和节点。尽管主机和各个节点之间可以共享同一接口,但所有接口都必须具有不同的 IP 地址。不能在节点之间或主机与任何节点之间共享IP地址。

您可以使用相同的主机网络接口为主机上的所有 StorageGRID 节点提供网格网络接口;可以为每个节点使用不同的主机网络接口;也可以在这两者之间执行操作。但是,通常不会提供与单个节点的网格和管理网络接口相同的主机网络接口,也不会提供与一个节点的网格网络接口和另一个节点的客户端网络接口相同的主机网络接口。

您可以通过多种方式完成此任务。例如、如果您的主机是虚拟机、而您要为每个主机部署一个或两个StorageGRID 节点、则可以在虚拟机管理程序中创建正确数量的网络接口、并使用一对一映射。如果要在裸机主机上部署多个节点以供生产使用,则可以利用 Linux 网络堆栈对 VLAN 和 LACP 的支持来实现容错和带宽共享。以下各节详细介绍了这两个示例的方法。您无需使用其中任何一个示例;您可以使用任何符合您需求的方法。

备注 不要直接使用绑定或网桥设备作为容器网络接口。这样做可能会阻止内核问题描述 在容器命名空间中对绑定和网桥设备使用 MACVLAN 导致节点启动。请改用非绑定设备,例如 VLAN 或虚拟以太网( Veth )对。在节点配置文件中指定此设备作为网络接口。

MAC 地址克隆的注意事项和建议

【Mac_address_cloning_Ubuntu】

MAC 地址克隆会使容器使用主机的 MAC 地址,而主机则使用您指定的地址或随机生成的地址的 MAC 地址。您应使用 MAC 地址克隆来避免使用混杂模式网络配置。

启用 MAC 克隆

在某些环境中,可以通过 MAC 地址克隆来增强安全性,因为它使您可以对管理网络,网格网络和客户端网络使用专用虚拟 NIC 。让容器使用主机上专用 NIC 的 MAC 地址可以避免使用混杂模式网络配置。

备注 MAC 地址克隆用于安装虚拟服务器,可能无法在所有物理设备配置中正常运行。
备注 如果某个节点由于 MAC 克隆目标接口繁忙而无法启动,则在启动节点之前,您可能需要将链路设置为 " 关闭 " 。此外,在链路启动时,虚拟环境可能会阻止网络接口上的 MAC 克隆。如果某个节点由于接口繁忙而无法设置 MAC 地址并启动,则在启动该节点之前将链路设置为 " 关闭 " 可能会修复问题描述 。

默认情况下, MAC 地址克隆处于禁用状态,必须通过节点配置密钥进行设置。您应在安装 StorageGRID 时启用它。

每个网络有一个密钥:

  • ADMIN_NETWORK_TARGET_TYPE_INTERFACE_CLONE_MAC

  • GRID_NETWORK_TARGET_TYPE_INTERFACE_CLONE_MAC

  • CLIENT_NETWORK_TARGET_TYPE_INTERFACE_CLONE_MAC

如果将密钥设置为 "true" ,则容器将使用主机 NIC 的 MAC 地址。此外,主机将使用指定容器网络的 MAC 地址。默认情况下、容器地址是随机生成的地址、但如果您使用节点配置密钥设置了一个 `_NETWORK_MAC`地址、则会改用该地址。主机和容器始终具有不同的 MAC 地址。

备注 在虚拟主机上启用 MAC 克隆而不同时在虚拟机管理程序上启用混杂模式可能会使用主机的接口发生原因 Linux 主机网络连接停止工作。

Mac 克隆使用情形

MAC 克隆需要考虑两种使用情形:

  • 未启用MAC克隆:如果 _CLONE_MAC`未将节点配置文件中的密钥设置为"false"、则主机将使用主机NIC MAC、容器将具有StorageGRID生成的MAC、除非在密钥中指定了MAC `_NETWORK_MAC。如果在密钥中设置了地址 _NETWORK_MAC、则容器将具有在密钥中指定的地址 _NETWORK_MAC。此密钥配置要求使用混杂模式。

  • 已启用MAC克隆:如果 _CLONE_MAC`节点配置文件中的密钥设置为"true、则容器将使用主机NIC MAC、而主机将使用StorageGRID生成的MAC、除非在密钥中指定了MAC `_NETWORK_MAC。如果在密钥中设置了地址 _NETWORK_MAC、则主机将使用指定的地址、而不是生成的地址。在此密钥配置中,不应使用混杂模式。

备注 如果您不想使用MAC地址克隆、而是希望允许所有接口接收和传输非虚拟机管理程序分配的MAC地址的数据、 确保将虚拟交换机和端口组级别的安全属性设置为*接受*(用于Pro味 式、MAC地址更改和伪传输)。虚拟交换机上设置的值可以被端口组级别的值覆盖,因此请确保这两个位置的设置相同。

要启用MAC克隆,请参见"有关创建节点配置文件的说明"

Mac 克隆示例

为主机启用MAC克隆的示例、其中、接口ens256的MAC地址为11:22:33:44:55:66、节点配置文件中的以下密钥为:

  • ADMIN_NETWORK_TARGET = ens256

  • ADMIN_NETWORK_MAC = b2:9c:02:c2:27:10

  • ADMIN_NETWORK_TARGET_TYPE_INTERFACE_CLONE_MAC = true

结果:ens256的主机MAC为B2:9c:02:C2:27:10、管理网络MAC为11:22:33:44:55:66

示例 1 :映射到物理或虚拟 NIC 的一对一映射

示例 1 介绍了一个简单的物理接口映射,该映射只需要很少的主机端配置或根本不需要主机端配置。

VLAN 图

Linux 操作系统会在安装或启动期间或热添加接口时自动创建 ensXYZ 接口。除了确保接口设置为在启动后自动启动之外,无需进行任何配置。您必须确定哪个 ensXYZ 与哪个 StorageGRID 网络(网格,管理员或客户端)相对应,以便稍后在配置过程中提供正确的映射。

请注意,此图显示了多个 StorageGRID 节点;但是,通常情况下,您会对单节点 VM 使用此配置。

如果交换机 1 是物理交换机,则应将连接到接口 10G1 到 10G3 的端口配置为访问模式,并将其放置在相应的 VLAN 上。

示例 2 : LACP 绑定传输 VLAN

示例 2 假定您熟悉绑定网络接口以及在所使用的 Linux 分发版上创建 VLAN 接口。

关于此任务

示例 2 介绍了一种基于 VLAN 的通用灵活方案,该方案有助于在单个主机上的所有节点之间共享所有可用网络带宽。此示例尤其适用于裸机主机。

要了解此示例,假设每个数据中心有三个单独的网格网络,管理员网络和客户端网络子网。子网位于不同的 VLAN ( 1001 , 1002 和 1003 )上,并通过 LACP 绑定的中继端口( bond0 )提供给主机。您应在此绑定上配置三个 VLAN 接口: bond0.1001 , bond0.1002 和 bond0.1003 。

如果同一主机上的节点网络需要单独的 VLAN 和子网,则可以在绑定上添加 VLAN 接口并将其映射到主机(如图中的 bond0.1004 所示)。

此图通过周围文字进行了说明。
步骤
  1. 将用于 StorageGRID 网络连接的所有物理网络接口聚合到一个 LACP 绑定中。

    对每个主机上的绑定使用相同的名称,例如 bond0 。

  2. 按照标准VLAN接口命名约定,创建使用此绑定作为其关联“物理设备”的VLAN接口 physdev-name.VLAN ID

    请注意,步骤 1 和 2 要求对终止网络链路另一端的边缘交换机进行适当配置。此外,边缘交换机端口还必须聚合到 LACP 端口通道中,并配置为中继,并允许通过所有必需的 VLAN 。

    此处提供了此每主机网络配置方案的接口配置文件示例。