NSX 中的项目类似于租户。通过创建项目,您可以在单个 NSX 部署中隔离租户之间的安全和网络对象。

假设组织已在其站点上部署了 NSX。当前,该组织的所有基础架构、网络和安全配置都位于默认空间中,该空间由企业管理员所有。您将在本文档后面的部分中了解有关默认空间的更多信息。

该组织具有以下目标:
  • 隔离其三个部门的网络和安全配置:销售部门、营销部门和运营部门。
  • 将为每个部门创建并管理网络和安全配置的任务委派给一组特定的 NSX 用户,同时避免让这些用户查看系统中的所有对象。
  • 默认情况下,允许部门中的工作负载虚拟机仅与同一部门中的其他工作负载虚拟机(包括 DHCP 服务器)进行通信。
  • 默认情况下,阻止与部门外的工作负载进行通信。如果需要进行此类通信,系统必须允许在默认安全策略中添加新的规则或修改现有规则。
要实现这些目标,组织可以使用“项目”功能在其 NSX 部署中实施多租户。例如,它可以创建三个项目,这些项目分别具有以下名称:
  • 销售
  • 市场营销
  • 运维

在多租户部署中,每个项目中的用户都可以访问他们在其项目中创建的对象,并且可以使用企业管理员从默认空间与其项目共享的对象(在只读模式下)。

注:
  • NSX 部署中设置多租户是可选操作,其实施情况对现有 NSX 配置没有任何影响。
  • NSX 联合 环境中当前不支持多租户功能。

多租户策略数据模型

NSX 策略数据模型采用分层结构,并具有两个系统创建的分支:

  • /infra 分支由企业管理员管理。此分支下的对象将显示在 UI 的默认视图中。

    除企业管理员之外的其他用户角色也存在于 /infra 分支中。此分支中的用户未绑定到任何特定项目。本文档将此类用户称为“系统范围”的用户。这些用户可以在 /infra 分支下配置一部分对象。

    系统范围的用户有权访问系统中的所有对象。也就是说,他们有权访问默认视图(/infra 分支)中的对象和项目中的对象。

    本文档有时会使用“默认空间”一词来指代默认视图下的对象。换句话说,术语“默认空间”和“默认视图”可以互换使用。它们的含义相同。要了解有关默认视图的更多信息,请参见本文档后面的“默认”视图(默认空间)概述小节。

  • /orgs/default 分支保存多租户对象。每个项目都有自身的空间来托管其拥有的对象。

项目在 /orgs/default 下创建,以支持每个租户具有一组独立的网络和安全配置。

项目配置在 /orgs/default/projects/<project-id>/infra 下设置。

以下各图说明了多租户的数据模型。这些图表示数据模型的部分视图,旨在帮助理解概念。策略数据模型具有多个对象(图中未显示)。

第一幅图显示了默认空间和组织下的两个项目。第二幅图显示了这两个项目中对象的层次结构。在组织下,项目 1 和项目 2 具有自身的 NSX 网络和安全对象层次结构,这些对象是在项目中创建的。在项目中创建的对象由该项目所有。

Tier-0 网关和 Edge 集群由默认空间所有,可以将它们分配给组织下的项目。无法在项目中创建 Tier-0 网关和 Edge 集群。

每个项目都可以选择具有自身的 Tier-1 网关,这些网关必须在项目中进行配置。换句话说,Tier-1 网关必须由项目所有。项目无法使用在默认空间中配置的 Tier-1 网关。


多租户策略数据模型显示了默认空间、组织以及组织下的两个项目。

组织下的项目 1 和项目 2 中 NSX 对象的层次结构。

默认组织

NSX 部署具有一个默认组织。您无法创建、修改或删除默认组织。组织对象由系统在启动时创建。可以将系统中的 Tier-0 网关和 Edge 集群分配给组织下的项目。

组织对象由系统使用以下标识符创建:

/orgs/default

组织对象在 UI 中不可见。

了解“项目”下拉菜单

NSX Manager UI 顶部的应用程序栏上提供了项目下拉菜单。要查看此菜单,请单击默认,如以下屏幕截图中所示。


“项目”下拉菜单显示了默认空间且不存在用户创建的项目。

此菜单显示您有权访问的项目的列表。您可以使用此菜单在项目之间进行切换,并管理所分配的项目中的对象。

“默认”视图(默认空间)概述

首次登录到 NSX Manager 时,项目下拉菜单仅显示默认视图。系统中不存在用户创建的项目,如以上屏幕截图中所示。

企业管理员以及未分配给任何特定项目的其他系统范围的用户角色都可以看到 默认视图。该视图包含:
  • NSX Fabric 中的所有对象,如主机、Tier-0 网关、Edge 集群、传输区域等。
  • 全局用户管理对象。
  • 分层式策略数据模型的 /infra 空间下的对象,如 Tier-1 网关、分段、组、防火墙策略等。
  • 资源共享
简言之, 默认视图包含不属于任何项目的 NSX 对象。唯一的例外是,在 默认视图的 虚拟机页面上,将显示系统中的所有虚拟机。即,连接到以下项的虚拟机:
  • 默认空间中的分段。
  • 项目中的分段。
  • 项目内 NSX VPC 中的子网。

未连接到 NSX 中任何分段的虚拟机也会显示在默认空间中。此类虚拟机显示为未连接

此例外允许企业管理员从默认空间本身查看系统中运行的所有虚拟机。企业管理员可以将标记分配给系统中的任何虚拟机,并对其应用安全策略。

当企业管理员登录到 NSX Manager 时,将显示默认视图,如以下屏幕截图中所示。可以发现,所有选项卡都显示在 UI 中。概览页面显示默认空间中对象的简短摘要。


企业管理员看到的“默认”视图。

NSX 部署中创建一个或多个项目后,这些项目会显示在项目下拉菜单中,如以下屏幕截图中所示。


“项目”下拉菜单,其中突出显示了用户创建的三个项目。

企业管理员可以查看系统中的所有项目。其他系统范围的用户角色(如审核员)也可以查看系统中的所有项目。分配给特定项目且具有项目管理员、安全管理员、网络管理员、安全操作员和网络操作员等角色的用户可以查看他们有权访问的项目。

例如,当项目管理员登录到 NSX Manager 时,将显示项目特定的视图,如以下屏幕截图中所示。概览页面显示项目中创建的对象的简短摘要。


向项目管理员显示的“项目”视图。

NSX 的早期版本升级到 NSX 4.1 或更高版本时,默认空间将托管所有现有的基础架构、网络和安全配置。您可以继续使用默认空间以满足组织中的所有网络和安全要求。不会修改现有网络和安全对象的属性或这些对象的路径。创建项目是可选操作。

如果使用 NSX API 在 NSX 4.0.1.1 部署中创建了项目,然后升级到 4.1 或更高版本,则项目下拉菜单中将列出默认视图和项目视图。您可以在项目视图和默认视图之间进行切换,以查看每个视图下的对象。此外,项目菜单还会显示所有项目视图,如以下部分中所述。

“所有项目”视图概述
  • 所有项目视图可供未分配给任何特定项目的所有系统范围的用户角色使用。也就是说,此视图可供有权访问默认空间的所有用户使用。例如,企业管理员和审核员等。
  • 只有在 NSX 部署中添加了至少一个项目后,项目下拉菜单中才会显示此视图。
  • 此视图显示所有项目的网络和安全配置,包括默认空间。
  • 此视图中的对象在只读模式下显示。

所有项目视图中,网络和安全对象名称旁边会显示一个药丸形图标,以指示对象是由默认空间还是由项目所有。

例如,以下屏幕截图显示了分段页面上的分段列表。绿色框中突出显示的药丸形图标指示每个分段的所有者 - 默认空间或项目。


分段列表,其中在分段名称旁边显示了药丸形图标。

NSX Virtual Private Cloud

项目可以选择包含一个或多个 NSX Virtual Private Cloud (VPC)。

VPC 表示 NSX 项目中的一个独立专用网络,应用程序开发人员或 DevOps 工程师可以使用该网络托管其应用程序,并通过自助消耗模型来使用网络和安全对象。

NSX VPC 表示项目中的一个额外多租户层。它提供了一种简化的网络和安全服务使用模型,这与公有云环境中的体验一致。

NSX VPC 只能在项目中创建。它们不能在默认空间中创建。

VPC 配置是在 NSX 策略数据模型的以下路径下设置的:

/orgs/default/projects/<project-id>/vpcs/<vpc-id>

如需了解有关 NSX VPC 的详细信息,请参见NSX Virtual Private Cloud