网络和安全模型

共享文件系统服务中的共享驱动程序是一个 Python 类,可以设置为后端并在其中运行以管理共享操作,其中一些操作是特定于供应商的。后端是 manila-share 服务的实例。在共享文件系统服务中创建了许多由不同供应商创建的共享驱动程序。每个共享驱动程序支持一种或多种后端模式:共享服务器无共享服务器。管理员通过在 manila.conf 配置文件中指定它来选择使用哪种模式。为此使用了一个选项 driver_handles_share_servers

共享服务器模式可以配置为扁平网络,也可以配置为分段网络。这取决于网络提供程序。

如果希望拥有不同的配置,可以为不同的模式使用单独的驱动程序来使用相同的硬件。根据选择的模式,管理员可能需要通过配置文件提供更多配置细节。

共享后端模式

每个共享驱动程序至少支持一种可能的驱动程序模式

  • 共享服务器模式

  • 无共享服务器模式

manila.conf 中设置共享服务器模式或无共享服务器模式的配置选项是 driver_handles_share_servers 选项。它指示驱动程序是否自行处理共享服务器,或者它期望共享文件系统服务来处理。

模式

配置选项

描述

共享服务器

driver_handles_share_servers = True

共享驱动程序创建共享服务器并管理或处理共享服务器的生命周期。

无共享服务器

driver_handles_share_servers = False

管理员而不是共享驱动程序管理带有某些网络接口的裸机存储,而不是共享服务器的存在。

无共享服务器模式

在这种模式下,驱动程序基本上没有任何网络要求。假定由驱动程序管理的存储控制器拥有它将需要的所有网络接口。共享文件系统服务将期望驱动程序在不创建任何共享服务器的情况下直接配置共享。这种模式对应于现有驱动程序已经执行的操作,但它使管理员明确了选择。在这种模式下,在创建共享时不需要共享网络,并且不得提供共享网络。

注意

无共享服务器模式下,共享文件系统服务将假定通过任何导出的共享的网络接口对所有租户都是可访问的。

无共享服务器模式下,共享驱动程序不处理存储生命周期。预计管理员将处理存储、网络接口和其他主机配置。在这种模式下,管理员可以将存储设置为导出共享的主机。这种模式的主要特征是存储不由共享文件系统服务处理。租户中的用户共享网络、主机、处理器和网络管道。如果管理员或代理在配置的存储上没有进行正确的平衡调整,他们可能会互相妨碍。在公共云中,所有网络容量可能被一个客户端使用,因此管理员应注意避免这种情况发生。可以通过任何方式进行平衡调整,不一定使用 OpenStack 工具。

共享服务器模式

在这种模式下,驱动程序能够创建共享服务器并将它们连接到现有的网络。在提供新的共享服务器时,驱动程序期望从共享文件系统服务获得 IP 地址和子网。

无共享服务器模式不同,在共享服务器模式下,用户拥有一个共享网络和一个为每个共享网络创建的共享服务器。因此,所有用户都有单独的 CPU、CPU 时间、网络、容量和吞吐量。

您还可以在共享服务器无共享服务器后端模式中配置 安全服务。但是使用无共享服务器后端模式时,管理员应手动在主机上设置所需的安全服务。而在共享服务器模式下,共享文件系统服务可以自动配置为使用共享驱动程序支持的任何现有安全服务。

扁平网络与分段网络

共享文件系统服务允许使用不同类型的网络

  • 扁平

  • GRE

  • VLAN

  • VXLAN

注意

共享文件系统服务只是将有关网络的信息保存在数据库中,而实际网络由网络提供程序提供。在 OpenStack 中,它可以是 Legacy 网络 (nova-network) 或 Networking (neutron) 服务,但共享文件系统服务甚至可以在 OpenStack 之外工作。这是允许通过 StandaloneNetworkPlugin 来实现的,它可以与任何网络平台一起使用,并且不需要 OpenStack 中的某些特定网络服务,例如 Networking 或 Legacy 网络服务。您可以在其配置文件中设置网络参数。

共享服务器 后端模式下,共享驱动程序为每个共享网络创建和管理共享服务器。这种模式可以分为两种变体

  • 共享服务器后端模式中的扁平网络

  • 共享服务器后端模式中的分段网络

最初,在创建共享网络时,您可以设置 OpenStack Networking (neutron) 或 Legacy 网络 (nova-network) 服务的网络和子网。第三种方法是在没有 Legacy 网络和 Networking 服务的情况下配置网络。StandaloneNetworkPlugin 可以与任何网络平台一起使用。您可以在其配置文件中设置网络参数。

提示

所有使用 OpenStack Compute 服务的共享驱动程序都不使用网络插件。在 Mitaka 版本中,它们是 Windows 和 Generic 驱动程序。这些共享驱动程序具有其他选项并使用不同的方法。

创建共享网络后,共享文件系统服务检索由网络提供程序确定的网络信息:网络类型、如果网络使用分段则分段标识符以及用于分配网络的 CIDR 表示法中的 IP 块。

共享服务器后端模式中的扁平网络

在这种模式下,某些存储控制器可以创建共享服务器,但由于物理或逻辑网络的各种限制,所有共享服务器都必须位于扁平网络上。在这种模式下,共享驱动程序需要一些东西来为共享服务器配置 IP 地址,但所有 IP 都将来自同一个子网,并且假定该子网本身对所有租户都是可访问的。

共享网络的 安全服务部分 指定安全要求,例如 AD 或 LDAP 域或 Kerberos 领域。共享文件系统服务假定在安全服务中引用的任何主机都可以从创建共享服务器的子网访问,这限制了可以使用此模式的情况数量。

共享服务器后端模式中的分段网络

在这种模式下,驱动程序能够创建共享服务器并将它们连接到现有的分段网络。共享驱动程序期望共享文件系统服务为每个新的共享服务器提供子网定义。此定义应包括分段类型、分段 ID 以及与分段类型相关的任何其他信息。

注意

某些共享驱动程序可能不支持所有类型的分段,有关详细信息,请参阅所用驱动程序的规范。

网络插件

共享文件系统服务架构定义了网络资源配置的抽象层。它允许管理员选择不同的选项,以确定如何将网络资源分配给其租户的网络存储。有几个网络插件提供了与 OpenStack 可用的网络服务的各种集成方法。

网络插件允许使用 OpenStack Networking 和 Legacy 网络服务的任何功能和配置。您可以使用 Networking 服务支持的任何网络分段,您可以使用 Legacy 网络 (nova-network) 服务的扁平网络或 VLAN 分段网络,或者您可以使用插件来独立于 OpenStack 网络服务指定网络。有关如何使用不同网络插件的更多信息,请参阅 共享文件系统服务网络插件