Dukungan ekstensi set skala mesin virtual pada jenis node cluster terkelola Service Fabric

Setiap jenis node dalam klaster yang dikelola Service Fabric didukung oleh set skala komputer virtual. Ini memungkinkan Anda untuk menambahkan ekstensi set skala komputer virtual ke jenis node klaster yang dikelola Service Fabric Anda. Ekstensi adalah aplikasi kecil yang menyediakan konfigurasi dan otomatisasi pasca penyebaran pada Azure VM. Platform Azure meng-hosting banyak ekstensi yang mencakup konfigurasi VM, pemantauan, keamanan, dan aplikasi utilitas. Penerbit mengambil aplikasi, membungkusnya menjadi ekstensi, dan menyederhanakan penginstalan. Yang perlu Anda lakukan adalah memberikan parameter wajib.

Tambahkan ekstensi set skala mesin virtual

Anda dapat menambahkan ekstensi set skala mesin virtual ke jenis simpul kluster terkelola Service Fabric menggunakan perintah PowerShell Add-AzServiceFabricManagedNodeTypeVMExtension.

Sebagai alternatif, Anda dapat menambahkan ekstensi set skala mesin virtual pada tipe node cluster terkelola Service Fabric di template Azure Resource Manager Anda, misalnya:

{
  "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": [
                ...
              ]
            }
          }
        }
      }
    ]
  }
}

Untuk informasi lebih lanjut tentang mengonfigurasi jenis node klaster yang dikelola Service Fabric, lihat jenis node klaster terkelola.

Cara memprovisikan sebelum runtime Service Fabric

Untuk menyediakan ekstensi sebelum runtime Service Fabric dimulai, Anda dapat menggunakan setupOrder parameter dengan nilai BeforeSFRuntime dalam properti ekstensi untuk setiap ekstensi sesuai kebutuhan. Ini memungkinkan Anda untuk menyiapkan lingkungan dan dependensi sebelum runtime dan aplikasi mulai berjalan pada simpul. Lihat contoh di bawah ini untuk klarifikasi:

Catatan

Penting untuk dicatat bahwa jika ekstensi yang ditandai dengan BeforeSFRuntime gagal, itu akan mencegah runtime Service Fabric dimulai. Akibatnya, node akan turun dari perspektif Service Fabric. Oleh karena itu, sangat penting untuk mempertahankan ekstensi ini dengan konfigurasi yang benar dan segera mengatasi masalah apa pun yang mungkin muncul untuk memastikan kesehatan node dalam kluster.

Persyaratan

Gunakan versi Service Fabric API atau yang lebih 2023-09-01-preview baru.

Contoh Templat ARM:

{
  "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": {
                      ...
                    }
                  }
                ]
              }
          }
      }
    ]
  }
}

Catatan

Penanganan khusus untuk ekstensi AzureDiskEncryption (ADE): ADE perlu berjalan sebelum runtime Service Fabric untuk memastikan bahwa disk didekripsi setelah operasi reimage, memungkinkan runtime Service Fabric untuk mulai menggunakannya. Bahkan jika ekstensi tidak secara eksplisit ditandai dengan BeforeSFRuntime, ekstensi akan berjalan sebelum runtime. Tetapi perhatikan bahwa mengaktifkan enkripsi di host disarankan daripada menggunakan ekstensi ADE. Untuk petunjuk terperinci, lihat Mengaktifkan enkripsi di host.

Langkah berikutnya

Untuk mempelajari selengkapnya tentang klaster yang dikelola Service Fabric, lihat: