Mithilfe von APIs konfigurieren Sie NSX Manager für die automatische Installation von Controllern auf vSphere ESXi-Hosts, die von einem vCenter Server verwaltet werden. Nach der Installation von Controllern werden diese automatisch zu einem Controller-Cluster auf vSphere ESXi-Hosts hinzugefügt.

Prozedur

  1. Bevor Sie die automatische Erstellung des Controller-Clusters auslösen, müssen Sie die als Nutzlast der POST API erforderliche vCenter Server-ID, Berechnungs-ID, Speicher-ID und Netzwerk-ID abrufen.
  2. Melden Sie sich beim vCenter Server an.

    https://<vCenterServer_IPAddress>/mob.

  3. Klicken Sie in der Spalte „Wert“ auf Inhalt.
  4. Klicken Sie auf der Seite „Inhaltseigenschaften“ auf die Spalte „Wert“, suchen Sie nach „Datencenter“ und klicken Sie auf den Link „Gruppe“.
  5. Klicken Sie auf der Seite „Gruppeneigenschaften“ auf die Spalte „Wert“ und klicken Sie auf den Link „Datencenter“.
  6. Kopieren Sie auf der Seite „Datencenter-Eigenschaften“ den Datenspeicherwert und den Netzwerkwert, die Sie beim Erstellen des Controller-Clusters verwenden möchten.
  7. Klicken Sie auf den Link HostFolder.
  8. Kopieren Sie auf der Seite „Gruppeneigenschaften“ den Cluster-Wert, den Sie beim Erstellen des Controller-Clusters verwenden möchten.
  9. Wechseln Sie zum Abrufen der vCenter Server-ID zur NSX Manager-Benutzeroberfläche und kopieren Sie ihre ID von der Seite „Berechnungsmanager“.
  10. POST https://<nsx-manager>/api/v1/cluster/nodes/deployments
    REQUEST 
    { 
      "deployment_requests": [ 
        { 
          "roles": ["CONTROLLER"], 
            "user_settings": { 
            "cli_password": "CLIp4$$w4rd", 
            "root_password": "ROOTp4$$w4rd" 
          }, 
          "deployment_config": { 
            "placement_type": "VsphereClusterNodeVMDeploymentConfig", 
            "vc_id": "69874c95-51ed-4775-bba8-e0d13bdb4fed", 
            "management_network_id": "network-13", 
            "hostname": "controller-0", 
            "compute_id": "domain-s9", 
            "storage_id": "datastore-12", 
            "default_gateway_addresses":[ 
            "10.33.79.253" 
            ], 
            "management_port_subnets":[ 
              { 
               "ip_addresses":[ 
               "10.33.79.64" 
               ], 
                "prefix_length":"22" 
              } 
            ] 
          } 
        }, 
        { 
          "roles": ["CONTROLLER"], 
            "user_settings": { 
            "cli_password": "VMware$123", 
            "root_password": "VMware$123" 
          }, 
    
          "deployment_config": { 
            "placement_type": "VsphereClusterNodeVMDeploymentConfig", 
            "vc_id": "69874c95-51ed-4775-bba8-e0d13bdb4fed", 
            "management_network_id": "network-13", 
            "hostname": "controller-1", 
            "compute_id": "domain-s9", 
            "storage_id": "datastore-12" 
            "default_gateway_addresses":[ 
             "10.33.79.253" 
            ], 
           "management_port_subnets":[ 
              { 
                "ip_addresses":[ 
                  "10.33.79.65" 
                ], 
                "prefix_length":"22" 
              } 
            ] 
          }  
        } 
      ], 
    						"deployment_config": { 
          "placement_type": "VsphereClusterNodeVMDeploymentConfig", 
          "vc_id": "69874c95-51ed-4775-bba8-e0d13bdb4fed", 
          "management_network_id": "network-13", 
          "hostname": "controller-0", 
          "compute_id": "domain-s9", 
          "storage_id": "datastore-12", 
          "default_gateway_addresses":[ 
          "10.33.79.253" 
           ], 
          "management_port_subnets":[ 
           { 
            "ip_addresses":[ 
            "10.33.79.66" 
             ], 
            "prefix_length":"22" 
              } 
            ] 
          } 
        }, 
      
    		"clustering_config": { 
        "clustering_type": "ControlClusteringConfig", 
        "shared_secret": "123456", 
        "join_to_existing_cluster": false 
      } 
    } 
    
    Response 
    { 
      "result_count": 2, 
      "results": [ 
        { 
          "user_settings": { 
            "cli_password": "[redacted]", 
            "root_password": "[redacted]", 
            "cli_username": "admin" 
          }, 
          "vm_id": "71f02260-644f-4482-aa9a-ab8570bb49a3", 
          "roles": [ 
            "CONTROLLER" 
          ], 
          "deployment_config": { 
            "placement_type": "VsphereClusterNodeVMDeploymentConfig", 
            "vc_id": "69874c95-51ed-4775-bba8-e0d13bdb4fed", 
            "management_network_id": "network-13", 
            "default_gateway_addresses": [ 
              "10.33.79.253" 
            ], 
            "hostname": "controller-0", 
            "compute_id": "domain-s9", 
            "storage_id": "datastore-12", 
            "management_port_subnets": [ 
              { 
                "ip_addresses": [ 
                  "10.33.79.64" 
                ], 
               "prefix_length": 22 
              } 
            ] 
          }, 
    
          "form_factor": "SMALL" 
        }, 
    
        { 
          "user_settings": { 
            "cli_password": "[redacted]", 
            "root_password": "[redacted]", 
            "cli_username": "admin" 
          }, 
    
          "vm_id": "38029a2b-b9bc-467f-8138-aef784e802cc", 
          "roles": [ 
            "CONTROLLER" 
          ], 
          "deployment_config": { 
            "placement_type": "VsphereClusterNodeVMDeploymentConfig", 
            "vc_id": "69874c95-51ed-4775-bba8-e0d13bdb4fed", 
            "management_network_id": "network-13", 
            "hostname": "controller-1", 
            "compute_id": "domain-s9", 
            "storage_id": "datastore-12" 
          }, 
          "form_factor": "MEDIUM" 
        } 
      ] 
    } 
  11. Sie können den Status der Bereitstellung mit dem folgenden API-Aufruf anzeigen: GET https://<nsx-manager>/api/v1/cluster/nodes/deployments
    { 
    
      "result_count": 2, 
      "results": [ 
        { 
          "user_settings": { 
            "cli_password": "[redacted]", 
            "root_password": "[redacted]" 
          }, 
    	     "vm_id": "12f563af-af9f-48f3-848e-e9257c8740b0", 
          "roles": [ 
          "CONTROLLER" 
          ], 
    
          "deployment_config": { 
          "placement_type": "VsphereClusterNodeVMDeploymentConfig", 
          "vc_id": "15145422-47a1-4c55-81da-01d953151d1f", 
          "management_network_id": "network-158", 
          "hostname": "controller-0", 
          "compute_id": "domain-c154", 
          "storage_id": "datastore-157" 
          }, 
          "form_factor": "SMALL", 
        }, 
        { 
          "user_settings": { 
          "cli_password": "[redacted]", 
          "root_password": "[redacted]" 
          }, 
          "vm_id": "cc21854c-265b-42de-af5f-05448c00777a", 
          "roles": [ 
          "CONTROLLER" 
          ], 
          "deployment_config": { 
          "placement_type": "VsphereClusterNodeVMDeploymentConfig", 
          "vc_id": "feb17651-49a7-4ce6-88b4-41d3f624e53b", 
          "management_network_id": "network-158", 
          "hostname": "controller-0", 
          "compute_id": "domain-c154", 
          "storage_id": "datastore-157" 
          }, 
    
          "form_factor": "MEDIUM", 
        } 
      ] 
    
    } 

Nächste Maßnahme

Löschen Sie einen Cluster. Siehe NSX Controller löschen.