Alkalmazásfrissítési paraméterek
Ez a cikk az Azure Service Fabric-alkalmazások frissítése során alkalmazott különböző paramétereket ismerteti. Az alkalmazásfrissítési paraméterek szabályozzák a frissítés során alkalmazott időtúllépéseket és állapotellenőrzéseket, és meghatározzák azokat a szabályzatokat, amelyeket a frissítés meghiúsulásakor alkalmazni kell. Az alkalmazásparaméterek az alábbiak használatával történő frissítésekre vonatkoznak:
- PowerShell
- Visual Studio
- SFCTL
- REST
Az alkalmazásfrissítések három, felhasználó által kiválasztható frissítési mód egyikével indíthatók el. Minden mód saját alkalmazásparaméterekkel rendelkezik:
- Ellenőrzött
- Nem figyelt automatikus
- Nem figyelt kézi
Az alkalmazandó kötelező és választható paramétereket az alábbi szakaszok ismertetik.
Visual Studio- és PowerShell-paraméterek
A Service Fabric-alkalmazások PowerShell-lel történő frissítései a Start-ServiceFabricApplicationUpgrade parancsot használják. A frissítési mód úgy van kiválasztva, hogy a Figyelt, a UnmonitoredAuto vagy a UnmonitoredManual paramétert átadja a Start-ServiceFabricApplicationUpgrade-nek.
A Visual Studio Service Fabric alkalmazásfrissítési paraméterei a Visual Studio frissítési beállításai párbeszédpanelen vannak beállítva. A Visual Studio frissítési módja a Frissítési mód legördülő listából kiválasztva monitorozott, unmonitoredAuto vagy UnmonitoredManual. További információ: Service Fabric-alkalmazás frissítésének konfigurálása a Visual Studióban.
Kötelező paraméterek
Paraméter | Érvényesség | Leírás |
---|---|---|
ApplicationName | PowerShell | A frissítendő alkalmazás neve. Példák: háló:/VisualObjects, háló:/ClusterMonitor. |
ApplicationTypeVersion | PowerShell | Annak az alkalmazástípusnak a verziója, amelyet a frissítés megcélz. |
FailureAction | PowerShell, Visual Studio | Az engedélyezett értékek a visszaállítás, a manuális és az érvénytelen értékek. Az a kompenzáló művelet, amelyet akkor kell végrehajtani, ha egy figyelt frissítés figyelési szabályzatot vagy állapotszabályzat-szabálysértést tapasztal. A visszaállítás azt határozza meg, hogy a frissítés automatikusan visszavesse a frissítés előtti verziót. A manuális funkció azt jelzi, hogy a frissítés a UnmonitoredManual frissítési módra vált. Az érvénytelen azt jelzi, hogy a hibaművelet érvénytelen. |
Ellenőrzött | PowerShell | Azt jelzi, hogy a frissítési mód figyelve van. Miután a parancsmag befejezte egy frissítési tartomány frissítését, ha a frissítési tartomány és a fürt állapota megfelel a megadott állapotszabályzatoknak, a Service Fabric frissíti a következő frissítési tartományt. Ha a frissítési tartomány vagy a fürt nem felel meg az állapotszabályzatoknak, a frissítés meghiúsul, és a Service Fabric visszaállítja a frissítési tartomány frissítését, vagy a megadott házirend alapján visszaállítja a manuális üzemmódot. Ez az ajánlott mód az éles környezetben történő alkalmazásfrissítésekhez. |
UpgradeMode | Visual Studio | Az engedélyezett értékek a Figyelve (alapértelmezett), a UnmonitoredAuto vagy a UnmonitoredManual. A részletekért tekintse meg a cikkben szereplő egyes módok PowerShell-paramétereit. |
UnmonitoredAuto | PowerShell | Azt jelzi, hogy a frissítési mód nem figyelt automatikus. Miután a Service Fabric frissített egy frissítési tartományt, a Service Fabric az alkalmazás állapotától függetlenül frissíti a következő frissítési tartományt. Ez a mód éles környezetben nem ajánlott, és csak egy alkalmazás fejlesztése során hasznos. |
UnmonitoredManual | PowerShell | Azt jelzi, hogy a frissítési mód nem figyelt manuális. Miután a Service Fabric frissített egy frissítési tartományt, megvárja a következő frissítési tartomány frissítését a Resume-ServiceFabricApplicationUpgrade parancsmag használatával. |
Választható paraméterek
Az állapotértékelési paraméterek megadása nem kötelező. Ha az állapotértékelési feltételek nincsenek megadva a frissítés indításakor, a Service Fabric az alkalmazáspéldány ApplicationManifest.xml megadott alkalmazásállapot-szabályzatokat használja.
Paraméter | Érvényesség | Leírás |
---|---|---|
ApplicationParameter | PowerShell, Visual Studio | Az alkalmazásparaméterek felülbírálásait adja meg. A PowerShell-alkalmazásparaméterek kivonatoló név/érték párként vannak megadva. Például: @{ "VotingData_MinReplicaSetSize" = "3"; "VotingData_PartitionCount" = "1" }. A Visual Studio alkalmazásparaméterei az Alkalmazásparaméterek fájl mezőjében a Service Fabric-alkalmazás közzététele párbeszédpanelen adhatók meg. |
Jóváhagyás | PowerShell | Az engedélyezett értékek a True (Igaz) és a False (Hamis). Megerősítést kér a parancsmag futtatása előtt. |
ConsiderWarningAsError | PowerShell, Visual Studio | Az engedélyezett értékek a True (Igaz) és a False (Hamis). Az alapértelmezett érték a False (Hamis). Az alkalmazás figyelmeztetési állapot eseményeit a frissítés során az alkalmazás állapotának kiértékelésekor hibákként kezelje. Alapértelmezés szerint a Service Fabric nem értékeli ki a figyelmeztetési állapot eseményeit hibáknak (hibáknak), így a frissítés akkor is folytatódhat, ha vannak figyelmeztetési események. |
DefaultServiceTypeHealthPolicy | PowerShell, Visual Studio | Megadja a figyelt frissítéshez használandó alapértelmezett szolgáltatástípus állapotszabályzatát MaxPercentUnhealthyPartitionsPerService, MaxPercentUnhealthyReplicasPerPartition, MaxPercentUnhealthyServices formátumban. Az 5,10,15 például a következő értékeket jelzi: MaxPercentUnhealthyPartitionsPerService = 5, MaxPercentUnhealthyReplicasPerPartition = 10, MaxPercentUnhealthyServices = 15. |
Force | PowerShell, Visual Studio | Az engedélyezett értékek a True (Igaz) és a False (Hamis). Azt jelzi, hogy a frissítési folyamat kihagyja a figyelmeztető üzenetet, és akkor is kényszeríti a frissítést, ha a verziószám nem változott. Ez hasznos a helyi teszteléshez, de éles környezetben nem ajánlott, mivel a meglévő üzembe helyezés eltávolítását igényli, amely leállást és lehetséges adatvesztést okoz. |
ForceRestart | PowerShell, Visual Studio | Ha a szolgáltatáskód frissítése nélkül frissít egy konfigurációt vagy adatcsomagot, a szolgáltatás csak akkor indul újra, ha a ForceRestart tulajdonság értéke True. A frissítés befejezése után a Service Fabric értesíti a szolgáltatást, hogy egy új konfigurációs csomag vagy adatcsomag érhető el. A módosításokat a szolgáltatás végzi. Szükség esetén a szolgáltatás újraindulhat. |
HealthCheckRetryTimeoutSec | PowerShell, Visual Studio | Az az időtartam (másodpercben), amely után a Service Fabric továbbra is állapotértékelést végez a frissítés sikertelenként való deklarálása előtt. Az alapértelmezett érték 600 másodperc. Ez az időtartam a HealthCheckWaitDurationSec elérése után kezdődik. Ebben a HealthCheckRetryTimeoutban a Service Fabric több állapotellenőrzést is végrehajthat az alkalmazás állapotán. Az alapértelmezett érték 10 perc, és az alkalmazásnak megfelelően kell testre szabni. |
HealthCheckStableDurationSec | PowerShell, Visual Studio | Az alkalmazás stabil állapotának ellenőrzéséhez szükséges időtartam (másodpercben), mielőtt a következő frissítési tartományra vált, vagy befejezi a frissítést. Ez a várakozási időtartam az állapotellenőrzést követően közvetlenül az állapot-ellenőrzés után észlelt állapotváltozások megelőzésére szolgál. Az alapértelmezett érték 120 másodperc, és az alkalmazásnak megfelelően kell testre szabni. |
HealthCheckWaitDurationSec | PowerShell, Visual Studio | Várakozási idő (másodpercben), miután a frissítés befejeződött a frissítési tartományon, mielőtt a Service Fabric kiértékeli az alkalmazás állapotát. Ezt az időtartamot úgy is tekinthetjük, hogy az alkalmazásnak futnia kell ahhoz, hogy kifogástalan állapotúnak lehessen tekinteni. Ha az állapot-ellenőrzés sikeres, a frissítési folyamat a következő frissítési tartományra kerül. Ha az állapot-ellenőrzés sikertelen, a Service Fabric megvárja az UpgradeHealthCheckInterval szolgáltatást, mielőtt újrapróbálkozná az állapot-ellenőrzést, amíg el nem éri a HealthCheckRetryTimeoutSec értéket. Az alapértelmezett és ajánlott érték 0 másodperc. |
MaxPercentUnhealthyDeployedApplications | PowerShell, Visual Studio | Az alapértelmezett és ajánlott érték 0. Adja meg az üzembe helyezett alkalmazások maximális számát (lásd az Állapot szakaszt), amely nem kifogástalan lehet, mielőtt az alkalmazás nem megfelelőnek minősül, és nem sikerül a frissítés. Ez a paraméter határozza meg az alkalmazás állapotát a csomóponton, és segít észlelni a frissítések során felmerülő problémákat. Az alkalmazás replikái általában terheléselosztást kapnak a másik csomóponton, ami lehetővé teszi, hogy az alkalmazás kifogástalan állapotban jelenjen meg, így lehetővé téve a frissítés folytatását. A Szigorú MaxPercentUnhealthyDeployedApplications állapot megadásával a Service Fabric gyorsan észleli az alkalmazáscsomaggal kapcsolatos problémát, és segít a gyors frissítés sikertelenségének előidézésében. |
MaxPercentUnhealthyServices | PowerShell, Visual Studio | A DefaultServiceTypeHealthPolicy és a ServiceTypeHealthPolicyMap paramétere. Az alapértelmezett és ajánlott érték 0. Adja meg az alkalmazáspéldány azon szolgáltatásainak maximális számát, amelyek nem megfelelőek lehetnek, mielőtt az alkalmazás nem megfelelőnek minősül, és nem sikerül a frissítés. |
MaxPercentUnhealthyPartitionsPerService | PowerShell, Visual Studio | A DefaultServiceTypeHealthPolicy és a ServiceTypeHealthPolicyMap paramétere. Az alapértelmezett és ajánlott érték 0. Adja meg a szolgáltatásban lévő olyan partíciók maximális számát, amelyek nem megfelelőek lehetnek, mielőtt a szolgáltatás nem megfelelő állapotúnak minősül. |
MaxPercentUnhealthyReplicasPerPartition | PowerShell, Visual Studio | A DefaultServiceTypeHealthPolicy és a ServiceTypeHealthPolicyMap paramétere. Az alapértelmezett és ajánlott érték 0. Adja meg a partíción lévő replikák maximális számát, amelyek nem kifogástalanok lehetnek, mielőtt a partíció nem megfelelőnek minősül. |
ServiceTypeHealthPolicyMap | PowerShell, Visual Studio | A szolgáltatástípushoz tartozó szolgáltatások állapotának kiértékeléséhez használt állapotszabályzatot jelöli. A kivonattábla bemenete a következő formátumban történik: @ {"ServiceTypeName" : "MaxPercentUnhealthyPartitionsPerService,MaxPercentUnhealthyReplicasPerPartition,MaxPercentUnhealthyServices"} Például: @{ "ServiceTypeName01" = "5,10,5"; "ServiceTypeName02" = "5,5,5" } |
TimeoutSec | PowerShell , Visual Studio | A művelet időtúllépési időtartamát adja meg másodpercben. |
UpgradeDomainTimeoutSec | PowerShell, Visual Studio | Egyetlen frissítési tartomány frissítésének maximális ideje (másodpercben). Ha ezt az időtúllépést eléri, a frissítés leáll, és a FailureAction beállítása alapján folytatódik. Az alapértelmezett érték soha nem (Végtelen), és az alkalmazásnak megfelelően kell testre szabni. |
UpgradeReplicaSetCheckTimeoutSec | PowerShell, Visual Studio | Másodpercben mérve. Állapot nélküli szolgáltatás – Egyetlen frissítési tartományon belül a Service Fabric megpróbálja biztosítani, hogy a szolgáltatás további példányai is elérhetők legyenek. Ha a célpéldányok száma több mint egy, a Service Fabric egynél több példányt vár, legfeljebb egy maximális időtúllépési értékig. Ez az időtúllépés az UpgradeReplicaSetCheckTimeoutSec tulajdonság használatával van megadva. Ha az időkorlát lejár, a Service Fabric a szolgáltatáspéldányok számától függetlenül folytatja a frissítést. Ha a célpéldányok száma egy, a Service Fabric nem vár, és azonnal folytatja a frissítést. Állapotalapú szolgáltatás – Egyetlen frissítési tartományon belül a Service Fabric megpróbálja biztosítani, hogy a replikakészlet kvórummal rendelkezzen. A Service Fabric megvárja, amíg a kvórum elérhető lesz, legfeljebb a maximális időtúllépési értékig (amelyet az UpgradeReplicaSetCheckTimeoutSec tulajdonság határoz meg). Ha az időkorlát lejár, a Service Fabric a kvórumtól függetlenül folytatja a frissítést. Ez a beállítás soha (végtelen) értékre van állítva előregördüléskor, visszagördüléskor pedig 1200 másodperc. |
UpgradeTimeoutSec | PowerShell, Visual Studio | Időtúllépés (másodpercben), amely a teljes frissítésre vonatkozik. Ha ezt az időtúllépést eléri, a frissítés leáll, és a FailureAction aktiválódik. Az alapértelmezett érték soha nem (Végtelen), és az alkalmazásnak megfelelően kell testre szabni. |
WhatIf | PowerShell | Az engedélyezett értékek a True (Igaz) és a False (Hamis). Bemutatja, mi történne a parancsmag futtatásakor. A parancsmag nem fut. |
A MaxPercentUnhealthyServices, a MaxPercentUnhealthyPartitionsPerService és a MaxPercentUnhealthyReplicasPerPartition feltétel szolgáltatástípusonként adható meg egy alkalmazáspéldányhoz. Ezeknek a paramétereknek a szolgáltatásonkénti beállítása lehetővé teszi, hogy az alkalmazások különböző, különböző kiértékelési szabályzatokkal rendelkező szolgáltatástípusokat tartalmazzanak. Az állapot nélküli átjárószolgáltatás típusa lehet például egy MaxPercentUnhealthyPartitionsPerService , amely eltér egy adott alkalmazáspéldány állapotalapú motorszolgáltatás-típusától.
SFCTL-paraméterek
A Service Fabric-alkalmazások Service Fabric CLI-vel történő frissítései az sfctl alkalmazásfrissítési parancsot, valamint a következő kötelező és opcionális paramétereket használják.
Kötelező paraméterek
Paraméter | Leírás |
---|---|
alkalmazásazonosító | A frissített alkalmazás azonosítója. Ez általában az alkalmazás teljes neve a "fabric:" URI-séma nélkül. A 6.0-s verziótól kezdődően a hierarchikus nevek "~" karakterrel vannak elválasztva. Ha például az alkalmazás neve "fabric:/myapp/app1", akkor az alkalmazás identitása a 6.0-s vagy újabb verzióban a "myapp~app1", a korábbi verziókban pedig a "myapp/app1" lesz. |
alkalmazásverzió | Annak az alkalmazástípusnak a verziója, amelyet a frissítés megcélz. |
parameters | Az alkalmazás frissítésekor alkalmazandó alkalmazásparaméterek JSON-kódolt listája. |
Választható paraméterek
Paraméter | Leírás |
---|---|
default-service-health-policy | A szolgáltatástípus állapotának kiértékeléséhez alapértelmezés szerint használt állapotházirend JSON-kódolt specifikációja. A térkép alapértelmezés szerint üres. |
hibaművelet | Az engedélyezett értékek a visszaállítás, a manuális és az érvénytelen értékek. Az a kompenzáló művelet, amelyet akkor kell végrehajtani, ha egy figyelt frissítés figyelési szabályzatot vagy állapotszabályzat-szabálysértést tapasztal. A visszaállítás azt határozza meg, hogy a frissítés automatikusan visszavesse a frissítés előtti verziót. A manuális funkció azt jelzi, hogy a frissítés a UnmonitoredManual frissítési módra vált. Az érvénytelen azt jelzi, hogy a hibaművelet érvénytelen. |
újraindítás kényszerítve | Ha a szolgáltatáskód frissítése nélkül frissít egy konfigurációt vagy adatcsomagot, a szolgáltatás csak akkor indul újra, ha a ForceRestart tulajdonság értéke True. A frissítés befejezése után a Service Fabric értesíti a szolgáltatást, hogy egy új konfigurációs csomag vagy adatcsomag érhető el. A módosításokat a szolgáltatás végzi. Szükség esetén a szolgáltatás újraindulhat. |
állapot-check-retry-timeout | Az állapotértékelés újrapróbálásához szükséges idő, amikor az alkalmazás vagy a fürt állapota nem megfelelő a FailureAction végrehajtása előtt. Először ISO 8601-időtartamot képviselő sztringként értelmezik. Ha ez nem sikerül, akkor a rendszer az ezredmásodperc teljes számát képviselő számként értelmezi. Alapértelmezett: PT0H10M0S. |
állapot-ellenőrzés-stabil-időtartam | Az az idő, amíg az alkalmazásnak vagy a fürtnek kifogástalan állapotban kell maradnia, mielőtt a frissítés a következő frissítési tartományra lép. Először ISO 8601-időtartamot képviselő sztringként értelmezik. Ha ez nem sikerül, akkor a rendszer az ezredmásodperc teljes számát képviselő számként értelmezi. Alapértelmezett: PT0H2M0S. |
állapot-ellenőrzés-várakozás időtartama | Az állapotszabályzatok alkalmazása előtt a frissítési tartomány befejezése után várakozni kívánt idő. Először ISO 8601-időtartamot képviselő sztringként értelmezik. Ha ez nem sikerül, akkor a rendszer az ezredmásodperc teljes számát képviselő számként értelmezi. Alapértelmezett: 0. |
max-unhealthy-apps | Az alapértelmezett és ajánlott érték 0. Adja meg az üzembe helyezett alkalmazások maximális számát (lásd az Állapot szakaszt), amely nem kifogástalan lehet, mielőtt az alkalmazás nem megfelelőnek minősül, és nem sikerül a frissítés. Ez a paraméter határozza meg az alkalmazás állapotát a csomóponton, és segít észlelni a frissítések során felmerülő problémákat. Az alkalmazás replikái általában terheléselosztást kapnak a másik csomóponton, ami lehetővé teszi, hogy az alkalmazás kifogástalan állapotban jelenjen meg, így lehetővé téve a frissítés folytatását. A Service Fabric a szigorú , maximálisan kifogástalan állapotú alkalmazások állapotának megadásával gyorsan észleli az alkalmazáscsomaggal kapcsolatos problémát, és segít a gyors frissítés sikertelenségében. 0 és 100 közötti számként jelölve. |
mód | Az engedélyezett értékek: Monitorozott, UpgradeMode, UnmonitoredAuto, UnmonitoredManual. Az alapértelmezett érték a UnmonitoredAuto. Az értékek leírását a Visual Studio és a PowerShell kötelező paraméterei szakaszában találja. |
replica-set-check-timeout | Másodpercben mérve. Állapot nélküli szolgáltatás – Egyetlen frissítési tartományon belül a Service Fabric megpróbálja biztosítani, hogy a szolgáltatás további példányai is elérhetők legyenek. Ha a célpéldányok száma több mint egy, a Service Fabric egynél több példányt vár, legfeljebb egy maximális időtúllépési értékig. Ezt az időtúllépést a replica-set-check-timeout tulajdonság használatával adhatja meg. Ha az időkorlát lejár, a Service Fabric a szolgáltatáspéldányok számától függetlenül folytatja a frissítést. Ha a célpéldányok száma egy, a Service Fabric nem vár, és azonnal folytatja a frissítést. Állapotalapú szolgáltatás – Egyetlen frissítési tartományon belül a Service Fabric megpróbálja biztosítani, hogy a replikakészlet kvórummal rendelkezzen. A Service Fabric megvárja, amíg a kvórum elérhető lesz, legfeljebb a maximális időtúllépési értékig (amelyet a replika-set-check-timeout tulajdonság határoz meg). Ha az időkorlát lejár, a Service Fabric a kvórumtól függetlenül folytatja a frissítést. Ez a beállítás soha (végtelen) értékre van állítva előregördüléskor, visszagördüléskor pedig 1200 másodperc. |
service-health-policy | JSON-kódolt térkép szolgáltatástípus-állapotszabályzattal szolgáltatástípusonként. A térkép alapértelmezés szerint üres. Paraméter JSON formátuma. Az "Érték" rész JSON-ja tartalmazza a MaxPercentUnhealthyServices, a MaxPercentUnhealthyPartitionsPerService és a MaxPercentUnhealthyReplicasPerPartition értéket. Ezeknek a paramétereknek a leírását a Visual Studio és a PowerShell Opcionális paraméterek szakaszában találja. |
timeout | A művelet időtúllépési időtartamát adja meg másodpercben. Alapértelmezett: 60. |
upgrade-domain-timeout | Az egyes frissítési tartományoknak a FailureAction végrehajtása előtt be kell fejeződniük. Először ISO 8601-időtartamot képviselő sztringként értelmezik. Ha ez nem sikerül, akkor a rendszer az ezredmásodperc teljes számát képviselő számként értelmezi. Az alapértelmezett érték soha nem (Végtelen), és az alkalmazásnak megfelelően kell testre szabni. Alapértelmezett: P10675199DT02H48M05.4775807S. |
frissítési időtúllépés | Az egyes frissítési tartományoknak a FailureAction végrehajtása előtt be kell fejeződniük. Először ISO 8601-időtartamot képviselő sztringként értelmezik. Ha ez nem sikerül, akkor a rendszer az ezredmásodperc teljes számát képviselő számként értelmezi. Az alapértelmezett érték soha nem (Végtelen), és az alkalmazásnak megfelelően kell testre szabni. Alapértelmezett: P10675199DT02H48M05.4775807S. |
figyelmeztetés hibaként | Az engedélyezett értékek a True (Igaz) és a False (Hamis). Az alapértelmezett érték a False (Hamis). Jelölőként átadható. Az alkalmazás figyelmeztetési állapot eseményeit a frissítés során az alkalmazás állapotának kiértékelésekor hibákként kezelje. Alapértelmezés szerint a Service Fabric nem értékeli ki a figyelmeztetési állapot eseményeit hibáknak (hibáknak), így a frissítés akkor is folytatódhat, ha vannak figyelmeztetési események. |
Következő lépések
Az alkalmazás Visual Studio használatával történő frissítése végigvezeti egy alkalmazásfrissítésen a Visual Studióval.
Az alkalmazás PowerShell-lel való frissítése végigvezeti az alkalmazás frissítésén a PowerShell használatával.
Az alkalmazás linuxos Service Fabric CLI-vel való frissítése végigvezeti az alkalmazás frissítésén a Service Fabric CLI használatával.
Az alkalmazás frissítése a Service Fabric Eclipse beépülő modullal
Az alkalmazásfrissítések kompatibilissé tételéhez ismerje meg, hogyan használhatja az adat szerializálást.
Speciális témakörökre hivatkozva megtudhatja, hogyan használhat speciális funkciókat az alkalmazás frissítése során.
Az alkalmazásfrissítések gyakori problémáinak megoldásához kövesse az alkalmazásfrissítések hibaelhárításának lépéseit.