Bereitstellen der Azure Arc-Ressourcenbrücke über die Befehlszeile
Gilt für: Azure Stack HCI, Version 21H2
Um die Bereitstellung virtueller Computer auf Azure Stack HCI über das Azure-Portal zu aktivieren, müssen Sie die Azure Arc-Ressourcenbrücke bereitstellen.
Sie können die Azure Arc-Ressourcenbrücke mit dem Windows Admin Center oder über die Befehlszeile im Azure Stack HCI-Cluster bereitstellen.
In diesem Artikel wird beschrieben, wie Sie die Befehlszeile verwenden, um die Azure Arc-Ressourcenbrücke bereitzustellen. Dazu gehören:
- Installieren von PowerShell-Modulen und Aktualisieren von Erweiterungen
- Erstellen eines benutzerdefinierten Speicherorts
- Erstellen des virtuellen Netzwerks und des Katalogimages
Wenn Sie die Azure Arc-Ressourcenbrücke mithilfe von Windows Admin Center bereitstellen möchten, lesen Sie die Informationen unter Bereitstellen der Azure Arc-Ressourcenbrücke über das Windows Admin Center.
Weitere Informationen zur VM-Bereitstellung über das Azure-Portal finden Sie unter VM-Bereitstellung über das Azure-Portal auf Azure Stack HCI (Vorschau).
Voraussetzungen
Bevor Sie mit einer Bereitstellung der Azure Arc-Ressourcenbrücke beginnen, sollten Sie Ihre Infrastruktur für physische Netzwerke und Hostnetzwerke planen und konfigurieren. Sehen Sie sich folgende Abschnitte an:
- Voraussetzungen für die Azure Arc Resource Bridge-Bereitstellung
- Anforderungen an Netzwerkports
- Firewall-URL-Ausnahmen
Installieren von PowerShell-Modulen und Aktualisieren von Erweiterungen
Führen Sie die folgenden Schritte über RDP (Remote Desktop Protocol) oder eine Konsolensitzung aus, um die Installation der Azure Arc-Ressourcenbrücke in einem Azure Stack HCI-Cluster vorzubereiten und eine VM-Clustererweiterung zu erstellen. Remote PowerShell wird nicht unterstützt.
Installieren Sie die erforderlichen PowerShell-Module, indem Sie das folgende Cmdlet als Administrator auf allen Servern des Azure Stack HCI-Clusters ausführen:
Install-PackageProvider -Name NuGet -Force Install-Module -Name PowershellGet -Force -Confirm:$false -SkipPublisherCheckStarten Sie alle geöffneten PowerShell-Fenster neu.
Install-Module -Name Moc -Repository PSGallery -AcceptLicense -Force Initialize-MocNode Install-Module -Name ArcHci -Force -Confirm:$false -SkipPublisherCheck -AcceptLicenseStarten Sie PowerShell neu, und stellen Sie dann im PowerShell-Fenster auf einem beliebigen Server des Clusters Angaben für Folgendes bereit. Die Parameter werden in der folgenden Tabelle beschrieben:
$vswitchName="<Switch-Name>" $controlPlaneIP="<IP-address>" $csv_path="<input-from-admin>" $vlanID="<vLAN-ID>" (Optional) $VMIP="<static IP address for Resource Bridge VM>" (required only for static IP configurations) $DNSServers="<comma separated list of DNS servers>" (required only for static IP configurations) $IPAddressPrefix="<subnet mask for the IP address>" (required only for static IP configurations) $Gateway="<IPv4 address of the default gateway>" (required only for static IP configurations) $cloudServiceIP="<IP-address>" (required only for static IP configurations)Dabei gilt:
Wert BESCHREIBUNG vswitchName Muss mit dem Namen des Switchs auf dem Host übereinstimmen. Das von diesem VM-Switch bediente Netzwerk muss statische IP-Adressen für controlPlaneIP bereitstellen können. controlPlaneIP Die IP-Adresse, die für den Lastenausgleich in der Arc-Ressourcenbrücke verwendet wird. Die IP-Adresse muss sich im selben Subnetz wie der DHCP-Bereich befinden und aus dem DHCP-Bereich ausgeschlossen werden, um IP-Adresskonflikte zu vermeiden. csv_path Ein CSV-Volumepfad, auf den alle Server des Clusters zugreifen können. Dieser wird zum Zwischenspeichern von Betriebssystemimages verwendet, die für die Azure Arc-Ressourcenbrücke verwendet werden. Außerdem werden bei der Installation temporäre Konfigurationsdateien und nach der Installation Cloud-Agent-Konfigurationsdateien gespeichert. Beispiel: C:\ClusterStorage\contosoVol.vlanID vLAN-Bezeichner (optional). VMIP IP-Adresse für die Arc-Ressourcenbrücke (nur für statische IP-Konfigurationen erforderlich). Ohne Angabe dieses Parameters erhält die Arc-Ressourcenbrücke eine per DHCP zugewiesene IP-Adresse. DNSServers Durch Kommas getrennte Liste von DNS-Servern (nur für statische IP-Konfigurationen erforderlich). Beispiel: "192.168.250.250","192.168.250.255". IPAddressPrefix „PrefixLength“ gibt die Subnetzmaske für die IP-Adresse an (nur für statische IP-Konfigurationen erforderlich). Beispiel: "192.168.0.0/16". Gateway IPv4-Adresse des Standardgateways (nur für statische IP-Konfigurationen erforderlich). cloudServiceIP Die IP-Adresse des Cloud-Agents, der unter der Ressourcenbrücke ausgeführt wird (nur für statische IP-Konfigurationen erforderlich). Diese ist erforderlich, wenn die Clusterserver über statisch zugewiesene IP-Adressen verfügen. Die IP-Adresse muss aus dem zugrunde liegenden Netzwerk (physisches Netzwerk) bezogen werden. Bereiten Sie die Konfiguration für die Azure Arc-Ressourcenbrücke vor. Dieser Schritt variiert je nachdem, ob Azure Kubernetes Service (AKS) in Azure Stack HCI und Windows Server installiert ist oder nicht.
Falls AKS in Azure Stack HCI und Windows Server installiert ist: Überspringen Sie diesen Schritt, und fahren Sie mit Schritt 4 fort, um die erforderlichen Erweiterungen zu aktualisieren.
Falls AKS in Azure Stack HCI und Windows Server nicht installiert ist: Führen Sie die folgenden Cmdlets aus, um eine IP-Adresse für Ihre Azure Arc-Ressourcenbrücken-VM bereitzustellen:
$vnet=New-MocNetworkSetting -Name hcirb-vnet -vswitchName $vswitchName -vipPoolStart $controlPlaneIP -vipPoolEnd $controlPlaneIP Set-MocConfig -workingDir $csv_path\ResourceBridge -vnet $vnet -imageDir $csv_path\imageStore -skipHostLimitChecks -cloudConfigLocation $csv_path\cloudStore -catalog aks-hci-stable-catalogs-ext -ring stable -CloudServiceIP $cloudServiceIP Install-Moc
Tipp
Sehen Sie sich die Informationen zu Einschränkungen und bekannten Problemen an, wenn Azure Kubernetes Service auch für die Ausführung in diesem Cluster aktiviert ist.
Aktualisieren Sie die erforderlichen Erweiterungen.
Deinstallieren Sie die alten Erweiterungen:
az extension remove --name arcappliance az extension remove --name connectedk8s az extension remove --name k8s-configuration az extension remove --name k8s-extension az extension remove --name customlocation az extension remove --name azurestackhciInstallieren Sie die neuen Erweiterungen:
az extension add --upgrade --name arcappliance az extension add --upgrade --name connectedk8s az extension add --upgrade --name k8s-configuration az extension add --upgrade --name k8s-extension az extension add --upgrade --name customlocation az extension add --upgrade --name azurestackhci
Erstellen eines benutzerdefinierten Speicherorts durch Installieren von Azure Arc Resource Bridge
Um einen benutzerdefinierten Speicherort zu erstellen, installieren Sie die Azure Arc-Ressourcenbrücke, indem Sie ein PowerShell-Fenster mit erhöhten Rechten starten und die folgenden Schritte ausführen:
Stellen Sie Angaben für Folgendes bereit. Verwenden Sie dabei die Parameter gemäß der Beschreibung.
$resource_group="<pre-created resource group in Azure>" $subscription="subscription ID in Azure" $Location="<Azure Region - Available regions include 'eastus', 'eastus2euap' and 'westeurope'>" $customloc_name="<name of the custom location, such as HCICluster -cl>"Tipp
Führen Sie
Get-AzureStackHCIaus, um diese Details zu finden.Melden Sie sich bei Ihrem Azure-Abonnement an, und rufen Sie die Erweiterung und die Anbieter für die Azure Arc-Ressourcenbrücke ab:
az login --use-device-code az account set --subscription $subscription az provider register --namespace Microsoft.KubernetesConfiguration az provider register --namespace Microsoft.ExtendedLocation az provider register --namespace Microsoft.ResourceConnector az provider register --namespace Microsoft.AzureStackHCIFühren Sie die folgenden Cmdlets basierend auf Ihren Netzwerkkonfigurationen aus:
$resource_name= ((Get-AzureStackHci).AzureResourceName) + "-arcbridge" mkdir $csv_path\ResourceBridge New-ArcHciConfigFiles -subscriptionID $subscription -location $location -resourceGroup $resource_group -resourceName $resource_name -workDirectory $csv_path\ResourceBridge -controlPlaneIP $controlPlaneIP -k8snodeippoolstart $VMIP -k8snodeippoolend $VMIP -gateway $Gateway -dnsservers $DNSServers -ipaddressprefix $IPAddressPrefix [-vLanID=$vlanID] az arcappliance validate hci --config-file $csv_path\ResourceBridge\hci-appliance.yamlaz arcappliance prepare hci --config-file $csv_path\ResourceBridge\hci-appliance.yamlaz arcappliance deploy hci --config-file $csv_path\ResourceBridge\hci-appliance.yaml --outfile $env:USERPROFILE\.kube\configaz arcappliance create hci --config-file $csv_path\ResourceBridge\hci-appliance.yaml --kubeconfig $env:USERPROFILE\.kube\configÜberprüfen Sie, ob die Arc-Appliance ausgeführt wird. Führen Sie die folgenden Cmdlets solange aus, bis der Bereitstellungsstatus der Appliance Succeeded (Erfolgreich) lautet und der Status Running (Wird ausgeführt) ist. Dieser Vorgang kann bis zu fünf Minuten in Anspruch nehmen.
az arcappliance show --resource-group $resource_group --name $resource_nameFügen Sie die erforderlichen Erweiterungen hinzu, damit die VM-Verwaltungsfunktionen über die neu bereitgestellte Arc-Ressourcenbrücken-Instanz aktiviert werden können:
$hciClusterId= (Get-AzureStackHci).AzureResourceUri az k8s-extension create --cluster-type appliances --cluster-name $resource_name --resource-group $resource_group --name hci-vmoperator --extension-type Microsoft.AZStackHCI.Operator --scope cluster --release-namespace helm-operator2 --configuration-settings Microsoft.CustomLocation.ServiceAccount=hci-vmoperator --configuration-protected-settings-file $csv_path\ResourceBridge\hci-config.json --configuration-settings HCIClusterID=$hciClusterId --auto-upgrade trueÜberprüfen Sie, ob die Erweiterungen installiert sind. Führen Sie das folgende Cmdlet solange aus, bis der Bereitstellungsstatus der Erweiterung Erfolgreich lautet. Dieser Vorgang kann bis zu fünf Minuten in Anspruch nehmen.
az k8s-extension show --cluster-type appliances --cluster-name $resource_name --resource-group $resource_group --name hci-vmoperatorErstellen Sie einen benutzerdefinierten Speicherort für den Azure Stack HCI-Cluster, wobei customloc_name der Name des benutzerdefinierten Speicherorts ist, z. B. „HCICluster -cl“:
az customlocation create --resource-group $resource_group --name $customloc_name --cluster-extension-ids "/subscriptions/$subscription/resourceGroups/$resource_group/providers/Microsoft.ResourceConnector/appliances/$resource_name/providers/Microsoft.KubernetesConfiguration/extensions/hci-vmoperator" --namespace hci-vmoperator --host-resource-id "/subscriptions/$subscription/resourceGroups/$resource_group/providers/Microsoft.ResourceConnector/appliances/$resource_name" --location $Location
Nun können Sie zur Ressourcengruppe in Azure navigieren und den benutzerdefinierten Speicherort sowie die Azure Arc-Ressourcenbrücken-Instanz sehen, die Sie für den Azure Stack HCI-Cluster erstellt haben.
Erstellen des virtuellen Netzwerks und des Katalogimages
Da jetzt der benutzerdefinierte Speicherort verfügbar ist, können Sie virtuelle Netzwerke und Katalogimages für den benutzerdefinierten Speicherort erstellen oder hinzufügen, der dem Azure Stack HCI-Cluster zugeordnet ist.
Erstellen Sie einen Netzwerkswitch für VMs, oder fügen Sie einen hinzu. Stellen Sie sicher, dass auf allen Hosts des Azure Stack HCI-Clusters ein externer VM-Switch bereitgestellt wird. Geben Sie den VM-Switchnamen an, der bei der VM-Bereitstellung für Netzwerkschnittstellen verwendet wird. Der Parameter vnetName muss der Name des virtuellen Netzwerks der Hosts des Clusters sein, z. B. „myvnet“.
$vnetName=<name of the vnet> az azurestackhci virtualnetwork create --subscription $subscription --resource-group $resource_group --extended-location name="/subscriptions/$subscription/resourceGroups/$resource_group/providers/Microsoft.ExtendedLocation/customLocations/$customloc_name" type="CustomLocation" --location $Location --network-type "Transparent" --name $vnetNameErstellen Sie ein Betriebssystemkatalogimage für die Erstellung virtueller Computer, indem Sie die folgenden Cmdlets ausführen und die in der folgenden Tabelle beschriebenen Parameter angeben.
Stellen Sie sicher, dass ein Windows- oder Linux-VHDX-Image vorhanden ist, das lokal auf dem Host kopiert wurde. Das VHDX-Image muss vom Typ Gen-2 sein und sicheren Start ermöglichen. Es sollte sich auf einem freigegebenen Clustervolume befinden, das für alle Server im Cluster verfügbar ist. Azure Stack HCI mit Arc-Unterstützung unterstützt Windows- und Linux-Betriebssysteme.
$galleryImageName=<gallery image name> $galleryImageSourcePath=<path to the source gallery image> $osType="<Windows/Linux>" az azurestackhci galleryimage create --subscription $subscription --resource-group $resource_group --extended-location name="/subscriptions/$subscription/resourceGroups/$resource_group/providers/Microsoft.ExtendedLocation/customLocations/$customloc_name" type="CustomLocation" --location $Location --image-path $galleryImageSourcePath --name $galleryImageName --os-type $osTypeDabei gilt:
Wert BESCHREIBUNG galleryImageName Name des Katalogimages (beispielsweise „win-os“). Beachten Sie, dass Azure alle Namen ablehnt, die das Schlüsselwort „Windows“ enthalten. galleryImageSourcePath Pfad zum VHDX-Quellkatalogimage (beispielsweise „C:\OSImages\winos.vhdx“). osType Der Betriebssystemtyp. Kann auf „Windows“ oder „Linux“ festgelegt werden.