Tutorial: Herstellen einer Verbindung mit VM-Skalierungsgruppeninstanzen über Azure PowerShell

Mithilfe einer VM-Skalierungsgruppe können Sie eine Gruppe von VMs bereitstellen und verwalten. Während des Lebenszyklus einer Skalierungsgruppe müssen unter Umständen verschiedene Verwaltungsaufgaben durchgeführt werden. In diesem Tutorial lernen Sie Folgendes:

  • Auflisten von Verbindungsinformationen
  • Herstellen einer Verbindung mit einzelnen Instanzen über eine Remotedesktopverbindung

Wenn Sie kein Azure-Abonnement besitzen, können Sie ein kostenloses Konto erstellen, bevor Sie beginnen.

Azure Cloud Shell

Azure hostet Azure Cloud Shell, eine interaktive Shell-Umgebung, die Sie über Ihren Browser nutzen können. Sie können entweder Bash oder PowerShell mit Cloud Shell verwenden, um mit Azure-Diensten zu arbeiten. Sie können die vorinstallierten Befehle von Cloud Shell verwenden, um den Code in diesem Artikel auszuführen, ohne etwas in Ihrer lokalen Umgebung installieren zu müssen.

Starten von Azure Cloud Shell:

Option Beispiel/Link
Wählen Sie rechts oben in einem Code- oder Befehlsblock die Option Ausprobieren aus. Durch die Auswahl von Ausprobieren wird der Code oder Befehl nicht automatisch in Cloud Shell kopiert. Screenshot that shows an example of Try It for Azure Cloud Shell.
Rufen Sie https://shell.azure.com auf, oder klicken Sie auf die Schaltfläche Cloud Shell starten, um Cloud Shell im Browser zu öffnen. Button to launch Azure Cloud Shell.
Wählen Sie im Azure-Portal rechts oben im Menü die Schaltfläche Cloud Shell aus. Screenshot that shows the Cloud Shell button in the Azure portal

So verwenden Sie Azure Cloud Shell:

  1. Starten Sie Cloud Shell.

  2. Wählen Sie die Schaltfläche Kopieren für einen Codeblock (oder Befehlsblock) aus, um den Code oder Befehl zu kopieren.

  3. Fügen Sie den Code oder Befehl mit STRG+UMSCHALT+V unter Windows und Linux oder CMD+UMSCHALT+V unter macOS in die Cloud Shell-Sitzung ein.

  4. Drücken Sie die EINGABETASTE, um den Code oder Befehl auszuführen.

Auflisten von VM-Instanzen in einer Skalierungsgruppe

Wenn Sie noch keine Skalierungsgruppe erstellt haben, finden Sie weitere Informationen unter Tutorial: Erstellen und Verwalten einer VM-Skalierungsgruppe mit Azure PowerShell.

Listen Sie alle Instanzen in Ihrer VM-Skalierungsgruppe mithilfe von Get-AzVM auf.

Get-AzVM -ResourceGroup myResourceGroup
ResourceGroupName Name                  Location    VmSize             OsType    NIC 
----------------- ----                  --------    ------             ------    --- 
myResourceGroup   myScaleSet_Instance1   eastus     Standard_DS1_v2    Windows    myScaleSet-instance1-nic      
myResourceGroup   myScaleSet_Instance2   eastus     Standard_DS1_v2    Windows    myScaleSet-instance2-nic    

Abrufen von NIC-Informationen

Rufen Sie unter Verwendung des NIC-Namens mit Get-AzNetworkInterface die private IP-Adresse der NIC, den Namen des Back-End-Adresspools und den Namen des Lastenausgleichs ab.

Get-AzNetworkInterface -Name myScaleSet-instance1-nic
Name                        : myScaleSet-instance1-nic
ResourceGroupName           : myResourceGroup
Location                    : eastus
Id                          : /subscriptions//resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/myScaleSet-instance1-nic
ProvisioningState           : Succeeded
Tags                        : 
VirtualMachine              : {
                                "Id": "/subscriptions//resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myScaleSet_Instance1"
                              }
IpConfigurations            : [
                                {
                                  "Name": "myScaleSet",
                              "/subscriptions//resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/myScaleSet-instance1-nic/ipConfigurations/myScaleSet",
                                  "PrivateIpAddress": "192.168.1.5",
                                  "PrivateIpAllocationMethod": "Dynamic",
                                  "Subnet": {
                                    "Id": "/subscriptions//resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myScaleSet/subnets/myScaleSet",
                                    "IpAllocations": []
                                  },
                                  "ProvisioningState": "Succeeded",
                                  "PrivateIpAddressVersion": "IPv4",
                                  "LoadBalancerBackendAddressPools": [
                                    {
                                      "Id": 
                              40.88.43.135"/subscriptions//resourceGroups/myResourceGroup/providers/Microsoft.Network/loadBalancers/myScaleSet/backendAddressPools/myScaleSet",
                                      "LoadBalancerBackendAddresses": []
                                    }
                                  ],
                                  "LoadBalancerInboundNatRules": [],
                                  "Primary": true,
                                  "ApplicationGatewayBackendAddressPools": [],
                                  "ApplicationSecurityGroups": [],
                                  "VirtualNetworkTaps": []
                                }
                              ]

Abrufen von Details zum Back--End-Pool

Rufen Sie unter Verwendung der Namen von Back-End-Pool und Lastenausgleich sowie der privaten IP-Adresse mit Get-AzLoadBalancerBackendAddressInboundNatRulePortMapping den Port ab, der der privaten IP-Adresse der Instanz zugeordnet ist, mit der Sie sich verbinden möchten.

Get-AzLoadBalancerBackendAddressInboundNatRulePortMapping `
  -ResourceGroupName myResourceGroup `
  -LoadBalancerName myScaleSet `
  -Name myScaleSet `
  -IpAddress 192.168.1.5

Wenn Sie den obigen Befehl ausführen und feststellen, dass für Ihren Lastenausgleich keine NAT-Regel für eingehenden Datenverkehr vorhanden ist, können Sie mit Add-AzLoadBalancerInboundNatRuleConfig NAT-Regeln für eingehenden Datenverkehr hinzufügen. Führen Sie nach Abschluss des Vorgangs Get-AzLoadBalancerBackendAddressInboundNatRulePortMapping erneut aus.

$slb = Get-AzLoadBalancer -Name "myScaleSet" -ResourceGroupName "MyResourceGroup"
$slb | Add-AzLoadBalancerInboundNatRuleConfig -Name "myNatRule" -FrontendIPConfiguration $slb.FrontendIpConfigurations[0] -Protocol "Tcp" -IdleTimeoutInMinutes 10 -FrontendPortRangeStart 50000 -FrontendPortRangeEnd 50099 -BackendAddressPool $slb.BackendAddressPools[0] -BackendPort 3389
$slb | Set-AzLoadBalancer
InboundNatRuleName : myNatRule
Protocol           : Tcp
FrontendPort       : 50001
BackendPort        : 3389

Abrufen der öffentlichen IP-Adresse des Lastenausgleichs

Rufen Sie die öffentliche IP-Adresse des Lastenausgleichs mithilfe von GetAzPublicIpAddress ab.

Get-AzPublicIpAddress -ResourceGroup myResourceGroup    
Name                     : myScaleSet
ResourceGroupName        : myResourceGroup
Location                 : eastus
Id                       : /subscriptions/resourceGroups/myResourceGroup/providers/Microsoft.Network/publicIPAddresses/myScaleSet
ProvisioningState        : Succeeded
PublicIpAllocationMethod : Static
IpAddress                : 40.88.43.135
PublicIpAddressVersion   : IPv4
IdleTimeoutInMinutes     : 4
IpConfiguration          : {
                             "Id": "/subscriptions//resourceGroups/myResourceGroup/providers/Microsoft.Network/loadBalancers/myScaleSet/frontendIPConfigurations/myScaleSet"
                           }
DnsSettings              : {
                             "DomainNameLabel": "myscaleset-Instance1",
                             "Fqdn": "myscaleset-Instance1.eastus.cloudapp.azure.com"
                           }
Zones                    : {}
Sku                      : {
                             "Name": "Standard",
                             "Tier": "Regional"
                           }

Herstellen einer Verbindung mit Ihrer Instanz

Stellen Sie eine Remotedesktopverbindung mit Ihrem Computer her, indem Sie die öffentliche IP-Adresse des Lastenausgleichs und die Portzuordnung der Computerinstanz verwenden, mit der Sie sich verbinden möchten.

Screenshot of remote desktop application from Windows machine.

Nächste Schritte

In diesem Tutorial haben Sie gelernt, wie Sie die Instanzen in Ihrer Skalierungsgruppe auflisten und sich über SSH mit einer einzelnen Instanz verbinden.

  • Auflisten und Anzeigen von Instanzen in einer Skalierungsgruppe
  • Sammeln von Netzwerkinformationen für einzelne Instanzen in einer Skalierungsgruppe
  • Herstellen einer Verbindung mit einzelnen VM-Instanzen innerhalb einer Skalierungsgruppe