De upgrade van een Service Fabric-toepassing configureren in Visual Studio
Visual Studio-hulpprogramma's voor Azure Service Fabric bieden upgradeondersteuning voor het publiceren naar lokale of externe clusters. Er zijn drie scenario's waarin u uw toepassing wilt upgraden naar een nieuwere versie in plaats van de toepassing te vervangen tijdens het testen en opsporen van fouten:
- Toepassingsgegevens gaan niet verloren tijdens de upgrade.
- Beschikbaarheid blijft hoog, zodat er tijdens de upgrade geen serviceonderbrekingen zijn, als er voldoende service-exemplaren zijn verspreid over upgradedomeinen.
- Tests kunnen worden uitgevoerd op een toepassing terwijl deze wordt bijgewerkt.
Parameters die nodig zijn om een upgrade uit te voeren
U kunt kiezen uit twee typen implementatie: normaal of upgraden. Bij een reguliere implementatie worden alle eerdere implementatiegegevens en -gegevens in het cluster gewist, terwijl een upgrade-implementatie deze behoudt. Wanneer u een Service Fabric-toepassing in Visual Studio bijwerken, moet u parameters voor toepassingsupgrades en statuscontrolebeleid opgeven. Parameters voor toepassingsupgrades helpen bij het beheren van de upgrade, terwijl het statuscontrolebeleid bepaalt of de upgrade is geslaagd. Zie De upgrade van de Service Fabric-toepassing: upgradeparameters voor meer informatie.
Er zijn drie upgrademodi: Bewaakt, UnmonitoredAuto en UnmonitoredManual.
- Een bewaakte upgrade automatiseert de upgrade en de statuscontrole van de toepassing.
- Een UnmonitoredAuto-upgrade automatiseert de upgrade, maar slaat de statuscontrole van de toepassing over.
- Wanneer u een UnmonitoredManual-upgrade uitvoert, moet u elk upgradedomein handmatig upgraden.
Voor elke upgrademodus zijn verschillende sets parameters vereist. Zie Parameters voor toepassingsupgrades voor meer informatie over de beschikbare upgradeopties.
Een Service Fabric-toepassing bijwerken in Visual Studio
Als u de Visual Studio Service Fabric-hulpprogramma's gebruikt om een Service Fabric-toepassing te upgraden, kunt u een publicatieproces opgeven als een upgrade in plaats van een reguliere implementatie door het selectievakje De toepassing upgraden in te schakelen.
De upgradeparameters configureren
Klik op de knop Instellingen naast het selectievakje. Het dialoogvenster Upgradeparameters bewerken wordt weergegeven. Het dialoogvenster Parameters voor upgrade bewerken ondersteunt de modi Monitored, UnmonitoredAuto en UnmonitoredManual upgrade.
Selecteer de upgrademodus die u wilt gebruiken en vul vervolgens het parameterraster in.
Elke parameter heeft standaardwaarden. De optionele parameter DefaultServiceTypeHealthPolicy gebruikt een hash-tabelinvoer. Hier volgt een voorbeeld van de indeling voor de hash-tabelinvoer voor DefaultServiceTypeHealthPolicy:
@{ ConsiderWarningAsError = "false"; MaxPercentUnhealthyDeployedApplications = 0; MaxPercentUnhealthyServices = 0; MaxPercentUnhealthyPartitionsPerService = 0; MaxPercentUnhealthyReplicasPerPartition = 0 }
ServiceTypeHealthPolicyMap is een andere optionele parameter die een hash-tabelinvoer in de volgende indeling gebruikt:
@ {"ServiceTypeName" : "MaxPercentUnhealthyPartitionsPerService,MaxPercentUnhealthyReplicasPerPartition,MaxPercentUnhealthyServices"}
Hier volgt een voorbeeld uit het echte leven:
@{ "ServiceTypeName01" = "5,10,5"; "ServiceTypeName02" = "5,5,5" }
Als u unmonitoredManual-upgrademodus selecteert, moet u handmatig een PowerShell-console starten om door te gaan en het upgradeproces te voltooien. Raadpleeg de service fabric-toepassingsupgrade: geavanceerde onderwerpen voor meer informatie over hoe handmatige upgrade werkt.
Een toepassing upgraden met behulp van PowerShell
U kunt PowerShell-cmdlets gebruiken om een Service Fabric-toepassing bij te werken. Zie de zelfstudie voor upgrade van Service Fabric-toepassingen en Start-ServiceFabricApplicationUpgrade voor gedetailleerde informatie.
Een statuscontrolebeleid opgeven in het manifestbestand van de toepassing
Elke service in een Service Fabric-toepassing kan een eigen statusbeleidsparameters hebben die de standaardwaarden overschrijven. U kunt deze parameterwaarden opgeven in het manifestbestand van de toepassing.
In het volgende voorbeeld ziet u hoe u een uniek statuscontrolebeleid toepast voor elke service in het toepassingsmanifest.
<Policies>
<HealthPolicy ConsiderWarningAsError="false" MaxPercentUnhealthyDeployedApplications="20">
<DefaultServiceTypeHealthPolicy MaxPercentUnhealthyServices="20"
MaxPercentUnhealthyPartitionsPerService="20"
MaxPercentUnhealthyReplicasPerPartition="20" />
<ServiceTypeHealthPolicy ServiceTypeName="ServiceTypeName1"
MaxPercentUnhealthyServices="20"
MaxPercentUnhealthyPartitionsPerService="20"
MaxPercentUnhealthyReplicasPerPartition="20" />
</HealthPolicy>
</Policies>
Volgende stappen
Zie Een toepassing upgraden met Visual Studio voor meer informatie over het upgraden van een toepassing.