Pengantar MaintenanceControl pada kluster yang dikelola Service Fabric
Kluster yang dikelola Service Fabric memiliki beberapa operasi latar belakang yang diperlukan untuk menjaga semua kluster diperbarui, sehingga memastikan keamanan dan keandalan. Meskipun operasi ini sangat penting, tetapi menjalankan di latar belakang dapat mengakibatkan replika layanan untuk pindah ke node yang berbeda. Failover ini menghasilkan gangguan yang tidak diinginkan dan tidak perlu, jika operasi pemeliharaan dijalankan selama jam kerja puncak. Dengan dukungan untuk MaintenanceControl di kluster yang dikelola Service Fabric, pelanggan akan dapat menentukan jendela pemeliharaan berulang (harian, mingguan, bulanan) dan kustom untuk sumber daya kluster SFMC mereka, sesuai kebutuhan mereka. Semua operasi pemeliharaan latar belakang akan diizinkan untuk dijalankan hanya selama jendela pemeliharaan ini. MaintenanceControl berlaku untuk operasi latar belakang ini:
- Peningkatan OS Otomatis
- Peningkatan ekstensi otomatis
- Pembaruan versi runtime SF otomatis
- Pembaruan sertifikat kluster otomatis
Persyaratan:
- Konfigurasi jendela pemeliharaan hanya perlu ditentukan untuk sumber daya kluster yang dikelola Service Fabric
- Ukuran jendela minimum yang didukung adalah 5 jam
Bagaimana cara kerja MaintenanceControl untuk SFMC
- Pelanggan perlu menentukan konfigurasi pemeliharaan yang berisi jadwal dan aturan pengulangan untuk jendela pemeliharaan, dengan membuat sumber daya konfigurasi pemeliharaan dengan RP pemeliharaan. Detail Selengkapnya
- Dengan konfigurasi pemeliharaan ini, sumber daya penugasan dibuat untuk menetapkan konfigurasi pemeliharaan ke sumber daya kluster SFMC.
- pada pembuatan sumber daya penugasan, RP pemeliharaan memberi tahu ServiceFabric RP tentang tautan dan kontrol pemeliharaan kemudian diaktifkan pada kluster SFMC. Semua operasi pemeliharaan latar belakang diblokir di luar jendela pemeliharaan.
- Setiap kali jendela pemeliharaan diaktifkan sesuai jadwal dalam konfigurasi pemeliharaan, RP pemeliharaan memberi tahu ServiceFabric RP yang mengaktifkan jendela pemeliharaan pada kluster SFMC yang sesuai. Semua operasi latar belakang diizinkan untuk dijalankan selama jendela ini.
Contoh penyebaran
Berikut ini adalah proses langkah demi langkah untuk menyiapkan kluster dengan kontrol pemeliharaan. Unduh sampel ini, yang berisi semua sumber daya yang diperlukan. Sampel kluster terkelola SKU Service Fabric standar
Membuat grup sumber daya di wilayah:
Login-AzAccount Select-AzSubscription -SubscriptionId $subscriptionid New-AzResourceGroup -Name $myresourcegroup -Location $location
Buat sumber daya kluster:
Jalankan perintah ini untuk menyebarkan sumber daya kluster:
$parameters = @{ clusterName = $clusterName adminPassword = $VmAdminPassword clientCertificateThumbprint = $clientCertificateThumbprint } New-AzResourceGroupDeployment -Name "deploy_cluster" -ResourceGroupName $resourceGroupName -TemplateFile .\azuredeploy.json -TemplateParameterObject $parameters -Verbose
Konfigurasikan kontrol pemeliharaan pada kluster menggunakan konfigurasi pemeliharaan berikut:
Konfigurasi pemeliharaan ini menentukan jadwal pembaruan yang akan terjadi setiap hari mulai pukul 22.00 PST untuk 5 jam, mulai 30-05-2023. Detail selengkapnya tentang konfigurasi pemeliharaan
"resources": [
{
"type": "Microsoft.Maintenance/maintenanceConfigurations",
"apiVersion": "2022-07-01-preview",
"name": "mc1",
"location": "[parameters('location')]",
"properties": {
"maintenanceScope": "Resource",
"extensionProperties": {
"maintenanceSubScope": "SFMC"
},
"maintenanceWindow": {
"startDateTime": "2023-05-30 22:00",
"duration": "05:00",
"timeZone": "Pacific Standard Time",
"expirationDateTime": null,
"recurEvery": "1Day"
}
}
}
Catatan
Seperti yang dijelaskan dalam konfigurasi, konfigurasi pemeliharaan untuk sumber daya kluster SFMC harus memiliki maintenanceScope: 'Resource' dan maintenanceSubScope: 'SFMC'.
Setelah konfigurasi pemeliharaan dibuat, konfigurasi harus dilampirkan ke kluster SFMC, menggunakan sumber daya penugasan. Detail selengkapnya tentang penugasan:
"resources": [
{
"type": "Microsoft.Resources/deployments",
"apiVersion": "2022-09-01",
"name": "ConfigurationAssignmentsName",
"dependsOn": [
"[concat('Microsoft.Maintenance/maintenanceConfigurations/', 'mc1')]",
"[concat('Microsoft.ServiceFabric/managedclusters/', parameters('clusterName'))]"
],
"properties": {
"mode": "Incremental",
"template": {
"$schema": "http://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"resources": [
{
"apiVersion": "2022-07-01-preview",
"type": "Microsoft.Maintenance/configurationAssignments",
"name": "mc1Assignment",
"location": "[parameters('location')]",
"scope": "[concat('Microsoft.ServiceFabric/managedclusters/', parameters('clusterName'))]",
"tags": {},
"properties": {
"maintenanceConfigurationId": "/subscriptions/<subId>/resourcegroups/<rgName>/providers/microsoft.maintenance/maintenanceconfigurations/mc1"
}
}
]
}
},
"subscriptionId": "<subId>",
"resourceGroup": "<rgName>"
}
Catatan
- Untuk menonaktifkan kontrol pemeliharaan pada kluster, hapus penugasan untuk kluster.
- Sumber daya pemeliharaan dan sumber daya kluster SFMC harus dibuat di wilayah yang sama.
Catatan
Masalah yang diketahui:
- Harus ada satu sumber daya konfigurasi pemeliharaan terpenuhi yang ditetapkan ke kluster yang dikelola Service Fabric. Ada pekerjaan yang sedang berlangsung untuk mencegah penugasan lebih dari satu konfigurasi pemeliharaan. Hingga saat itu, pengguna diharapkan tidak melakukan beberapa penugasan konfigurasi untuk kluster yang sama.
- Menghapus hanya sumber daya konfigurasi pemeliharaan tidak akan menonaktifkan MaintenanceControl. Untuk menonaktifkan MaintenanceControl, Anda harus secara khusus menghapus configAssignment untuk kluster terlebih dahulu, sebelum menghapus sumber daya konfigurasi pemeliharaan.
- Pekerjaan untuk pengalaman Portal Microsoft Azure untuk kontrol pemeliharaan dengan SFMC saat ini sedang berlangsung, sehingga pelanggan tidak boleh hanya mengandalkan portal. Masalah dengan sumber daya pemeliharaan seperti kluster SFMC muncul sebagai sumber daya Komputer Virtual dan tidak dapat mencari/menetapkan kluster SFMC dari portal diketahui.