Uygulama yükseltme parametreleri
Bu makalede, bir Azure Service Fabric uygulamasının yükseltmesi sırasında uygulanan çeşitli parametreler açıklanmaktadır. Uygulama yükseltme parametreleri, yükseltme sırasında uygulanan zaman aşımlarını ve sistem durumu denetimlerini denetler ve yükseltme başarısız olduğunda uygulanması gereken ilkeleri belirtir. Uygulama parametreleri aşağıdakiler kullanılarak yükseltmelere uygulanır:
- PowerShell
- Visual Studio
- SFCTL
- REST
Uygulama yükseltmeleri, kullanıcı tarafından seçilebilen üç yükseltme modundan biri aracılığıyla başlatılır. Her modun kendi uygulama parametreleri kümesi vardır:
- Izlenen
- İzlenmeyen Otomatik
- İzlenmeyen El Kitabı
Geçerli gerekli ve isteğe bağlı parametreler her bölümde aşağıdaki gibi açıklanmıştır.
Visual Studio ve PowerShell parametreleri
PowerShell kullanılarak yapılan Service Fabric uygulama yükseltmeleri Start-ServiceFabricApplicationUpgrade komutunu kullanır. Yükseltme modu, Start-ServiceFabricApplicationUpgrade'a monitored, UnmonitoredAuto veya UnmonitoredManual parametresi geçirilerek seçilir.
Visual Studio Service Fabric uygulama yükseltme parametreleri, Visual Studio Yükseltme Ayarları iletişim kutusu aracılığıyla ayarlanır. Visual Studio yükseltme modu, İzlenen, İzlenmeyenAuto veya UnmonitoredManual için Yükseltme Modu açılan kutusu kullanılarak seçilir. Daha fazla bilgi için bkz . Visual Studio'da Service Fabric uygulamasının yükseltmesini yapılandırma.
Gerekli parametreler
Parametre | Uygulandığı Öğe | Açıklama |
---|---|---|
ApplicationName | PowerShell | Yükseltilmekte olan uygulamanın adı. Örnekler: fabric:/VisualObjects, fabric:/ClusterMonitor. |
ApplicationTypeVersion | PowerShell | Yükseltmenin hedeflediğini uygulama türünün sürümü. |
FailureAction | PowerShell, Visual Studio | İzin verilen değerler Geri Alma, El ile ve Geçersiz değerleridir. İzlenen yükseltme izleme ilkesi veya sistem durumu ilkesi ihlalleriyle karşılaştığında gerçekleştirilecek telafi eylemi. Geri Alma , yükseltmenin otomatik olarak yükseltme öncesi sürüme geri alınacağını belirtir. El ile, yükseltmenin UnmonitoredManual yükseltme moduna geçeceğini gösterir. Geçersiz , hata eyleminin geçersiz olduğunu gösterir. |
Izlenen | PowerShell | Yükseltme modunun izlendiğini gösterir. Cmdlet bir yükseltme etki alanı için yükseltmeyi tamamladıktan sonra, yükseltme etki alanının ve kümenin sistem durumu tanımladığınız sistem durumu ilkelerini karşılıyorsa, Service Fabric sonraki yükseltme etki alanını yükseltir. Yükseltme etki alanı veya küme sistem durumu ilkelerini karşılayamazsa, yükseltme başarısız olur ve Service Fabric, yükseltme etki alanı için yükseltmeyi geri alır veya belirtilen ilkeye göre el ile moda geri döner. Bu, üretim ortamındaki uygulama yükseltmeleri için önerilen moddur. |
UpgradeMode | Visual Studio | İzin verilen değerler İzlenir (varsayılan), UnmonitoredAuto veya UnmonitoredManual değerleridir. Ayrıntılar için bu makaledeki her mod için PowerShell parametrelerine bakın. |
UnmonitoredAuto | PowerShell | Yükseltme modunun izlenmeyen otomatik olduğunu gösterir. Service Fabric bir yükseltme etki alanını yükseltdikten sonra Service Fabric, uygulama sistem durumundan bağımsız olarak bir sonraki yükseltme etki alanını yükseltir. Bu mod üretim için önerilmez ve yalnızca bir uygulamanın geliştirilmesi sırasında kullanışlıdır. |
İzlenmeyenManual | PowerShell | Yükseltme modunun izlenmeyen el ile olduğunu gösterir. Service Fabric bir yükseltme etki alanını yükselttikte Resume-ServiceFabricApplicationUpgrade cmdlet'ini kullanarak bir sonraki yükseltme etki alanını yükseltmenizi bekler. |
İsteğe bağlı parametreler
Sistem durumu değerlendirme parametreleri isteğe bağlıdır. Yükseltme başlatıldığında sistem durumu değerlendirme ölçütleri belirtilmezse Service Fabric, uygulama örneğinin ApplicationManifest.xml belirtilen uygulama durumu ilkelerini kullanır.
Parametre | Uygulandığı Öğe | Açıklama |
---|---|---|
ApplicationParameter | PowerShell, Visual Studio | Uygulama parametreleri için geçersiz kılmaları belirtir. PowerShell uygulama parametreleri karma tablo adı/değer çiftleri olarak belirtilir. Örneğin, @{ "VotingData_MinReplicaSetSize" = "3"; "VotingData_PartitionCount" = "1" }. Visual Studio uygulama parametreleri, Uygulama Parametreleri Dosyası alanındaki Service Fabric Uygulamasını Yayımla iletişim kutusunda belirtilebilir. |
Confirm | PowerShell | İzin verilen değerler True ve False değerleridir. Cmdlet'i çalıştırmadan önce onay ister. |
ConsiderWarningAsError | PowerShell, Visual Studio | İzin verilen değerler True ve False değerleridir. Varsayılan değer Yanlış'tır. Yükseltme sırasında uygulamanın sistem durumunu değerlendirirken uygulamanın uyarı sistem durumu olaylarını hatalar olarak değerlendirin. Varsayılan olarak, Service Fabric uyarı sistem durumu olaylarını hata (hata) olarak değerlendirmez, bu nedenle uyarı olayları olsa bile yükseltme devam edebilir. |
DefaultServiceTypeHealthPolicy | PowerShell, Visual Studio | İzlenen yükseltme için kullanılacak varsayılan hizmet türünün sistem durumu ilkesini MaxPercentUnhealthyPartitionsPerService, MaxPercentUnhealthyReplicasPerPartition, MaxPercentUnhealthyServices biçiminde belirtir. Örneğin, 5,10,15 şu değerleri gösterir: MaxPercentUnhealthyPartitionsPerService = 5, MaxPercentUnhealthyReplicasPerPartition = 10, MaxPercentUnhealthyServices = 15. |
Force | PowerShell, Visual Studio | İzin verilen değerler True ve False değerleridir. Yükseltme işleminin uyarı iletisini atlayıp sürüm numarası değişmemiş olsa bile yükseltmeyi zorladığını gösterir. Bu, yerel test için yararlıdır, ancak mevcut dağıtımın kaldırılmasını gerektirdiğinden üretim ortamında kullanılması önerilmez ve bu da çalışmama süresine ve olası veri kaybına neden olur. |
ForceRestart | PowerShell, Visual Studio | Hizmet kodunu güncelleştirmeden bir yapılandırmayı veya veri paketini güncelleştirirseniz, hizmet yalnızca ForceRestart özelliği True olarak ayarlandığında yeniden başlatılır. Güncelleştirme tamamlandığında Service Fabric, hizmete yeni bir yapılandırma paketinin veya veri paketinin kullanılabilir olduğunu bildirir. Hizmet, değişiklikleri uygulamakla sorumludur. Gerekirse hizmet kendisini yeniden başlatabilir. |
HealthCheckRetryTimeoutSec | PowerShell, Visual Studio | Service Fabric'in yükseltmeyi başarısız olarak bildirmeden önce sistem durumu değerlendirmesi gerçekleştirmeye devam etme süresi (saniye cinsinden). Varsayılan değer 600 saniyedir. Bu süre HealthCheckWaitDurationSec'e ulaşıldıktan sonra başlar. Bu HealthCheckRetryTimeout içinde Service Fabric, uygulama durumu için birden çok sistem durumu denetimi gerçekleştirebilir. Varsayılan değer 10 dakikadır ve uygulamanız için uygun şekilde özelleştirilmelidir. |
HealthCheckStableDurationSec | PowerShell, Visual Studio | Bir sonraki yükseltme etki alanına geçmeden veya yükseltmeyi tamamlamadan önce uygulamanın kararlı olduğunu doğrulama süresi (saniye cinsinden). Bu bekleme süresi, sistem durumu denetimi gerçekleştirildikten hemen sonra algılanmayan sistem durumu değişikliklerini önlemek için kullanılır. Varsayılan değer 120 saniyedir ve uygulamanız için uygun şekilde özelleştirilmesi gerekir. |
HealthCheckWaitDurationSec | PowerShell, Visual Studio | Service Fabric'in uygulamanın durumunu değerlendirmesi için yükseltme etki alanında yükseltme tamamlandıktan sonra bekleme süresi (saniye cinsinden). Bu süre, uygulamanın iyi durumda kabul edilebilmesi için önce çalışması gereken süre olarak da düşünülebilir. Sistem durumu denetimi geçerse, yükseltme işlemi sonraki yükseltme etki alanına devam eder. Sistem durumu denetimi başarısız olursa, HealthCheckRetryTimeoutSec'e ulaşılana kadar sistem durumu denetimini yeniden denemeden önce Service Fabric UpgradeHealthCheckInterval'ı bekler. Varsayılan ve önerilen değer 0 saniyedir. |
MaxPercentUnhealthyDeployedApplications | PowerShell, Visual Studio | Varsayılan ve önerilen değer 0'dır. Uygulama iyi durumda değil olarak kabul edilmeden ve yükseltmede başarısız olmadan önce iyi durumda olmayan en fazla dağıtılan uygulama sayısını belirtin (Sistem Durumu bölümüne bakın). Bu parametre düğümdeki uygulama durumunu tanımlar ve yükseltme sırasındaki sorunları algılamaya yardımcı olur. Genellikle, uygulamanın çoğaltmaları diğer düğüme yük dengelemesi alır ve bu da uygulamanın iyi durumda görünmesini sağlar ve böylece yükseltmenin devam etmesine olanak tanır. Katı bir MaxPercentUnhealthyDeployedApplications sistem durumu belirterek, Service Fabric uygulama paketiyle ilgili bir sorunu hızla algılayabilir ve hızlı bir yükseltmenin başarısız olmasına yardımcı olabilir. |
MaxPercentUnhealthyServices | PowerShell, Visual Studio | DefaultServiceTypeHealthPolicy ve ServiceTypeHealthPolicyMap parametresi. Varsayılan ve önerilen değer 0'dır. Uygulama örneğinde, uygulama iyi durumda değil olarak kabul edilmeden ve yükseltmede başarısız olmadan önce iyi durumda olmayan en fazla hizmet sayısını belirtin. |
MaxPercentUnhealthyPartitionsPerService | PowerShell, Visual Studio | DefaultServiceTypeHealthPolicy ve ServiceTypeHealthPolicyMap parametresi. Varsayılan ve önerilen değer 0'dır. Hizmet iyi durumda değil olarak kabul edilmeden önce hizmetteki en fazla iyi durumda olmayan bölüm sayısını belirtin. |
MaxPercentUnhealthyReplicasPerPartition | PowerShell, Visual Studio | DefaultServiceTypeHealthPolicy ve ServiceTypeHealthPolicyMap parametresi. Varsayılan ve önerilen değer 0'dır. Bölüm iyi durumda değil olarak kabul edilmeden önce, bölümdeki en fazla iyi durumda olmayan çoğaltma sayısını belirtin. |
ServiceTypeHealthPolicyMap | PowerShell, Visual Studio | Bir hizmet türüne ait hizmetlerin sistem durumunu değerlendirmek için kullanılan sistem durumu ilkesini temsil eder. Şu biçimde bir karma tablo girişi alır: @ {"ServiceTypeName" : "MaxPercentUnhealthyPartitionsPerService,MaxPercentUnhealthyReplicasPerPartition,MaxPercentUnhealthyServices"} Örneğin: @{ "ServiceTypeName01" = "5,10,5"; "ServiceTypeName02" = "5,5,5" } |
TimeoutSec | PowerShell , Visual Studio | İşlem için zaman aşımı süresini saniye cinsinden belirtir. |
UpgradeDomainTimeoutSec | PowerShell, Visual Studio | Tek bir yükseltme etki alanını yükseltmek için en uzun süre (saniye cinsinden). Bu zaman aşımına ulaşılırsa yükseltme durdurulur ve FailureAction ayarına göre devam eder. Varsayılan değer hiçbir zaman (Sonsuz) değildir ve uygulamanız için uygun şekilde özelleştirilmelidir. |
UpgradeReplicaSetCheckTimeoutSec | PowerShell, Visual Studio | Saniye cinsinden ölçülür. Durum bilgisi olmayan hizmet--Service Fabric, tek bir yükseltme etki alanında hizmetin ek örneklerinin kullanılabilir olduğundan emin olmaya çalışır. Hedef örnek sayısı birden fazlaysa, Service Fabric en fazla zaman aşımı değerine kadar birden fazla örneğin kullanılabilir olmasını bekler. Bu zaman aşımı UpgradeReplicaSetCheckTimeoutSec özelliği kullanılarak belirtilir. Zaman aşımı süresi dolarsa Service Fabric, hizmet örneği sayısından bağımsız olarak yükseltmeye devam eder. Hedef örnek sayısı bir ise Service Fabric beklemez ve yükseltme işlemine hemen devam eder. Durum bilgisi olan hizmet--Service Fabric, tek bir yükseltme etki alanında çoğaltma kümesinin bir çekirdek olduğundan emin olmaya çalışır. Service Fabric, en fazla zaman aşımı değerine (UpgradeReplicaSetCheckTimeoutSec özelliği tarafından belirtilen) kadar bir çekirdeğin kullanılabilir olmasını bekler. Zaman aşımı süresi dolarsa, çekirdekten bağımsız olarak Service Fabric yükseltmeye devam eder. Bu ayar ileri doğru ilerlerken hiçbir zaman (sonsuz) ve geri alınırken 1200 saniye olarak ayarlanır. |
UpgradeTimeoutSec | PowerShell, Visual Studio | Yükseltmenin tamamı için geçerli olan zaman aşımı (saniye olarak). Bu zaman aşımına ulaşılırsa yükseltme durdurulur ve FailureAction tetikler. Varsayılan değer hiçbir zaman (Sonsuz) değildir ve uygulamanız için uygun şekilde özelleştirilmelidir. |
WhatIf | PowerShell | İzin verilen değerler True ve False değerleridir. Cmdlet çalıştırılıyorsa ne olacağını gösterir. Cmdlet çalıştırılmaz. |
MaxPercentUnhealthyServices, MaxPercentUnhealthyPartitionsPerService ve MaxPercentUnhealthyReplicasPerPartition ölçütleri bir uygulama örneği için hizmet türü başına belirtilebilir. Hizmet başına bu parametrelerin ayarlanması, bir uygulamanın farklı değerlendirme ilkelerine sahip farklı hizmet türleri içermesine olanak tanır. Örneğin, durum bilgisi olmayan bir ağ geçidi hizmet türü, belirli bir uygulama örneği için durum bilgisi olan bir altyapı hizmet türünden farklı bir MaxPercentUnhealthyPartitionsPerService'e sahip olabilir.
SFCTL parametreleri
Service Fabric CLI kullanılarak yapılan Service Fabric uygulama yükseltmeleri, aşağıdaki gerekli ve isteğe bağlı parametrelerle birlikte sfctl uygulama yükseltme komutunu kullanır.
Gerekli parametreler
Parametre | Açıklama |
---|---|
uygulama kimliği | Yükseltilmekte olan uygulamanın kimliği. Bu genellikle 'fabric:' URI şeması olmayan uygulamanın tam adıdır. Sürüm 6.0'dan başlayarak hiyerarşik adlar '~' karakteriyle sınırlandırılır. Örneğin, uygulama adı 'fabric:/myapp/app1' ise, uygulama kimliği 6.0+ sürümünde 'myapp~app1' ve önceki sürümlerde 'myapp/app1' olur. |
uygulama sürümü | Yükseltmenin hedeflediğini uygulama türünün sürümü. |
parametreler | Uygulama yükseltirken uygulanacak uygulama parametresi geçersiz kılmalarının JSON kodlanmış listesi. |
İsteğe bağlı parametreler
Parametre | Açıklama |
---|---|
default-service-health-policy | Hizmet türünün sistem durumunu değerlendirmek için varsayılan olarak kullanılan sistem durumu ilkesinin JSON kodlanmış belirtimi. Harita varsayılan olarak boş olur. |
hata eylemi | İzin verilen değerler Geri Alma, El ile ve Geçersiz değerleridir. İzlenen yükseltme izleme ilkesi veya sistem durumu ilkesi ihlalleriyle karşılaştığında gerçekleştirilecek telafi eylemi. Geri Alma , yükseltmenin otomatik olarak yükseltme öncesi sürüme geri alınacağını belirtir. El ile, yükseltmenin UnmonitoredManual yükseltme moduna geçeceğini gösterir. Geçersiz , hata eyleminin geçersiz olduğunu gösterir. |
zorla yeniden başlatma | Hizmet kodunu güncelleştirmeden bir yapılandırmayı veya veri paketini güncelleştirirseniz, hizmet yalnızca ForceRestart özelliği True olarak ayarlandığında yeniden başlatılır. Güncelleştirme tamamlandığında Service Fabric, hizmete yeni bir yapılandırma paketinin veya veri paketinin kullanılabilir olduğunu bildirir. Hizmet, değişiklikleri uygulamakla sorumludur. Gerekirse hizmet kendisini yeniden başlatabilir. |
health-check-retry-timeout | FailureAction yürütülmeden önce uygulama veya küme iyi durumda olmadığında sistem durumu değerlendirmesini yeniden deneme süresi. İlk olarak ISO 8601 süresini temsil eden bir dize olarak yorumlanır. Bu başarısız olursa, toplam milisaniye sayısını temsil eden bir sayı olarak yorumlanır. Varsayılan: PT0H10M0S. |
health-check-stable-duration | Yükseltme bir sonraki yükseltme etki alanına geçmeden önce uygulamanın veya kümenin iyi durumda kalması gereken süre. İlk olarak ISO 8601 süresini temsil eden bir dize olarak yorumlanır. Bu başarısız olursa, toplam milisaniye sayısını temsil eden bir sayı olarak yorumlanır. Varsayılan: PT0H2M0S. |
health-check-wait-duration | Sistem durumu ilkelerini uygulamadan önce bir yükseltme etki alanını tamamladıktan sonra beklenmesi gereken süre. İlk olarak ISO 8601 süresini temsil eden bir dize olarak yorumlanır. Bu başarısız olursa, toplam milisaniye sayısını temsil eden bir sayı olarak yorumlanır. Varsayılan: 0. |
en iyi durumda olmayan uygulamalar | Varsayılan ve önerilen değer 0'dır. Uygulama iyi durumda değil olarak kabul edilmeden ve yükseltmede başarısız olmadan önce iyi durumda olmayan en fazla dağıtılan uygulama sayısını belirtin (Sistem Durumu bölümüne bakın). Bu parametre düğümdeki uygulama durumunu tanımlar ve yükseltme sırasındaki sorunları algılamaya yardımcı olur. Genellikle, uygulamanın çoğaltmaları diğer düğüme yük dengelemesi alır ve bu da uygulamanın iyi durumda görünmesini sağlar ve böylece yükseltmenin devam etmesine olanak tanır. Katı bir maksimum-iyi durumda olmayan uygulamalar durumu belirterek Service Fabric, uygulama paketiyle ilgili bir sorunu hızla algılayabilir ve başarısız bir hızlı yükseltmenin üretilmesine yardımcı olabilir. 0 ile 100 arasında bir sayı olarak gösterilir. |
mod | İzin verilen değerler İzlendi, UpgradeMode, UnmonitoredAuto, UnmonitoredManual değerleridir. Varsayılan değer UnmonitoredAuto'dur. Bu değerlerin açıklamaları için Visual Studio ve PowerShell Gerekli Parametreler bölümüne bakın. |
çoğaltma-kümesi-denetim zaman aşımı | Saniye cinsinden ölçülür. Durum bilgisi olmayan hizmet--Service Fabric, tek bir yükseltme etki alanında hizmetin ek örneklerinin kullanılabilir olduğundan emin olmaya çalışır. Hedef örnek sayısı birden fazlaysa, Service Fabric en fazla zaman aşımı değerine kadar birden fazla örneğin kullanılabilir olmasını bekler. Bu zaman aşımı, çoğaltma-set-check-timeout özelliği kullanılarak belirtilir. Zaman aşımı süresi dolarsa Service Fabric, hizmet örneği sayısından bağımsız olarak yükseltmeye devam eder. Hedef örnek sayısı bir ise Service Fabric beklemez ve yükseltme işlemine hemen devam eder. Durum bilgisi olan hizmet--Service Fabric, tek bir yükseltme etki alanında çoğaltma kümesinin bir çekirdek olduğundan emin olmaya çalışır. Service Fabric, en fazla zaman aşımı değerine (çoğaltma-set-check-timeout özelliği tarafından belirtilen) kadar bir çekirdeğin kullanılabilir olmasını bekler. Zaman aşımı süresi dolarsa, çekirdekten bağımsız olarak Service Fabric yükseltmeye devam eder. Bu ayar ileri doğru ilerlerken hiçbir zaman (sonsuz) ve geri alınırken 1200 saniye olarak ayarlanır. |
hizmet durumu ilkesi | Hizmet türü adı başına hizmet türü sistem durumu ilkesiyle JSON kodlanmış eşleme. Harita boş varsayılan değerdir. Parametre JSON biçimi.. "Değer" bölümünün JSON değeri MaxPercentUnhealthyServices, MaxPercentUnhealthyPartitionsPerService ve MaxPercentUnhealthyReplicasPerPartition değerlerini içerir. Bu parametrelerin açıklamaları için Visual Studio ve PowerShell İsteğe Bağlı Parametreler bölümüne bakın. |
timeout | İşlem için zaman aşımı süresini saniye cinsinden belirtir. Varsayılan: 60. |
upgrade-domain-timeout | FailureAction yürütülmeden önce her yükseltme etki alanının tamamlanması gereken süre. İlk olarak ISO 8601 süresini temsil eden bir dize olarak yorumlanır. Bu başarısız olursa, toplam milisaniye sayısını temsil eden bir sayı olarak yorumlanır. Varsayılan değer hiçbir zaman (Sonsuz) değildir ve uygulamanız için uygun şekilde özelleştirilmelidir. Varsayılan: P10675199DT02H48M05.4775807S. |
yükseltme zaman aşımı | FailureAction yürütülmeden önce her yükseltme etki alanının tamamlanması gereken süre. İlk olarak ISO 8601 süresini temsil eden bir dize olarak yorumlanır. Bu başarısız olursa, toplam milisaniye sayısını temsil eden bir sayı olarak yorumlanır. Varsayılan değer hiçbir zaman (Sonsuz) değildir ve uygulamanız için uygun şekilde özelleştirilmelidir. Varsayılan: P10675199DT02H48M05.4775807S. |
hata olarak uyarı | İzin verilen değerler True ve False değerleridir. Varsayılan değer Yanlış'tır. Bayrak olarak geçirilebilir. Yükseltme sırasında uygulamanın sistem durumunu değerlendirirken uygulamanın uyarı sistem durumu olaylarını hatalar olarak değerlendirin. Varsayılan olarak, Service Fabric uyarı sistem durumu olaylarını hata (hata) olarak değerlendirmez, bu nedenle uyarı olayları olsa bile yükseltme devam edebilir. |
Sonraki adımlar
Visual Studio Kullanarak Uygulamanızı Yükseltme, Visual Studio kullanarak uygulama yükseltme işleminde size yol gösterir.
PowerShell Kullanarak Uygulamanızı Yükseltme, PowerShell kullanarak uygulama yükseltme işleminde size yol gösterir.
Linux üzerinde Service Fabric CLI kullanarak Uygulamanızı yükseltme, Service Fabric CLI kullanarak uygulama yükseltme işleminde size yol gösterir.
Service Fabric Eclipse Eklentisi kullanarak uygulamanızı yükseltme
Veri Serileştirme'yi kullanmayı öğrenerek uygulama yükseltmelerinizi uyumlu hale getirin.
Gelişmiş Konular'a başvurarak uygulamanızı yükseltirken gelişmiş işlevleri kullanmayı öğrenin.
Uygulama Yükseltmelerinde Sorun Giderme makalesindeki adımlara başvurarak uygulama yükseltmelerindeki yaygın sorunları düzeltin.