Azure Sanal Makine Ölçek Kümeleri için otomatik örnek onarımları
Azure Sanal Makine Ölçek Kümeleri için otomatik örnek onarımlarının etkinleştirilmesi, bir dizi iyi durumdaki örneği koruyarak uygulamalar için yüksek kullanılabilirlik elde edilmesini sağlar. Uygulama Durumu uzantısı veya Yük dengeleyici sistem durumu yoklamaları tarafından iyi durumda olmayan bir örnek bulunursa, otomatik örnek onarımları iyi durumda olmayan örneği silme ve onu değiştirmek için yeni bir örnek oluşturma, iyi durumda olmayan örneği yeniden boyutlandırma veya iyi durumda olmayan örneği yeniden başlatma gibi onarım eylemlerini tetikleyerek örneği kurtarmayı dener.
Otomatik örnek onarımlarını kullanma gereksinimleri
Ölçek kümesi için uygulama durumu izlemeyi etkinleştirme
Ölçek kümesinde örnekler için uygulama durumu izleme etkinleştirilmelidir. Sistem durumu izleme, Uygulama Durumu uzantısı veya Yük dengeleyici sistem durumu yoklamaları kullanılarak yapılabilir; burada bir kerede yalnızca bir tane etkinleştirilebilir. Uygulama sistem durumu uzantısı veya yük dengeleyici yoklamaları, uygulama durumunu belirlemek için sanal makine örneklerinde yapılandırılan uygulama uç noktasına ping atar. Bu sistem durumu, ölçek kümesi düzenleyici tarafından örnek durumunu izlemek ve gerektiğinde onarımlar gerçekleştirmek için kullanılır.
Sistem durumu sağlamak için uç noktayı yapılandırma
Otomatik örnek onarımları ilkesini etkinleştirmeden önce, ölçek kümesi örneklerinizde uygulama sistem durumunu yayacak şekilde yapılandırılmış bir uygulama uç noktası olduğundan emin olun. Uygulama Durumu uzantısında sistem durumunu yapılandırmak için, İkili Sistem Durumu Durumları veya Zengin Sistem Durumu Durumları'nı kullanabilirsiniz. Yük dengeleyici sistem durumu yoklamalarını kullanarak sistem durumunu yapılandırmak için bkz . yoklama davranışı.
"İyi durumda değil" veya "Bilinmiyor" olarak işaretlenmiş örnekler için (Bilinmeyen durum yalnızca Uygulama Durumu uzantısıyla kullanılabilir - Zengin Sistem Durumu Durumları), ölçek kümesi tarafından otomatik onarımlar tetiklenir. Uç nokta yapılandırılırken istenmeyen örnek onarımlarını önlemek için otomatik onarım ilkesini etkinleştirmeden önce uygulama uç noktasının doğru yapılandırıldığından emin olun.
API sürümü
Otomatik onarım ilkesi, işlem API'si sürüm 2018-10-01 veya üzeri için desteklenir.
repairAction
Reimage ve Restart ayarı, işlem API'sinin 2021-11-01 veya üzeri sürümleri için desteklenir.
Kaynak veya abonelik taşıma kısıtlamaları
Otomatik onarım özelliği etkinleştirildiğinde ölçek kümeleri için kaynak veya abonelik taşımaları şu anda desteklenmemektedir.
Service Fabric ölçek kümeleri için kısıtlama
Bu özellik şu anda Service Fabric ölçek kümeleri için desteklenmemektedir.
Sağlama hataları olan VM'ler için kısıtlama
Otomatik onarımlar şu anda sağlama hatası nedeniyle vm örneğinin iyi durumda değil olarak işaretlendiği senaryoları desteklememektedir. Sistem durumu izleme ve otomatik onarım özelliklerini etkinleştirmek için VM'lerin başarıyla başlatılması gerekir.
Otomatik örnek onarımları nasıl çalışır?
Otomatik örnek onarım özelliği, bir ölçek kümesindeki tek tek örneklerin sistem durumunu izlemeye dayanır. Bir ölçek kümesindeki VM örnekleri, Uygulama Durumu uzantısı veya Yük dengeleyici sistem durumu yoklamaları kullanılarak uygulama durumu durumunu yayacak şekilde yapılandırılabilir. Bir örneğin iyi durumda olmadığını tespit edilirse, ölçek kümesi iyi durumda olmayan örnekte önceden yapılandırılmış bir onarım eylemi gerçekleştirir. Nesne kullanılarak automaticRepairsPolicy
Sanal Makine Ölçek Kümesi modelinde otomatik örnek onarımları etkinleştirilebilir.
Otomatik örnek onarım işlemi aşağıdaki gibi gider:
- Uygulama Durumu uzantısı veya Yük dengeleyici sistem durumu yoklamaları , her örnek için uygulama sistem durumunu almak için ölçek kümesindeki her sanal makinenin içindeki uygulama uç noktasına ping atar.
- Uç nokta 200 (Tamam) durumuyla yanıt verirse örnek "Sağlıklı" olarak işaretlenir. Diğer tüm durumlarda (uç noktaya ulaşılamıyorsa dahil), örnek "İyi durumda değil" olarak işaretlenir.
- Bir örneğin iyi durumda olmadığını tespit edildiğinde, ölçek kümesi yapılandırılan onarım eylemini (varsayılan değer Değiştir) iyi durumda olmayan örneğe uygular.
- Örnek onarımları toplu olarak gerçekleştirilir. Herhangi bir zamanda, ölçek kümesindeki toplam örneklerin %5'inden fazlası onarılır. Ölçek kümesinin 20'den az örneği varsa onarımlar aynı anda bir iyi durumda olmayan örnek için yapılır.
- Ölçek kümesindeki tüm iyi durumda olmayan örnekler onarılana kadar yukarıdaki işlem devam eder.
Kullanılabilir onarım eylemleri
Otomatik örnek onarımları için üç kullanılabilir onarım eylemi vardır: Değiştir, Yeniden Kullan ve Yeniden Başlat. Varsayılan onarım eylemi Değiştir'dir, ancak nesnenin altındaki automaticRepairsPolicy
ayarı değiştirerek repairAction
Otomatik onarımları Yeniden Kullan veya Yeniden Başlat'ı kullanacak şekilde yapılandırabilirsiniz.
Değiştir , iyi durumda olmayan örneği siler ve değiştirmek için yeni bir örnek oluşturur. Yeni örneği oluşturmak için en son Sanal Makine Ölçek Kümesi modeli kullanılır. Bu onarım eylemi varsayılandır.
Reimage , yeniden oluşturma işlemini iyi durumda olmayan örneğe uygular.
Yeniden başlatma , yeniden başlatma işlemini iyi durumda olmayan örneğe uygular.
Aşağıdaki tablo, üç onarım eylemi arasındaki farkları karşılaştırır:
Onarım eylemi | VM örneği kimliği korunuyor mu? | Özel IP korunuyor mu? | Yönetilen veri diski korunuyor mu? | Yönetilen işletim sistemi diski korunuyor mu? | Yerel (geçici) disk korunuyor mu? |
---|---|---|---|---|---|
Değiştir (varsayılan) | Hayır | Hayır | Hayır | Hayır | Hayır |
Yeniden görüntü oluştur | Yes | Evet | Evet | Hayı | Evet |
Yeniden başlat | Yes | Evet | Evet | Evet | Yes |
Otomatik onarım ilkesi altında onarım eyleminizi güncelleştirme hakkında ayrıntılı bilgi için, Otomatik onarımlarda onarım eylemi yapılandırma ilkesi bölümüne bakın.
İşlem grubu oluşturma
Otomatik örnek onarım işlemleri toplu olarak gerçekleştirilir. Herhangi bir zamanda, ölçek kümesindeki örneklerin %5'inden fazlası otomatik onarım ilkesi aracılığıyla onarılır. Bu işlem, aynı anda iyi durumda olmayan çok sayıda örneğin aynı anda silinmesini ve yeniden oluşturulmasını önlemeye yardımcı olur.
Yetkisiz kullanım süresi
Ölçek kümesinde gerçekleştirilen PUT, PATCH veya POST eylemi nedeniyle bir örnek durum değişikliği işleminden geçtiğinde, söz konusu örnekteki tüm onarım eylemleri yalnızca yetkisiz kullanım süresi sona erdikten sonra gerçekleştirilir. Yetkisiz kullanım süresi, örneğin sağlıklı duruma dönmesine izin veren süredir. Yetkisiz kullanım süresi, durum değişikliği tamamlandıktan sonra başlar ve bu da erken veya yanlışlıkla yapılan onarım işlemlerini önlemeye yardımcı olur. Yetkisiz kullanım süresi, onarım işlemi sonucunda oluşturulan örnek de dahil olmak üzere ölçek kümesinde yeni oluşturulan tüm örnekler için geçerlidir. Yetkisiz kullanım süresi ISO 8601 biçiminde dakika cinsinden belirtilir ve automaticRepairsPolicy.gracePeriod özelliği kullanılarak ayarlanabilir. Yetkisiz kullanım süresi 10 dakika ile 90 dakika arasında değişebilir ve varsayılan değeri 10 dakikadır.
Onarımların Askıya Alınması
Sanal Makine Ölçek Kümeleri gerekirse otomatik örnek onarımlarını geçici olarak askıya alma olanağı sağlar. Sanal Makine Ölçek Kümesi'nin örnek görünümünde orchestrationServices özelliği altında otomatik onarımlar için serviceState, otomatik onarımların geçerli durumunu gösterir. Bir ölçek kümesi otomatik onarımlara kabul edildiğinde, serviceState parametresinin değeri Çalışıyor olarak ayarlanır. Bir ölçek kümesi için otomatik onarımlar askıya alındığında serviceState parametresi Askıya Alındı olarak ayarlanır. Bir ölçek kümesinde automaticRepairsPolicy tanımlanıyorsa ancak otomatik onarımlar özelliği etkinleştirilmediyse serviceState parametresi Çalışmıyor olarak ayarlanır.
Bir ölçek kümesindeki iyi durumda olmayanları değiştirmek için yeni oluşturulan örnekler, sürekli onarım işlemleri gerçekleştirdikten sonra bile iyi durumda kalmaya devam ederse, güvenlik önlemi olarak platform otomatik onarımlar için serviceState'i Askıya Alındı olarak güncelleştirir. Otomatik onarımlar için serviceState değerini Çalışıyor olarak ayarlayarak otomatik onarımları yeniden sürdürebilirsiniz. Ayrıntılı yönergeler, ölçek kümeniz için otomatik onarım ilkesinin hizmet durumunu görüntüleme ve güncelleştirme bölümünde verilmiştir.
Ayrıca serviceState değişikliklerini izlemek ve ölçek kümenizde otomatik onarımlar askıya alınırsa bildirim almak için Azure Uyarı Kuralları'nı ayarlayabilirsiniz. Ayrıntılar için bkz . Otomatik örnek onarımları hizmet durumundaki değişiklikleri izlemek için Azure uyarı kurallarını kullanma.
Örnek koruması ve otomatik onarımlar
Ölçek kümesindeki bir örnek koruma ilkelerinden biri uygulanarak korunuyorsa bu örnekte otomatik onarımlar yapılmaz. Bu davranış hem koruma ilkeleri için geçerlidir: Ölçeklendirmeden koruma ve Ölçek kümesi eylemlerinden koruma.
Bildirimi ve otomatik onarımları sonlandırma
Bildirim sonlandırma özelliği bir ölçek kümesinde etkinleştirilirse, Değiştirme işlemi sırasında iyi durumda olmayan bir örneğin silinmesi sonlandırma bildirimi yapılandırmasını izler. Azure meta veri hizmeti (zamanlanmış olaylar) aracılığıyla sonlandırma bildirimi gönderilir ve örnek silme, yapılandırılan gecikme zaman aşımı sırasında gecikir. Ancak, iyi durumda olmayan örneği değiştirmek için yeni bir örnek oluşturulması gecikme zaman aşımının tamamlanmasını beklemez.
Yeni ölçek kümesi oluştururken otomatik onarım ilkesini etkinleştirme
Önemli
Kasım 2023'den itibaren, düzenleme modu belirtilmezse PowerShell ve Azure CLI kullanılarak oluşturulan VM ölçek kümeleri varsayılan olarak Esnek Düzenleme Modu olarak ayarlanır. Bu değişiklik ve gerçekleştirmeniz gereken eylemler hakkında daha fazla bilgi için BKZ. VMSS PowerShell/CLI Müşterileri için Yeni Değişiklik - Microsoft Community Hub
Yeni bir ölçek kümesi oluştururken otomatik onarım ilkesini etkinleştirmek için bu özelliği kabul etmeye yönelik tüm gereksinimlerin karşılandığından emin olun. Uygulama uç noktası, uç nokta yapılandırılırken istenmeyen onarımları tetiklememek için ölçek kümesi örnekleri için doğru şekilde yapılandırılmalıdır. Yeni oluşturulan ölçek kümeleri için tüm örnek onarımları yalnızca yetkisiz kullanım süresi tamamlandıktan sonra gerçekleştirilir. Ölçek kümesinde otomatik örnek onarımını etkinleştirmek için Sanal Makine Ölçek Kümesi modelindeki automaticRepairsPolicy nesnesini kullanın.
Bu hızlı başlangıç şablonunu bir Sanal Makine Ölçek Kümesi dağıtmak için de kullanabilirsiniz. Ölçek kümesinde yük dengeleyici sistem durumu yoklaması ve 30 dakikalık yetkisiz kullanım süresiyle otomatik örnek onarımları etkinleştirilmiştir.
Yeni bir ölçek kümesi oluştururken otomatik onarım ilkesini etkinleştirmeye yönelik aşağıdaki adımlar.
- Sanal Makine Ölçek Kümeleri'a gidin.
- Yeni bir ölçek kümesi oluşturmak için + Ekle'yi seçin.
- Sistem Durumu sekmesine gidin.
- Sistem Durumu bölümünü bulun.
- Uygulama durumunu izleme seçeneğini etkinleştirin.
- Otomatik onarım ilkesi bölümünü bulun.
- Otomatik onarımlar seçeneğini açın.
- Yetkisiz kullanım süresi (dk)'de yetkisiz kullanım süresini dakika cinsinden belirtin; izin verilen değerler 10 ile 90 dakika arasındadır.
- Yeni ölçek kümesini oluşturmayı bitirdiğinizde Gözden Geçir ve oluştur düğmesini seçin.
Mevcut bir ölçek kümesini güncelleştirirken otomatik onarım ilkesini etkinleştirme
Mevcut bir ölçek kümesinde otomatik onarım ilkesini etkinleştirmeden önce, bu özelliği kabul etmek için tüm gereksinimlerin karşılandığından emin olun. Uygulama uç noktası, uç nokta yapılandırılırken istenmeyen onarımları tetiklememek için ölçek kümesi örnekleri için doğru şekilde yapılandırılmalıdır. Ölçek kümesinde otomatik örnek onarımını etkinleştirmek için Sanal Makine Ölçek Kümesi modelindeki automaticRepairsPolicy nesnesini kullanın.
Mevcut bir ölçek kümesinin modelini güncelleştirdikten sonra, ölçeğin tüm örneklerine en son modelin uygulandığından emin olun. Vm'leri en son ölçek kümesi modeliyle güncel hale getirme yönergelerine bakın.
Mevcut bir ölçek kümesinin otomatik onarım ilkesini Azure portalı üzerinden değiştirebilirsiniz.
Not
Sonraki adımları başlatmadan önce Sanal Makine Ölçek Kümeleri uygulama durumu uzantısını veya Load Balancer sistem durumu yoklamalarını etkinleştirin.
- Mevcut bir Sanal Makine Ölçek Kümesine gidin.0
- Soldaki menüde Ayarlar'ın altında Sistem durumu ve onar'ı seçin.
- Uygulama durumunu izleme seçeneğini etkinleştirin.
Ölçek kümenizi Uygulama Durumu uzantısını kullanarak izliyorsanız:
Uygulama Durumu izleyicisi açılan listesinden Uygulama Durumu uzantısı'nı seçin.
Protokol açılan listesinden, uygulamanız tarafından sistem durumunu bildirmek için kullanılan ağ protokolünü seçin. Uygulama gereksinimlerinize göre uygun protokolü seçin. Protokol seçenekleri HTTP, HTTPS veya TCP'dir.
Bağlantı noktası numarası yapılandırma kutusuna uygulama durumunu izlemek için kullanılan ağ bağlantı noktasını yazın.
Yol için, uygulama durumunu raporlamak için kullanılan uygulama uç noktası yolunu (örneğin, "/") sağlayın.
Not
Uygulama Durumu uzantısı, her örnek için uygulama durumu almak üzere ölçek kümesindeki her sanal makinenin içinde bu yola ping atar. İkili Sistem Durumu Durumları kullanıyorsanız ve uç nokta 200 (Tamam) durumuyla yanıt veriyorsa, örnek "Sağlıklı" olarak işaretlenir. Diğer tüm durumlarda (uç noktaya ulaşılamıyorsa dahil), örnek "İyi durumda değil" olarak işaretlenir. Daha fazla sistem durumu seçeneği için Zengin Sistem Durumu Durumlarını keşfedin.
SLB Sistem Durumu yoklamalarını kullanarak ölçek kümenizi izliyorsanız:
- Uygulama Durumu izleyicisi açılan listesinden Yük dengeleyici yoklaması'nı seçin.- Load Balancer sistem durumu araştırması için mevcut bir sistem durumu yoklaması seçin veya izleme için yeni bir sistem durumu araştırması oluşturun.
Otomatik onarımları etkinleştirmek için:
- Otomatik onarım ilkesi bölümünü bulun.
- Otomatik onarımlar seçeneğini açın.
- Yetkisiz kullanım süresi (dk)'de yetkisiz kullanım süresini dakika cinsinden belirtin. İzin verilen değerler 10 ile 90 dakika arasındadır.
- Bitirdiğinizde, Kaydet'i seçin.
Otomatik onarım ilkesinde onarım eylemi yapılandırma
repairAction
altındaki automaticRepairsPolicy
ayar, iyi durumda olmayan bir örneğe yanıt olarak gerçekleştirilen istenen onarım eylemini belirtmenizi sağlar. Mevcut bir otomatik onarım ilkesinde onarım eylemini güncelleştiriyorsanız, önce ölçek kümesindeki otomatik onarımları devre dışı bırakmanız ve güncelleştirilmiş onarım eylemiyle yeniden etkinleştirmeniz gerekir. Bu işlem aşağıdaki örneklerde gösterilmiştir.
Bu örnekte, mevcut otomatik onarım ilkesiyle bir ölçek kümesindeki onarım eyleminin nasıl güncelleştirildiği gösterilmektedir. API sürüm 2021-11-01 veya üzerini kullanın.
Ölçek kümenizde mevcut otomatik onarım ilkesini devre dışı bırakma
PUT or PATCH on '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}?api-version=2021-11-01'
{
"properties": {
"automaticRepairsPolicy": {
"enabled": "false"
}
}
}
otomatik onarım ilkesini istenen onarım eylemiyle yeniden etkinleştirme
PUT or PATCH on '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}?api-version=2021-11-01'
{
"properties": {
"automaticRepairsPolicy": {
"enabled": "true",
"gracePeriod": "PT40M",
"repairAction": "Reimage"
}
}
}
Otomatik örnek onarımları ilkesinin hizmet durumunu görüntüleme ve güncelleştirme
OrchestrationServices özelliği altında otomatik onarımlar için serviceState'i görüntülemek üzere Sanal Makine Ölçek Kümesi için API sürümü 2019-12-01 veya üzeri ile Örnek Görünümü Al'ı kullanın.
GET '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/instanceView?api-version=2019-12-01'
{
"orchestrationServices": [
{
"serviceName": "AutomaticRepairs",
"serviceState": "Running"
}
]
}
Otomatik onarımlar için serviceState'i askıya almak veya sürdürmek için Düzenleme Hizmeti Durumunu Ayarla'yı kullanın.
POST '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/instanceView?api-version=2023-07-01'
{
"serviceName": "AutomaticRepairs",
"action": "Suspend"
}
Sorun giderme
Otomatik onarım ilkesini etkinleştirme hatası
"'properties' türündeki nesnede 'automaticRepairsPolicy' üyesi bulunamadı" iletisini içeren bir 'BadRequest' hatası alırsanız, Sanal Makine Ölçek Kümesi için kullanılan API sürümünü denetleyin. Bu özellik için API sürüm 2018-10-01 veya üzeri gereklidir.
İlke etkinleştirildiğinde bile örnek onarılmıyor
Örnek yetkisiz kullanım süresinde olabilir. Bu süre, onarımları gerçekleştirmeden önce örnekteki herhangi bir durum değişikliğinden sonra beklenmesi gereken süredir ve bu da erken veya yanlışlıkla yapılan onarımların önlenmesine yardımcı olur. Onarım eylemi, örnek için yetkisiz kullanım süresi tamamlandıktan sonra gerçekleşmelidir.
Ölçek kümesi örnekleri için uygulama sistem durumunu görüntüleme
Uygulama durumunu görüntülemek için Sanal Makine Ölçek Kümesindeki örnekler için Örnek Görünümü Alma API'sini kullanabilirsiniz. Azure PowerShell ile Get-AzVmssVM cmdlet'ini -InstanceView bayrağıyla kullanabilirsiniz. Uygulama sistem durumu vmHealth özelliği altında sağlanır.
Azure portalında sistem durumunu da görebilirsiniz. Mevcut bir ölçek kümesine gidin, soldaki menüden Örnekler'i seçin ve her ölçek kümesi örneğinin sistem durumu için Sistem durumu sütununa bakın.
Sonraki adımlar
Ölçek kümeleriniz için Uygulama Durumu uzantısını veya Yük dengeleyici sistem durumu yoklamalarını yapılandırmayı öğrenin.