Häufig gestellte Fragen zu Azure-VM-Skalierungsgruppen

Hier erhalten Sie Antworten auf häufig gestellte Fragen zu VM-Skalierungsgruppen in Azure.

Die am häufigsten gestellten Fragen zu Skalierungsgruppen

Wie viele virtuelle Computer können in einer Skalierungsgruppe enthalten sein?

Eine Skalierungsgruppe kann 0 bis 1.000 auf Plattformimages basierende virtuelle Computer (VMs) bzw. 0 bis 600 auf benutzerdefinierten Images basierende virtuelle Computer enthalten.

Werden Datenträger in Skalierungsgruppen unterstützt?

Ja. Für eine Skalierungsgruppe kann die Konfiguration für angefügte Datenträger definiert werden, die für alle virtuellen Computer der Gruppe gilt. Weitere Informationen finden Sie unter Azure-VM-Skalierungsgruppen und angefügte Datenträger. Beispiele für andere Optionen zum Speichern von Daten:

  • Azure Files (Laufwerke mit SMB-Freigabe)
  • Freigegebene Azure-Datenträger
  • Betriebssystemlaufwerk
  • Temporäres Laufwerk (lokal; nicht durch Azure Storage gesichert)
  • Azure-Datendienst (z. B. Azure Table Storage oder Azure Blob Storage)
  • Externer Datendienst (z. B. eine Remotedatenbank)

In welchen Azure-Regionen werden Skalierungsgruppen unterstützt?

Alle Regionen unterstützen Skalierungsgruppen.

Wie erstelle ich eine Skalierungsgruppe mit einem benutzerdefinierten Image?

Erstellen und erfassen Sie ein VM-Image, und verwenden Sie es dann als Quelle für Ihre Skalierungsgruppe. Ein Tutorial zum Erstellen und Verwenden eines benutzerdefinierten VM-Images finden Sie in der Azure CLI oder Azure PowerShell.

Welche virtuellen Computer werden entfernt, wenn ich meine Kapazität für Skalierungsgruppen von 20 auf 15 verringere?

VMs werden standardmäßig gleichmäßig über die Verfügbarkeitszonen hinweg aus den Skalierungsgruppen (wenn die Skalierungsgruppe in zonaler Konfiguration bereitgestellt wurde) und Fehlerdomänen entfernt, um die Verfügbarkeit zu maximieren. Die virtuellen Computer mit den höchsten IDs werden zuerst entfernt.

Sie können die Reihenfolge zur Entfernung der VM ändern, indem Sie eine Richtlinie für horizontales Herunterskalieren für die Skalierungsgruppe festlegen.

Was passiert, wenn ich dann die Kapazität von 15 auf 18 erhöhe?

Wenn Sie die Kapazität auf 18 erhöhen, werden drei neue VMs erstellt. Die VM-Instanz-ID wird jeweils ausgehend vom vorherigen höchsten Wert erhöht (Beispiel: 20, 21, 22). Die VMs werden gleichmäßig auf die Fehlerdomänen verteilt.

Kann ich bei Verwendung mehrerer Erweiterungen in einer Skalierungsgruppe eine Ausführungsreihenfolge erzwingen?

Ja, Sie können die Erweiterungssequenzierung für Skalierungsgruppen verwenden.

Funktionieren Skalierungsgruppen mit Azure-Verfügbarkeitsgruppen?

Eine regionale (nicht auf eine Zone beschränkte) Skalierungsgruppe verwendet Platzierungsgruppen, die als implizite Verfügbarkeitsgruppe mit fünf Fehlerdomänen und fünf Updatedomänen konfiguriert werden können. Skalierungsgruppen mit mehr als 100 VMs erstrecken sich auf mehrere Platzierungsgruppen. Weitere Informationen zu Platzierungsgruppen finden Sie unter Verwenden umfangreicher VM-Skalierungsgruppen. Eine Verfügbarkeitsgruppe mit virtuellen Computern kann sich im gleichen virtuellen Netzwerk befinden wie eine Skalierungsgruppe mit virtuellen Computern. Oftmals werden virtuelle Steuerknotencomputer (für die häufig eine eindeutige Konfiguration erforderlich ist) in einer Verfügbarkeitsgruppe und Datenknoten in der Skalierungsgruppe platziert.

Funktionieren Skalierungsgruppen mit Azure-Verfügbarkeitszonen?

Autoscale

Was sind die bewährten Methoden für die automatische Skalierung in Azure?

Wo finde ich Metriknamen für die automatische Skalierung mit hostbasierten Metriken?

Gibt es Beispiele für die automatische Skalierung auf der Grundlage eines Azure Service Bus-Themas und der Warteschlangenlänge?

Ja. Diese Beispiele finden Sie unter Allgemeine Metriken für die automatische Skalierung in Azure Monitor.

Verwenden Sie für eine Service Bus-Warteschlange den folgenden JSON-Code:

"metricName": "MessageCount",
"metricNamespace": "",
"metricResourceUri": "/subscriptions/s1/resourceGroups/rg1/providers/Microsoft.ServiceBus/namespaces/mySB/queues/myqueue"

Verwenden Sie für eine Speicherwarteschlange den folgenden JSON-Code:

"metricName": "ApproximateMessageCount",
"metricNamespace": "",
"metricResourceUri": "/subscriptions/s1/resourceGroups/rg1/providers/Microsoft.ClassicStorage/storageAccounts/mystorage/services/queue/queues/mystoragequeue"

Ersetzen Sie die Beispielwerte durch die URIs (Uniform Resource Identifiers) Ihrer Ressource.

Soll ich für die automatische Skalierung hostbasierte Metriken oder eine Diagnoseerweiterung verwenden?

Sie können eine Einstellung zur automatischen Skalierung auf einem virtuellen Computer erstellen, um Metriken auf Hostebene oder Metriken zu verwenden, die auf einem Gastbetriebssystem basieren.

Eine Liste mit unterstützten Metriken finden Sie unter Allgemeine Metriken für die automatische Skalierung in Azure Monitor.

Ein vollständiges Beispiel für VM-Skalierungsgruppen finden Sie unter Konfiguration der erweiterten automatischen Skalierung mithilfe von Resource Manager-Vorlagen für VM-Skalierungsgruppen.

In dem Beispiel werden die CPU-Metrik auf der Hostebene und die Metrik für die Nachrichtenanzahl verwendet.

Wie lege ich Warnungsregeln für eine VM-Skalierungsgruppe fest?

Metrikwarnungen für VM-Skalierungsgruppen können über PowerShell oder über die Azure-Befehlszeilenschnittstelle erstellt werden. Weitere Informationen finden Sie unter Azure Monitor – PowerShell-Schnellstartbeispiele und unter Azure Monitor – Schnellstartbeispiele für die plattformübergreifende CLI.

Die TargetResourceId der VM-Skalierungsgruppe sieht wie folgt aus:

/subscriptions/IhreAbonnementID/resourceGroups/<Ihre Ressourcengruppe>/providers/Microsoft.Compute/virtualMachineScaleSets/<Name Ihrer VM-Skalierungsgruppe>

Als Metrik, für die eine Warnung festgelegt werden soll, können Sie einen beliebigen VM-Leistungsindikator auswählen. Weitere Informationen finden Sie im Artikel Allgemeine Metriken für die automatische Skalierung in Azure Monitor unter Gastbetriebssystem-Metriken für Resource Manager-basierte virtuelle Windows-Computer und Gastbetriebssystem-Metriken für virtuelle Linux-Computer.

Wie richte ich die automatische Skalierung für eine VM-Skalierungsgruppe mithilfe von PowerShell ein?

Lesen Sie dazu Automatisches Skalieren von VM-Skalierungsgruppen. Außerdem können Sie die automatische Skalierung mit Azure CLI und Azure-Vorlagen konfigurieren.

Wird eine VM, wenn ich sie beendet (d.h. deren Zuordnung aufgehoben) habe, bei einer automatischen Skalierung erneut gestartet?

Nein. Wenn Regeln für die automatische Skalierung weitere VM-Instanzen als Teil einer Skalierungsgruppe erfordern, wird eine neue VM-Instanz erstellt. VM-Instanzen, die beendet wurden (bzw. deren Zuordnung aufgehoben wurde), werden nicht im Rahmen einer automatischen Skalierung gestartet. Die beendeten (freigegebenen) VMs können jedoch im Zuge einer automatischen Skalierung gelöscht werden, die die Anzahl der Instanzen skaliert, so wie jede VM-Instanz in der Reihenfolge der VM-Instanz-ID gelöscht werden kann.

Zertifikate

Wie übertrage ich ein Zertifikat sicher auf den virtuellen Computer?

Um ein Zertifikat sicher auf den virtuellen Computer zu übertragen, können Sie ein Kundenzertifikat aus dem Schlüsseltresor des Kunden direkt in einem Windows-Zertifikatspeicher installieren.

Verwenden Sie dazu den folgenden JSON-Code:

"secrets": [
    {
        "sourceVault": {
            "id": "/subscriptions/{subscriptionid}/resourceGroups/myrg1/providers/Microsoft.KeyVault/vaults/mykeyvault1"
        },
        "vaultCertificates": [
            {
                "certificateUrl": "https://mykeyvault1.vault.azure.net/secrets/{secretname}/{secret-version}",
                "certificateStore": "certificateStoreName"
            }
        ]
    }
]

Der Code ist für Windows und Linux geeignet.

Weitere Informationen finden Sie unter Create or update a set (Erstellen oder Aktualisieren einer Gruppe).

Wie verwende ich selbstsignierte Zertifikate, die für Azure Service Fabric-Cluster bereitgestellt werden?

Verwenden Sie für das neueste Beispiel in einer Azure-Shell die folgende Azure CLI-Anweisung, die an stdout ausgegeben wird:

az sf cluster create -h

Selbstsignierte Zertifikate können nicht für die verteilte Vertrauensstellung verwendet werden, die von einer Zertifizierungsstelle bereitgestellt wird, und sollten nicht für einen Service Fabric-Cluster verwendet werden, der zum Hosten von Produktionslösungen in Unternehmen vorgesehen ist. Weitere Sicherheitsleitfäden finden Sie unter Bewährte Methoden für die Azure Service Fabric-Sicherheit sowie unter Szenarien für die Clustersicherheit in Service Fabric.

Kann ich für die SSH-Authentifizierung bei einer Linux-VM-Skalierungsgruppe ein zu verwendendes SSH-Schlüsselpaar über eine Resource Manager-Vorlage angeben?

Ja. Die REST-API für osProfile ist der standardmäßigen VM-REST-API ähnlich.

Nehmen Sie osProfile in Ihre Vorlage auf:

"osProfile": {
    "computerName": "[variables('vmName')]",
    "adminUsername": "[parameters('adminUserName')]",
    "linuxConfiguration": {
        "disablePasswordAuthentication": "true",
        "ssh": {
            "publicKeys": [
                {
                    "path": "[variables('sshKeyPath')]",
                    "keyData": "[parameters('sshKeyData')]"
                }
            ]
        }
    }
}

Dieser JSON-Block wird in dieser Azure-Schnellstartvorlage verwendet.

Weitere Informationen finden Sie unter Create or update a set (Erstellen oder Aktualisieren einer Gruppe).

Wie entferne ich veraltete Zertifikate?

Ein veraltetes Zertifikat können Sie entfernen, indem Sie es aus der Liste mit den Tresorzertifikaten entfernen. Belassen Sie alle Zertifikate, die auf dem Computer bleiben sollen, in der Liste. Dadurch wird das Zertifikat nicht von allen Ihren virtuellen Computern entfernt. Auch wird das Zertifikat nicht zu neuen virtuellen Computern hinzugefügt, die in der VM-Skalierungsgruppe erstellt werden.

Wenn Sie das Zertifikat von vorhandenen virtuellen Computern entfernen möchten, verwenden Sie eine benutzerdefinierte Skripterweiterung, die das Zertifikat manuell aus Ihrem Zertifikatspeicher entfernt.

Wie kann ich einen vorhandenen öffentlichen SSH-Schlüssel während der Bereitstellung in die SSH-Schicht der VM-Skalierungsgruppe einfügen?

Wenn Sie die virtuellen Computer nur mit einem öffentlichen SSH-Schlüssel bereitstellen, müssen Sie die öffentlichen Schlüssel nicht in Azure Key Vault speichern. Öffentliche Schlüssel sind nicht geheim.

Sie können öffentliche SSH-Schlüssel bei der Erstellung eines virtuellen Linux-Computers im Nur-Text-Format angeben:

"linuxConfiguration": {
    "ssh": {
        "publicKeys": [
            {
                "path": "path",
                "keyData": "publickey"
            }
        ]
    }
}
linuxConfiguration-Elementname Erforderlich type BESCHREIBUNG
ssh Nein Collection Gibt die SSH-Schlüsselkonfiguration für ein Linux-Betriebssystem an.
path Ja String Gibt den Linux-Dateipfad für die SSH-Schlüssel oder das Zertifikat an.
keyData Ja String Gibt einen Base64-codierten öffentlichen SSH-Schlüssel an.

Ein Beispiel finden Sie in der GitHub-Schnellstartvorlage vm-sshkey.

Warum wird eine Fehlermeldung angezeigt, wenn ich „Update-AzVmss“ ausführe, nachdem ich mehr als ein Zertifikat aus demselben Schlüsseltresor hinzugefügt habe?

Dieser Fall kann eintreten, wenn Sie versuchen, den gleichen Tresor erneut hinzuzufügen, anstatt ein neues Zertifikat für den vorhandenen Quelltresor zu verwenden. Der Befehl Add-AzVmssSecret funktioniert nicht ordnungsgemäß, wenn Sie weitere Geheimnisse hinzufügen.

Aktualisieren Sie die folgende Liste, um weitere Geheimnisse aus demselben Schlüsseltresor hinzuzufügen: $vmss.properties.osProfile.secrets[0].vaultCertificates.

Die erwartete Eingabestruktur finden Sie unter Create or update a set (Erstellen oder Aktualisieren einer Gruppe).

Suchen Sie im Schlüsseltresor das Geheimnis im VM-Skalierungsgruppenobjekt. Fügen Sie anschließend Ihren Zertifikatsverweis (URL und Name des Geheimnisspeichers) der dem Tresor zugeordneten Liste hinzu.

Hinweis

Derzeit können Zertifikate nicht mithilfe der VM-Skalierungsgruppen-API von virtuellen Computern entfernt werden.

Neue virtuelle Computer verfügen nicht über das alte Zertifikat. Virtuelle Computer, die über das Zertifikat verfügen und bereits bereitgestellt wurden, besitzen allerdings das alte Zertifikat.

Kann ich Zertifikate mithilfe von Push ohne Angabe des Kennworts an die VM-Skalierungsgruppe übertragen, wenn sich das Zertifikat im Geheimnisspeicher befindet?

In Skripts müssen keine hartcodierten Kennwörter verwendet werden. Sie können dynamisch Kennwörter mit den Berechtigungen abrufen, die Sie zum Ausführen des Bereitstellungsskripts verwenden. Wenn Sie über ein Skript verfügen, das ein Zertifikat aus dem Geheimnisspeicher-Schlüsseltresor verschiebt, gibt der Geheimnisspeicherbefehl get certificate auch das Kennwort der PFX-Datei aus.

Wie funktioniert die Secrets-Eigenschaft von „virtualMachineProfile.osProfile“ für eine VM-Skalierungsgruppe? Warum benötige ich den sourceVault-Wert, wenn ich den absoluten URI für ein Zertifikat mithilfe der certificateUrl-Eigenschaft angeben muss?

In der Secrets-Eigenschaft des Betriebssystemprofils muss ein WinRM-Zertifikatverweis (Windows Remote Management) vorhanden sein.

Die Angabe des Quelltresors dient zur Erzwingung von ACL-Richtlinien (Access Control List; Zugriffssteuerungsliste) aus dem Azure Cloud Services-Modell eines Benutzers. Ohne Angabe des Quelltresors können Benutzer über einen Anbieter von Computeressourcen (Compute Resource Provider, CRP) auch ohne entsprechende Berechtigungen Geheimnisse in einem Schlüsseltresor bereitstellen oder darauf zugreifen. ACLs sind sogar für nicht vorhandene Ressourcen vorhanden.

Wenn Sie eine falsche Quelltresor-ID und eine gültige Schlüsseltresor-URL angeben, wird beim Abfragen des Vorgangs ein Fehler gemeldet.

Wenn ich einer vorhandenen VM-Skalierungsgruppe Geheimnisse hinzufüge, werden diese in vorhandene virtuelle Computer eingefügt oder nur in neue?

Zertifikate werden allen Ihren virtuellen Computern hinzugefügt. Das gilt auch für bereits vorhandene virtuelle Computer. Wenn die upgradePolicy-Eigenschaft Ihrer VM-Skalierungsgruppe auf manual festgelegt ist, wird das Zertifikat dem virtuellen Computer hinzugefügt, wenn Sie ein manuelles Update auf dem virtuellen Computer ausführen.

Wohin platziere ich Zertifikate für virtuelle Linux-Computer?

Eine Anleitung zum Bereitstellen von Zertifikaten für virtuelle Linux-Computer finden Sie unter Deploy Certificates to VMs from customer-managed Key Vault (Bereitstellen von Zertifikaten für virtuelle Computer über eine vom Kunden verwaltete Key Vault-Instanz).

Wie füge ich einem neuen Zertifikatobjekt ein neues Tresorzertifikat hinzu?

Sehen Sie sich das folgende PowerShell-Beispiel an, wenn Sie einem vorhandenen Geheimnis ein Tresorzertifikat hinzufügen möchten. Verwenden Sie nur ein einzelnes Geheimnisobjekt.

$newVaultCertificate = New-AzVmssVaultCertificateConfig -CertificateStore MY -CertificateUrl https://sansunallapps1.vault.azure.net:443/secrets/dg-private-enc/55fa0332edc44a84ad655298905f1809

$vmss.VirtualMachineProfile.OsProfile.Secrets[0].VaultCertificates.Add($newVaultCertificate)

Update-AzVmss -VirtualMachineScaleSet $vmss -ResourceGroup $rg -Name $vmssName

Was geschieht mit Zertifikaten, wenn ein Reimaging für einen virtuellen Computer durchgeführt wird?

Wenn Sie für einen virtuellen Computer ein Reimaging durchführen, werden die Zertifikate gelöscht. Durch das Reimaging wird der gesamte Betriebssystemdatenträger gelöscht.

Was geschieht, wenn ein Zertifikat aus dem Schlüsseltresor gelöscht wird?

Wenn das Geheimnis aus dem Schlüsseltresor gelöscht wird und Sie anschließend für alle Ihre virtuellen Computer stop deallocate ausführen und diese dann neu starten, tritt ein Fehler auf. Der Grund für den Fehler: Der CRP muss das Geheimnis aus dem Schlüsseltresor abrufen, das ist aber nicht möglich. In diesem Szenario können Sie die Zertifikate aus dem VM-Skalierungsgruppenmodell löschen.

Durch die CRP-Komponente werden Kundengeheimnisse nicht persistent. Wenn Sie stop deallocate für alle virtuellen Computer in der VM-Skalierungsgruppe ausführen, wird der Cache gelöscht. In diesem Szenario werden die Geheimnisse aus dem Schlüsseltresor abgerufen.

Beim horizontalen Hochskalieren tritt dieses Problem nicht auf, da eine zwischengespeicherte Kopie des Geheimnisses in Azure Service Fabric (im Einzelfabric-Mandantenmodell) vorhanden ist.

Warum muss ich bei Verwendung von Key Vault die Zertifikatversion angeben?

Der Zweck besteht darin, die Benutzer wissen zu lassen, welches Zertifikat genau auf ihren virtuellen Computern bereitgestellt wird.

Wenn Sie einen virtuellen Computer erstellen und anschließend Ihr Geheimnis im Schlüsseltresor aktualisieren, wird das neue Zertifikat nicht auf Ihre virtuellen Computer heruntergeladen. Ihre virtuellen Computer scheinen jedoch darauf zu verweisen, und neue virtuelle Computer erhalten das neue Geheimnis. Um das zu vermeiden, müssen Sie auf eine Geheimnisversion verweisen.

Mein Team arbeitet mit mehreren Zertifikaten, die uns als öffentliche CER-Schlüssel zur Verfügung gestellt werden. Wie stelle ich diese Zertifikate am besten für eine VM-Skalierungsgruppe bereit?

Wenn Sie öffentliche CER-Schlüssel für eine VM-Skalierungsgruppe bereitstellen möchten, können Sie eine PFX-Datei erstellen, die nur CER-Dateien enthält. Verwenden Sie hierzu X509ContentType = Pfx. Laden Sie beispielsweise die CER-Datei als x509Certificate2-Objekt in C# oder PowerShell, und rufen Sie dann die Methode auf.

Für weitere Informationen siehe X509Certificate.Export Method (X509ContentType, String).

Wie übergebe ich Zertifikate als base64-Zeichenfolgen?

Sie können das Übergeben eines Zertifikats als Base64-Zeichenfolge emulieren, indem Sie die neueste URL mit Versionsangabe in einer Resource Manager-Vorlage extrahieren. Schließen Sie in Ihre Resource Manager-Vorlage die folgende JSON-Eigenschaft ein:

"certificateUrl": "[reference(resourceId(parameters('vaultResourceGroup'), 'Microsoft.KeyVault/vaults/secrets', parameters('vaultName'), parameters('secretName')), '2015-06-01').secretUriWithVersion]"

Muss ich Zertifikate in Schlüsseltresoren mit JSON-Objekten umschließen?

In VM-Skalierungsgruppen und auf virtuellen Computern müssen Zertifikate mit JSON-Objekten umschlossen werden.

Wir unterstützen auch den Inhaltstyp application/x-pkcs12.

CER-Dateien werden aktuell nicht unterstützt. Zu verwendende CER-Dateien müssen in PFX-Container exportiert werden.

Konformität und Sicherheit

Sind VM-Skalierungsgruppen PCI-konform?

Bei VM-Skalierungsgruppen handelt es sich um eine dünne API-Schicht über dem CRP. Beide Komponenten sind Teil der Computeplattform in der Azure-Dienststruktur.

VM-Skalierungsgruppen sind hinsichtlich der Konformität ein grundlegender Bestandteil der Azure-Computeplattform. Sie teilen sich folgende Dinge mit dem eigentlichen CRP: Team, Tools, Prozesse, Bereitstellungsmethode, Sicherheitskontrollen, JIT-Kompilierung, Überwachung und Warnungen. VM-Skalierungsgruppen sind PCI-konform (Payment Card Industry), da der CRP Teil des aktuellen PCI DSS-Nachweises (Data Security Standard) ist.

Weitere Informationen finden Sie im Microsoft Trust Center.

Können verwaltete Identitäten für Azure-Ressourcen zusammen mit einer VM-Skalierungsgruppe verwendet werden?

Ja. Weitere Informationen finden Sie in der Übersicht zu verwalteten Identitäten. Einige MSI-Beispielvorlagen finden Sie in den Azure-Schnellstartvorlagen für Linux und Windows.

Wird gelöscht

Werden die Sperren, die ich für Instanzen von VM-Skalierungsgruppen festgelegt habe, beim Löschen von Instanzen beachtet?

Im Azure-Portal haben Sie die Möglichkeit, eine einzelne Instanz zu löschen oder mehrere Instanzen auszuwählen und gleichzeitig in einem Schritt zu löschen. Wenn Sie versuchen, eine einzelne gesperrte Instanz zu löschen, wird die Sperre beachtet, sodass Sie die Instanz nicht löschen können. Wenn Sie jedoch mehrere Instanzen durch Mehrfachauswahl auswählen und für eine dieser Instanzen eine Sperre aktiv ist, werden die Sperren nicht beachtet. Alle ausgewählten Instanzen werden gelöscht.

An der Azure-Befehlszeilenschnittstelle können Sie nur eine einzelne Instanz löschen. Wenn Sie versuchen, eine einzelne gesperrte Instanz zu löschen, wird die Sperre beachtet, sodass Sie die Instanz nicht löschen können.

Erweiterungen

Wie lösche ich eine VM-Skalierungsgruppenerweiterung?

Verwenden Sie zum Löschen einer VM-Skalierungsgruppenerweiterung das folgende PowerShell-Beispiel:

$vmss = Get-AzVmss -ResourceGroupName "resource_group_name" -VMScaleSetName "vmssName"

$vmss=Remove-AzVmssExtension -VirtualMachineScaleSet $vmss -Name "extensionName"

Update-AzVmss -ResourceGroupName "resource_group_name" -VMScaleSetName "vmssName" -VirtualMacineScaleSet $vmss

Sie finden den Wert extensionName in $vmss.

Gibt es ein Beispiel für eine VM-Skalierungsgruppenvorlage, die in Azure Monitor-Protokolle integriert ist?

Ein Beispiel für eine VM-Skalierungsgruppenvorlage, die in Azure Monitor-Protokolle integriert ist, finden Sie unter Deploy Azure Service Fabric Cluster and enable monitoring using Azure Monitor logs (Bereitstellen eines Azure Service Fabric-Clusters und Aktivieren der Überwachung mithilfe von Azure Monitor-Protokollen) im zweiten Beispiel.

Wie füge ich allen virtuellen Computern in meiner VM-Skalierungsgruppe eine Erweiterung hinzu?

Wenn die Aktualisierungsrichtlinie auf „Automatisch“ festgelegt ist, werden durch die erneute Bereitstellung der Vorlage mit den neuen Erweiterungseigenschaften alle virtuellen Computer aktualisiert.

Wenn die Aktualisierungsrichtlinie auf „Manuell“ festgelegt ist, aktualisieren Sie zunächst die Erweiterung, und aktualisieren Sie anschließend manuell alle Instanzen auf Ihren virtuellen Computern.

Hat die Aktualisierung der Erweiterungen, die einer vorhandenen VM-Skalierungsgruppe zugeordnet sind, Auswirkungen auf bereits vorhandene virtuelle Computer?

Wenn die Erweiterungsdefinition im VM-Skalierungsgruppenmodell aktualisiert wird und die upgradePolicy-Eigenschaft auf automatic festgelegt ist, werden die virtuellen Computer aktualisiert. Wenn die upgradePolicy-Eigenschaft auf manual festgelegt ist, werden Erweiterungen als nicht mit dem Modell übereinstimmend gekennzeichnet.

Werden Erweiterungen erneut ausgeführt, wenn ein vorhandener Computer vom Dienst repariert oder ein Reimaging für ihn durchgeführt wird?

Wenn ein vorhandener virtueller Computer vom Dienst repariert wird, wird dies wie ein Neustart behandelt, und die Erweiterungen werden nicht erneut ausgeführt. Wird ein Reimaging für eine VM durchgeführt, ist der Prozess ähnlich wie das Ersetzen des Betriebssystemlaufwerks durch das Quellimage. Sämtliche Spezialisierungen aus dem neuesten Modell (etwa Erweiterungen) werden erneut ausgeführt.

Wie füge ich eine VM-Skalierungsgruppe einer Active Directory-Domäne hinzu?

Es kann eine Erweiterung definiert werden, um einer Active Directory-Domäne eine VM-Skalierungsgruppe hinzuzufügen.

Verwenden Sie zum Definieren einer Erweiterung die JsonADDomainExtension-Eigenschaft:

"extensionProfile": {
    "extensions": [
        {
            "name": "joindomain",
            "properties": {
                "publisher": "Microsoft.Compute",
                "type": "JsonADDomainExtension",
                "typeHandlerVersion": "1.3",
                "settings": {
                    "Name": "[parameters('domainName')]",
                    "OUPath": "[variables('ouPath')]",
                    "User": "[variables('domainAndUsername')]",
                    "Restart": "true",
                    "Options": "[variables('domainJoinOptions')]"
                },
                "protectedsettings": {
                    "Password": "[parameters('domainJoinPassword')]"
                }
            }
        }
    ]
}

Meine VM-Skalierungsgruppenerweiterung versucht, etwas installieren, das einen Neustart erfordert. Wie sollte ich vorgehen?

Sie können die Azure Automation Desired State Configuration-Erweiterung verwenden. Bei Verwendung des Betriebssystems Windows Server 2012 R2 führt Azure das WMF 5.0-Setup (Windows Management Framework) aus, startet neu und setzt dann die Konfiguration fort.

Wie führe ich ein benutzerdefiniertes Skript aus, das in einem privaten Speicherkonto gehostet wird?

Richten Sie geschützte Einstellungen mit dem Speicherkontoschlüssel und -namen ein. Weitere Informationen finden Sie unter Benutzerdefinierte Skripterweiterung.

Kennwörter

Wie setze ich das Kennwort für virtuelle Computer in meiner VM-Skalierungsgruppe zurück?

Ihre Möglichkeiten:

  • Ändern Sie das Modell der VM-Skalierungsgruppe direkt. Diese Option ist nur für API 2017-12-01 und höher verfügbar.

    Aktualisieren Sie die Administratoranmeldeinformationen direkt im Skalierungsgruppenmodell (z. B. mit dem Azure-Ressourcen-Explorer, mit PowerShell oder mit der Azure CLI). Nachdem die Skalierungsgruppe aktualisiert wurde, werden für alle neuen virtuellen Computer die neuen Anmeldeinformationen verwendet. Vorhandene virtuelle Computer erhalten die neuen Anmeldeinformationen nur, wenn für sie ein Reimaging durchgeführt wird.

  • Setzen Sie das Kennwort mithilfe der Zugriffserweiterungen für virtuelle Computer zurück. Achten Sie darauf, den Kennwortanforderungen zu folgen, wie in den häufig gestellten Fragen beschrieben.

    Bei Verwendung einer VM-Zugriffserweiterung ist kein Reimaging erforderlich, da durch die Erweiterung das Kennwort im Modell nicht aktualisiert wird. Die Erweiterung führt ein Skript aus, um das Kennwort an das Kennwort oder an die SSH-Schlüsseldatei anzufügen. Die Erweiterung entfernt nicht den ursprünglichen SSH-Schlüssel. Nachdem die Erweiterung aktualisiert wurde, aktualisieren Sie die Instanzen, um die Updates auf den Benutzernamen und das Kennwort für alle VM-Instanzen anzuwenden.

    Hinweis

    Wenn die Richtlinie für automatische Upgrades auf manual festgelegt ist, wählen Sie die Instanz manuell aus, um einen Upgradevorgang für einzelne VM-Instanzen auszuführen. Wenn das automatische Upgrade auf Auto festgelegt ist, wird die Erweiterung automatisch aktualisiert. Weitere Informationen finden Sie unter Automatische Aktualisierungen der Erweiterung

    Verwenden Sie das folgende PowerShell-Beispiel für einen Skalierungssatz Windows virtueller Computer:

    $vmssName = "myvmss"
    $vmssResourceGroup = "myvmssrg"
    $publicConfig = @{"UserName" = "newuser"}
    $privateConfig = @{"Password" = "********"}
    
    $extName = "VMAccessAgent"
    $publisher = "Microsoft.Compute"
    $vmss = Get-AzVmss -ResourceGroupName $vmssResourceGroup -VMScaleSetName $vmssName
    $vmss = Add-AzVmssExtension -VirtualMachineScaleSet $vmss -Name $extName -Publisher $publisher -Setting $publicConfig -ProtectedSetting $privateConfig -Type $extName -TypeHandlerVersion "2.0" -AutoUpgradeMinorVersion $true
    Update-AzVmss -ResourceGroupName $vmssResourceGroup -Name $vmssName -VirtualMachineScaleSet $vmss
    

    Verwenden Sie das folgende Azure CLI-Beispiel für eine Skalierungsgruppe virtueller Linux-Computer:

    az vmss extension set \
      --resource-group myResouceGroup \ 
      --vmss-name myScaleSet \
      --publisher Microsoft.OSTCExtensions \
      --name VMAccessForLinux \
      --version 1.5 \
      --protected-settings "{'username': 'newUser', 'password': 'newPassword'}"
    

Netzwerk

Kann einer Skalierungsgruppe eine Netzwerksicherheitsgruppe (NSG) zugewiesen werden, sodass diese für alle VM-NICs in der Gruppe gilt?

Ja. Sie können eine NSG direkt auf eine Skalierungsgruppe anwenden, indem Sie im networkInterfaceConfigurations-Abschnitt des Netzwerkprofils direkt auf sie verweisen. Hier sehen Sie ein Beispiel:

"networkProfile": {
    "networkInterfaceConfigurations": [
        {
            "name": "nic1",
            "properties": {
                "primary": "true",
                "ipConfigurations": [
                    {
                        "name": "ip1",
                        "properties": {
                            "subnet": {
                                "id": "[concat('/subscriptions/', subscription().subscriptionId,'/resourceGroups/', resourceGroup().name, '/providers/Microsoft.Network/virtualNetworks/', variables('vnetName'), '/subnets/subnet1')]"
                            },
                            "loadBalancerInboundNatPools": [
                                {
                                    "id": "[concat('/subscriptions/', subscription().subscriptionId,'/resourceGroups/', resourceGroup().name, '/providers/Microsoft.Network/loadBalancers/', variables('lbName'), '/inboundNatPools/natPool1')]"
                                }
                            ],
                            "loadBalancerBackendAddressPools": [
                                {
                                    "id": "[concat('/subscriptions/', subscription().subscriptionId,'/resourceGroups/', resourceGroup().name, '/providers/Microsoft.Network/loadBalancers/', variables('lbName'), '/backendAddressPools/addressPool1')]"
                                }
                            ]
                        }
                    }
                ],
                "networkSecurityGroup": {
                    "id": "[concat('/subscriptions/', subscription().subscriptionId,'/resourceGroups/', resourceGroup().name, '/providers/Microsoft.Network/networkSecurityGroups/', variables('nsgName'))]"
                }
            }
        }
    ]
}

Wie führe ich einen Tausch der virtuellen IP-Adresse (VIP) für VM-Skalierungsgruppen im gleichen Abonnement und in der gleichen Region aus?

Wenn Sie zwei VM-Skalierungsgruppen mit Azure Load Balancer haben und diese sich im gleichen Abonnement und der gleichen Region befinden, können Sie die Zuordnung der öffentlichen IP-Adressen zu den einzelnen Skalierungsgruppen aufheben und sie der jeweils anderen zuordnen. Weitere Informationen dazu finden Sie unter VIP Swap: Blue-green deployment in Azure Resource Manager (VIP-Tausch: Blaugrünbereitstellung in Azure Resource Manager). Dies führt jedoch wahrscheinlich zu Verzögerungen während der Zuordnung der Ressourcen auf Netzwerkebene bzw. während ihrer Aufhebung. Eine schnellere Option ist die Verwendung von Azure Application Gateway mit zwei Back-End-Pools und einer Routingregel. Alternativ können Sie Ihre Anwendung mit Azure App Service hosten. Dieser Dienst bietet Unterstützung für das schnelle Wechseln zwischen Staging- und Produktionsslots.

Wie gebe ich einen Bereich privater IP-Adressen für die statische private IP-Adresszuordnung an?

IP-Adressen werden in einem von Ihnen angegebenen Subnetz ausgewählt.

Die IP-Adresszuordnungsmethode für VM-Skalierungsgruppen ist immer dynamisch. Das bedeutet aber nicht, dass sich diese IP-Adressen ändern können. In diesem Fall bedeutet „dynamisch“ lediglich, dass Sie die IP-Adresse nicht in einer PUT-Anforderung angeben. Verwenden Sie zum Angeben der statischen Gruppe das Subnetz.

Wie stelle ich eine VM-Skalierungsgruppe für ein vorhandenes virtuelles Azure-Netzwerk bereit?

Lesen Sie dazu Deploy a virtual machine scale set to an existing virtual network (Bereitstellen einer VM-Skalierungsgruppe für ein vorhandenes VNET).

Kann ich Skalierungsgruppen mit beschleunigten Netzwerken verwenden?

Ja. Wenn Sie beschleunigte Netzwerke verwenden möchten, legen Sie enableAcceleratedNetworking in den networkInterfaceConfigurations-Einstellungen Ihrer Skalierungsgruppe auf true fest. Beispiel:

"networkProfile": {
    "networkInterfaceConfigurations": [
        {
            "name": "niconfig1",
            "properties": {
                "primary": true,
                "enableAcceleratedNetworking" : true,
                "ipConfigurations": [
                ]
            }
        }
    ]
}

Wie kann ich den DNS-Server konfigurieren, der von einer Skalierungsgruppe verwendet wird?

Zum Erstellen einer VM-Skalierungsgruppe mit benutzerdefinierter DNS-Konfiguration fügen Sie dem networkInterfaceConfigurations-Abschnitt der Skalierungsgruppe ein dnsSettings-JSON-Paket hinzu. Hier sehen Sie ein Beispiel:

    "dnsSettings":{
        "dnsServers":["10.0.0.6", "10.0.0.5"]
    }

Wie kann ich eine Skalierungsgruppe so konfigurieren, dass sie jeder VM eine öffentliche IP-Adresse zuordnet?

Achten Sie beim Erstellen einer VM-Skalierungsgruppe, die jeder VM eine öffentliche IP-Adresse zuweist, darauf, dass die API-Version der Ressource Microsoft.Compute/virtualMachineScaleSets „2017-03-30“ ist, und fügen Sie ein publicipaddressconfiguration-JSON-Paket im Abschnitt ipConfigurations der Skalierungsgruppe hinzu. Hier sehen Sie ein Beispiel:

    "publicipaddressconfiguration": {
        "name": "pub1",
        "properties": {
        "idleTimeoutInMinutes": 15
        }
    }

Kann ich eine Skalierungsgruppe für die Verwendung mit mehreren Application Gateway-Instanzen konfigurieren?

Ja. Sie können die Ressourcen-IDs für mehrere Back-End-Adresspools des Anwendungsgateways der applicationGatewayBackendAddressPools-Liste im Abschnitt ipConfigurations des Netzwerkprofils Ihrer Skalierungsgruppe hinzufügen.

Skalieren

In welchem Fall erstelle ich eine VM-Skalierungsgruppe mit weniger als zwei virtuellen Computern?

Ein Grund für die Erstellung einer VM-Skalierungsgruppe mit weniger als zwei virtuellen Computern ist die Verwendung der elastischen Eigenschaften einer VM-Skalierungsgruppe. So können Sie beispielsweise eine VM-Skalierungsgruppe ohne virtuelle Computer bereitstellen, um Ihre Infrastruktur zu definieren, ohne die laufenden Kosten für virtuelle Computer zu bezahlen. Wenn Sie dann für die Bereitstellung von virtuellen Computern bereit sind, können Sie die Kapazität der VM-Skalierungsgruppe auf die Anzahl von Produktionsinstanzen erhöhen.

Ein weiterer Grund für die Erstellung einer VM-Skalierungsgruppe mit weniger als zwei virtuellen Computern wäre, wenn Sie sich weniger Gedanken um die Verfügbarkeit machen, sondern eher auf die Verwendung einer Verfügbarkeitsgruppe mit diskreten virtuellen Computern Wert legen. VM-Skalierungsgruppen ermöglichen die Verwendung undifferenzierter, austauschbarer Computeeinheiten. Diese Einheitlichkeit ist ein wichtiges Unterscheidungsmerkmal von VM-Skalierungsgruppen im Vergleich zu Verfügbarkeitsgruppen. Bei vielen zustandslosen Workloads werden keine einzelnen Einheiten nachverfolgt. Sie können auf eine einzelne Computeeinheit herunterskalieren, wenn die Workload zurückgeht, und wieder auf viele Computeeinheiten hochskalieren, wenn sich die Workload erhöht.

Wie ändere ich die Anzahl von virtuellen Computern in einer VM-Skalierungsgruppe?

Zum Ändern der Anzahl der virtuellen Computer in einer VM-Skalierungsgruppe im Azure-Portal wählen Sie im Bereich Eigenschaften der VM-Skalierungsgruppe das Blatt Skalierung aus und verwenden den Schieberegler.

Wie definiere ich benutzerdefinierte Warnungen für das Erreichen bestimmter Schwellenwerte?

Warnungen für angegebene Schwellenwerte können mit einer gewissen Flexibilität gehandhabt werden. So können Sie beispielsweise benutzerdefinierte Webhooks definieren. Das folgende Webhookbeispiel stammt aus einer Resource Manager-Vorlage:

{
    "type": "Microsoft.Insights/autoscaleSettings",
    "apiVersion": "[variables('insightsApi')]",
    "name": "autoscale",
    "location": "[parameters('resourceLocation')]",
    "dependsOn": [
        "[concat('Microsoft.Compute/virtualMachineScaleSets/', parameters('vmSSName'))]"
    ],
    "properties": {
        "name": "autoscale",
        "targetResourceUri": "[concat('/subscriptions/',subscription().subscriptionId, '/resourceGroups/', resourceGroup().name, '/providers/Microsoft.Compute/virtualMachineScaleSets/', parameters('vmSSName'))]",
        "enabled": true,
        "notifications": [
            {
                "operation": "Scale",
                "email": {
                    "sendToSubscriptionAdministrator": true,
                    "sendToSubscriptionCoAdministrators": true,
                    "customEmails": [
                        "youremail@address.com"
                    ]
                },
                "webhooks": [
                    {
                        "serviceUri": "<service uri>",
                        "properties": {
                            "key1": "custommetric",
                            "key2": "scalevmss"
                        }
                    }
                ]
            }
        ]
    }
}

Patching und Verfahren

Kann ich eine Skalierungsgruppe in einer vorhandenen Ressourcengruppe erstellen?

Ja, das ist möglich.

Kann ich eine Skalierungsgruppe in eine andere Ressourcengruppe verschieben?

Ja, Sie können Skalierungsgruppenressourcen in ein neues Abonnement oder eine neue Ressourcengruppe verschieben.

Wie kann ich meine VM-Skalierungsgruppe auf ein neues Image aktualisieren? Wie verwalte das Patchen?

Informationen zum Aktualisieren Ihrer VM-Skalierungsgruppe auf ein neues Image sowie zum Verwalten des Patchens finden Sie unter Upgraden einer VM-Skalierungsgruppe.

Kann ich einen virtuellen Computer mittels Reimaging zurücksetzen, ohne das Image zu ändern? (Ich möchte einen virtuellen Computer auf die Werkseinstellungen zurücksetzen, nicht auf ein neues Image.)

Ja. Sie können einen virtuellen Computer mittels Reimaging zurücksetzen, ohne das Image zu ändern. Falls Ihre VM-Skalierungsgruppe allerdings auf ein Plattformimage mit version = latest verweist, kann Ihr virtueller Computer auf ein höheres Betriebssystemimage aktualisiert werden, wenn Sie reimage aufrufen.

Ist es möglich, Skalierungsgruppen in Azure Monitor-Protokolle zu integrieren?

Ja, Sie können dazu die Azure Monitor-Erweiterung auf den virtuellen Computern der Skalierungsgruppen installieren. Hier ist ein Beispiel, in dem die Azure CLI verwendet wird:

az vmss extension set --name MicrosoftMonitoringAgent --publisher Microsoft.EnterpriseCloud.Monitoring --resource-group Team-03 --vmss-name nt01 --settings "{'workspaceId': '<your workspace ID here>'}" --protected-settings "{'workspaceKey': '<your workspace key here'}"

Sie finden die erforderlichen workspaceId und workspaceKey im Log Analytics-Arbeitsbereich des Azure-Portals. Klicken Sie auf der Seite Übersicht auf die Kachel Einstellungen. Wählen Sie oben die Registerkarte Verbundene Datenquellen aus.

Hinweis

Wenn die upgradePolicy der Skalierungsgruppe auf „Manual“ festgelegt ist, müssen Sie die Erweiterung auf alle virtuellen Computer in der Gruppe anwenden, indem Sie für diese ein Upgrade durchführen. An der Azure CLI ist dies az vmss update-instances.

Hinweis

Dieser Artikel wurde kürzlich aktualisiert, um den Begriff Azure Monitor-Protokolle anstelle von Log Analytics aufzunehmen. Protokolldaten werden immer noch in einem Log Analytics-Arbeitsbereich gespeichert und weiterhin mit dem gleichen Log Analytics-Dienst erfasst und analysiert. Die Terminologie hat sich geändert, um der Rolle von Protokollen in Azure Monitor besser Rechnung zu tragen. Weitere Informationen finden Sie unter Terminologieänderungen bei Azure Monitor.

Problembehandlung

Wie aktiviere ich die Startdiagnose?

Erstellen Sie zum Aktivieren der Startdiagnose zunächst ein Speicherkonto. Fügen Sie dann den folgenden JSON-Block unter virtualMachineProfile in die VM-Skalierungsgruppe ein, und aktualisieren Sie die VM-Skalierungsgruppe:

"diagnosticsProfile": {
    "bootDiagnostics": {
        "enabled": true,
        "storageUri": "http://yourstorageaccount.blob.core.windows.net"
    }
}

Beim Erstellen eines neuen virtuellen Computers zeigt die InstanceView-Eigenschaft des virtuellen Computers die Details für den Screenshot usw. an. Hier sehen Sie ein Beispiel:

"bootDiagnostics": {
    "consoleScreenshotBlobUri": "https://o0sz3nhtbmkg6geswarm5.blob.core.windows.net/bootdiagnostics-swarmagen-4157d838-8335-4f78-bf0e-b616a99bc8bd/swarm-agent-9574AE92vmss-0_2.4157d838-8335-4f78-bf0e-b616a99bc8bd.screenshot.bmp",
    "serialConsoleLogBlobUri": "https://o0sz3nhtbmkg6geswarm5.blob.core.windows.net/bootdiagnostics-swarmagen-4157d838-8335-4f78-bf0e-b616a99bc8bd/swarm-agent-9574AE92vmss-0_2.4157d838-8335-4f78-bf0e-b616a99bc8bd.serialconsole.log"
}

Wie kann ich andere Probleme behandeln?

Eigenschaften für virtuelle Computer

Wie erhalte ich Informationen zu den Eigenschaften für die einzelnen virtuellen Computer, ohne mehrere Aufrufe auszuführen? Wie kann ich also beispielsweise die Fehlerdomäne für jeden der 100 virtuellen Computer in meiner VM-Skalierungsgruppe abrufen?

Sie können ListVMInstanceViews aufrufen, indem Sie einen GET-REST-API-Vorgang für den folgenden Ressourcen-URI ausführen:

/subscriptions/<subscription_id>/resourceGroups/<resource_group_name>/providers/Microsoft.Compute/virtualMachineScaleSets/<scaleset_name>/virtualMachines?$expand=instanceView&$select=instanceView

Beachten Sie, dass die Fehlerdomäne nicht zurückgegeben wird, wenn der Skalensatz die maximale Streuung verwendet (platformFaultDomainCount = 1), da es keine Garantie dafür gibt, wie viele Fehlerdomänen mit dieser Einstellung verwendet würden.

Kann ich unterschiedliche Erweiterungsargumente an verschiedene virtuelle Computer in einer VM-Skalierungsgruppe übergeben?

Nein, das ist nicht möglich. Erweiterungen können aber unter Berücksichtigung der eindeutigen Eigenschaften des ausführenden virtuellen Computers (beispielsweise des Computernamens) aktiv werden. Darüber hinaus können Erweiterungen Instanzmetadaten von http://169.254.169.254 abfragen, um weitere Informationen zu dem virtuellen Computer zu erhalten.

Warum gibt es Lücken (z. B. 0, 1, 3) zwischen den Namen der virtuellen Computer meiner VM-Skalierungsgruppe und den IDs virtueller Computer?

Die Lücken haben die Ursache, dass die Eigenschaft overprovision Ihrer VM-Skalierungsgruppe auf den Standardwert true festgelegt ist. Wenn die Überbereitstellung auf true festgelegt ist, werden mehr virtuelle Computer als angefordert bereitgestellt. Zusätzliche virtuelle Computer werden anschließend gelöscht. Dies erhöht zwar die Bereitstellungszuverlässigkeit, geht jedoch zulasten fortlaufender Namen und zusammenhängender Regeln für die Netzwerkadressenübersetzung (Network Address Translation, NAT).

Sie können diese Eigenschaft auf false festlegen. Bei kleinen VM-Skalierungsgruppen hat das keine nennenswerten Auswirkungen auf die Bereitstellungszuverlässigkeit.

Was ist der Unterschied zwischen dem Löschen eines virtuellen Computers in einer VM-Skalierungsgruppe und dem Aufheben der Zuordnung des virtuellen Computers? Wann sollte ich was wählen?

Der Hauptunterschied besteht darin, dass deallocate die virtuellen Festplatten (VHDs) nicht löscht. Das Ausführen von stop deallocate ist mit Speicherkosten verbunden. Im Anschluss finden Sie Gründe für die Verwendung der einzelnen Verfahren:

  • Sie möchten keine Computekosten mehr bezahlen, aber den Datenträgerzustand der virtuellen Computer beibehalten.
  • Sie möchten eine Gruppe virtueller Computer schneller starten als sich eine VM-Skalierungsgruppe aufskalieren lässt.
    • Im Zusammenhang mit diesem Szenario: Sie haben ggf. eine eigene Engine für die automatische Skalierung erstellt und möchten eine schnellere End-to-End-Skalierung erreichen.
  • Sie verfügen über eine VM-Skalierungsgruppe, die ungleichmäßig auf Fehler- oder Updatedomänen verteilt ist. Dieser Fall kann eintreten, wenn Sie selektiv virtuelle Computer gelöscht haben oder virtuelle Computer nach einer Überbereitstellung gelöscht wurden. Wenn Sie stop deallocate und anschließend start für die VM-Skalierungsgruppe ausführen, werden die virtuellen Computer gleichmäßig auf Fehler- oder Updatedomänen verteilt.

Wie erstelle ich eine Momentaufnahme einer VM-Skalierungsgruppeninstanz?

Erstellen Sie eine Momentaufnahme aus einer Instanz einer VM-Skalierungsgruppe. Hier sehen Sie ein Beispiel:

$rgname = "myResourceGroup"
$vmssname = "myVMScaleSet"
$Id = 0
$location = "East US"

$vmss1 = Get-AzVmssVM -ResourceGroupName $rgname -VMScaleSetName $vmssname -InstanceId $Id
$snapshotconfig = New-AzSnapshotConfig -Location $location -AccountType Standard_LRS -OsType Windows -CreateOption Copy -SourceUri $vmss1.StorageProfile.OsDisk.ManagedDisk.id
New-AzSnapshot -ResourceGroupName $rgname -SnapshotName 'mySnapshot' -Snapshot $snapshotconfig

Erstellen Sie einen verwalteten Datenträger aus der Momentaufnahme. Hier sehen Sie ein Beispiel:

$snapshotName = "mySnapshot"
$snapshot = Get-AzSnapshot -ResourceGroupName $rgname -SnapshotName $snapshotName
$diskConfig = New-AzDiskConfig -AccountType Premium_LRS -Location $location -CreateOption Copy -SourceResourceId $snapshot.Id
$osDisk = New-AzDisk -Disk $diskConfig -ResourceGroupName $rgname -DiskName ($snapshotName + '_Disk')