Die Multi-Tenant-Funktion bietet eine Möglichkeit, die Sicherheits- und Netzwerkkonfiguration mandantenübergreifend in einer einzelnen NSX-Bereitstellung zu isolieren. Zur Unterstützung der Multi-Tenant-Funktion führt NSX 4.0.1.1 Organisationen und Projekte ein.

Das NSX-Richtlinien-Datenmodell ist hierarchisch und verfügt über zwei vom System erstellte Verzweigungen:

  • /infra, verwaltet vom Infrastrukturadministrator.
  • /orgs/default, enthält die Multi-Tenant-Konstruktionen.
Hinweis: Das Einrichten der Multi-Tenant-Funktion für Ihre NSX-Bereitstellung ist optional. Die Implementierung hat keine Auswirkungen auf Ihre vorhandene NSX-Konfiguration.

Das folgende Diagramm veranschaulicht das Datenmodell für die Multi-Tenant-Funktion.

Datenmodell

Organisationen

Eine NSX-Bereitstellung verfügt über eine Standardorganisation. Sie können die Organisation nicht erstellen, ändern oder löschen. Das Organisationsobjekt wird beim Systemstart erstellt. Die Organisation kann auf alle Tier-0-Gateways und Edge-Cluster im System zugreifen.

Das Organisationsobjekt wird vom System mit dem folgenden Bezeichner erstellt:

/orgs/default

Projekte

Unter der Organisation können Sie ein Projekt für jeden Mandanten erstellen, den Sie über Ihre NSX-Umgebung verwalten möchten. Projekte werden unter /orgs/default erstellt, um unabhängige Konfigurationssätze für jeden Mandanten zu unterstützen:

  • Projekte bieten das hierarchische Richtlinienmodell in einem bestimmten isolierten Kontext. Projektkonfigurationen werden unter /orgs/default/projects/<project-id>/infra eingerichtet.
  • Sie können keine Tier-0-Gateways und Edge-Cluster unter einem Projekt erstellen. Der Enterprise-Administrator kann Tier-0-Gateways und Edge-Cluster aus dem /infra-Bereich heraus für die Organisation freigeben, der dann für die Projekte unter der Organisation verfügbar ist.
  • Projekte haben Zugriff auf einige der Objekte und Konfigurationen, die aus dem /infra-Bereich heraus freigegeben wurden.
  • Im infra-Bereich können Sie Regeln erstellen, die für VMs in einem Projekt gelten. Um diese Regeln im infra-Bereich zu erstellen, nutzen Sie entweder die Standardgruppen des Projekts oder erstellen Gruppen mit dynamischen Mitgliedschaften oder einer statischen VM-Mitgliedschaft.
  • Neben der Regelerstellung im infra-Bereich wird die Konfiguration anderer Projektressourcen im infra-Bereich nicht unterstützt. Beispielsweise können Sie unter „Org“ keine Gruppen mit statischen Mitgliedern aus anderen Projekten als VMs /Standardgruppen des Projekts erstellen. Das Konfigurieren von Tier-1-Gateways, die zu einem Projekt aus dem infra-Bereich gehören, wird nicht unterstützt. Projektressourcen müssen innerhalb des Projekts konfiguriert werden.

Sie können den folgenden API-Aufruf ausführen, um ein Projekt unter der Organisation zu erstellen:

PATCH /policy/api/v1/orgs/default/projects/<project-id>

Geben Sie beim Erstellen eines Projekts das Tier-0-Gateway und den Edge-Cluster an, den das Projekt verwenden soll. Verwenden Sie dieses Tier-0-Gateway für alle Konfigurationen innerhalb dieses Projekts. Der dem Projekt zugeteilte Edge-Cluster muss zur Standard-Transportzone gehören. In dieser Transportzone werden die Projektnetzwerke erstellt.

Beispielanforderung:

URL:

PATCH https:/{{nsx-manager-ip}}/policy/api/v1/orgs/default/projects/Project-Dev

Text:

{
    "site_infos": [
        {
            "edge_cluster_paths": [
                "/infra/sites/default/enforcement-points/default/edge-clusters/ca1b2a4f-057d-42da-b3b8-cf218b1c1a51"
            ],
            "site_path": "/infra/sites/default"
        }
    ],
    "tier_0s": [
        "/infra/tier-0s/Tier0GatewayTest"
    ]
}

Wenn Sie ein Projekt erstellen, werden einige Standardobjekte wie eine Standarddomäne, Sicherheitsrichtlinien und Standardgruppen erstellt. Sie können gemäß Ihren Anforderungen mehrere Projekte erstellen.

Sobald ein Projekt erstellt wurde, können Sie API-Aufrufe zum Abschließen von Netzwerkkonfigurationen für DHCP, Tier-1-Gateways und Segmente durchführen.

Hinweis: Damit der Projektadministrator Segmente oder Tier-1-Gateways mit einem Tier-0-Gateway oder Tier-0-VRF verbinden kann, weisen Sie dem Benutzer mit der Rolle „Projektadministrator“ eine zusätzliche benutzerdefinierte Rolle zu. Die benutzerdefinierte Rolle, die Sie zuweisen, muss über Lesezugriff auf das Tier-0-Gateway des Systems verfügen. Auf diese Weise kann der Projektadministrator alle Tier-0-Gateways im System anzeigen. Weitere Informationen zum Erstellen einer benutzerdefinierten Rolle finden Sie unter Erstellen oder Verwalten benutzerdefinierter Rollen.

Wählen Sie beim Erstellen der benutzerdefinierten Rolle Netzwerk aus und setzen Sie alle Berechtigungen auf Keine zurück. Wählen Sie im Dialogfeld Berechtigungen festlegen die Option Netzwerk > Konnektivität aus und legen Sie die Tier-0-Gateways-Berechtigungen auf „Nur Lesen“ fest.

Ressourcenkontingente

Sie können Kontingente für Ressourcen in einem Projekt mithilfe von Einschränkungen definieren. Mithilfe von Kontingenten können Sie einen Maximalwert für bestimmte Ressourcen für ein bestimmtes Projekt definieren. Systemstandardgrenzwerte gelten, wenn keine Einschränkungen definiert sind.

Führen Sie den folgenden API-Aufruf aus, um Einschränkungen für ein Projekt zu definieren:
PATCH /policy/api/v1/infra/constraints/<contraint-id>
Beispielanforderung:
URL:
PATCH https://{{nsx-manager-ip}}/policy/api/v1/infra/constraints/c-1
Text:
{
    "display_name": "TestConstraint",
    "constraint_expression": {
        "resource_type": "EntityInstanceCountConstraintExpression",
        "count": 10,
        "operator": "<="
    },
    "target": {
        "path_prefix": "/orgs/default/projects/project-1",
        "target_resource_type": "Group"
    }
}