Share via


Hinzufügen von Unterstützung für VM-Skalierungsgruppenerweiterungen zu einem verwalteten Service Fabric-Clusterknotentyp

Jeder Knotentyp in einem verwalteten Service Fabric-Cluster wird von einer VM-Skalierungsgruppe unterstützt. Im Folgenden wird beschrieben, wie Sie VM-Skalierungsgruppenerweiterungen einem verwalteten Service Fabric-Clusterknotentyp hinzufügen. Erweiterungen sind kleine Anwendungen, die Konfiguration und Automatisierung für virtuelle Azure-Computer nach der Bereitstellung bereitstellen. Auf der Azure-Plattform werden Erweiterungen für viele Zwecke gehostet, z. B. VM-Konfiguration, Überwachung, Sicherheit und Hilfsprogramme. Herausgeber nehmen eine Anwendung, umschließen diese in einer Erweiterung und vereinfachen die Installation. Sie müssen lediglich noch die obligatorischen Parameter angeben.

Hinzufügen einer VM-Skalierungsgruppenerweiterung

Sie können einem verwalteten Service Fabric-Clusterknotentyp über den PowerShell-Befehl Add-AzServiceFabricManagedNodeTypeVMExtension eine VM-Skalierungsgruppenerweiterung hinzufügen.

Alternativ können Sie eine VM-Skalierungsgruppenerweiterung für einen verwalteten Service Fabric-Clusterknotentyp in Ihrer Azure Resource Manager-Vorlage hinzufügen. Beispiel:

{
  "type": "Microsoft.ServiceFabric/managedclusters/nodetypes",
  "apiVersion": "[variables('sfApiVersion')]",
  "name": "[concat(parameters('clusterName'), '/', parameters('nodeTypeName'))]",
  "dependsOn": [
    "[concat('Microsoft.ServiceFabric/managedclusters/', parameters('clusterName'))]"
  ],
  "location": "[resourceGroup().location]",
  "properties": {
    "isPrimary": true,
    ...
    "vmExtensions": [
      {
        "name": "KvExtension",
        "properties": {
          "publisher": "Microsoft.Azure.KeyVault",
          "type": "KeyVaultForWindows",
          "typeHandlerVersion": "3.0",
          "autoUpgradeMinorVersion": true,
          "settings": {
            "secretsManagementSettings": {
              "observedCertificates": [
                ...
              ]
            }
          }
        }
      }
    ]
  }
}

Weitere Informationen zum Konfigurieren von verwalteten Service Fabric-Clusterknotentypen finden Sie unter Verwalteter Clusterknotentyp.

Bereitstellung vor der Service Fabric-Runtime

Um Erweiterungen bereitzustellen, bevor die Service Fabric-Runtime gestartet wird, können Sie den setupOrder-Parameter mit dem Wert BeforeSFRuntime in den Erweiterungseigenschaften für jede Erweiterung wie erforderlich verwenden. Auf diese Weise können Sie die Umgebung und Abhängigkeiten einrichten, bevor die Runtime und Anwendungen auf dem Knoten ausgeführt werden. Im folgenden Beispiel finden Sie Erläuterungen:

Hinweis

Wenn bei einer mit BeforeSFRuntime gekennzeichneten Erweiterung ein Fehler auftritt, wird verhindert, dass die Service Fabric-Runtime gestartet wird. Folglich wird der Knoten aus der Sicht von Service Fabric ausgefallen sein. Daher ist es wichtig, diese Erweiterungen mit korrekten Konfigurationen aufrechtzuerhalten und umgehend alle Probleme zu beheben, die auftreten können, um die Integrität von Knoten innerhalb des Clusters sicherzustellen.

Anforderungen

Verwenden Sie die Service Fabric-API-Version 2023-09-01-preview oder höher.

ARM-Vorlagenbeispiel:

{
  "type": "Microsoft.ServiceFabric/managedclusters/nodetypes",
  "apiVersion": "2023-09-01-preview",
  "name": "[concat(parameters('clusterName'), '/', parameters('nodeTypeName'))]",
  "properties": {
    "isPrimary": true,
    ...
    "vmExtensions": [
        {
            "name": "KvExtension",
            "properties": {
                "setupOrder": [
                    "BeforeSFRuntime"
                ],
                "provisionAfterExtensions" [ "GenevaMonitoringExtension" ],
                "publisher": "Microsoft.Azure.KeyVault",
                "type": "KeyVaultForWindows",
                "typeHandlerVersion": "3.0",
                "autoUpgradeMinorVersion": true,
                "settings": {
                "secretsManagementSettings": {
                  "observedCertificates": [
                    ...
                  ]
                }
              }
            }
        },
        {
          "name": "GenevaMonitoringExtension",
          "properties": {
              "setupOrder": [
                    "BeforeSFRuntime"
                ],
              "autoUpgradeMinorVersion": true,
              "enableAutomaticUpgrade": true,
              "publisher": "Microsoft.Azure.Geneva",
              "type": "GenevaMonitoring",
              "typeHandlerVersion": "2.40",
              "settings": {
                "configurations": [
                  {
                    "ServiceArguments": {
                      ...
                    },
                    "UserArguments": {
                      ...
                    }
                  }
                ]
              }
          }
      }
    ]
  }
}

Hinweis

Spezielle Behandlung für die ADE-Erweiterung (AzureDiskEncryption): ADE muss vor der Service Fabric-Runtime ausgeführt werden, um zu gewährleisten, dass der Datenträger nach einem Reimaging entschlüsselt wird, sodass die Service Fabric-Runtime mit der Verwendung beginnen kann. Auch wenn die Erweiterung nicht explizit mit BeforeSFRuntime gekennzeichnet ist, wird sie vor der Runtime ausgeführt. Beachten Sie jedoch, dass die Aktivierung der Verschlüsselung auf dem Host über die Verwendung der ADE-Erweiterung empfohlen wird. Ausführliche Anweisungen finden Sie unter Aktivieren der Verschlüsselung auf dem Host.

Nächste Schritte

Weitere Informationen zu verwalteten Service Fabric-Clustern finden Sie in den folgenden Artikeln: