Zelfstudie voor het upgraden van Service Fabric-toepassingen met Visual Studio
Azure Service Fabric vereenvoudigt het upgradeproces van cloudtoepassingen door ervoor te zorgen dat alleen gewijzigde services worden bijgewerkt en dat de toepassingsstatus tijdens het upgradeproces wordt bewaakt. De toepassing wordt ook automatisch teruggezet naar de vorige versie wanneer er problemen optreden. Service Fabric-toepassingsupgrades zijn nul downtime, omdat de toepassing zonder downtime kan worden geüpgraded. In deze zelfstudie wordt beschreven hoe u een rolling upgrade van Visual Studio voltooit.
Stap 1: Het voorbeeld van visualobjecten bouwen en publiceren
Download eerst de toepassing Visual Objects van GitHub. Bouw en publiceer vervolgens de toepassing door met de rechtermuisknop te klikken op het toepassingsproject, VisualObjects en de opdracht Publiceren te selecteren in het menu-item Service Fabric.
Als u Publiceren selecteert, wordt er een pop-up weergegeven en kunt u het doelprofiel instellen op PublishProfiles\Local.xml. Het venster moet er als volgt uitzien voordat u op Publiceren klikt.
U kunt nu klikken op Publiceren in het dialoogvenster. U kunt Service Fabric Explorer gebruiken om het cluster en de toepassing weer te geven. De toepassing Visual Objects heeft een webservice waarnaar u kunt gaan door in de adresbalk van uw browser te typen http://localhost:8081/visualobjects/
. U ziet nu 10 zwevende visuele objecten die zich op het scherm bewegen.
OPMERKING: Als u implementeert in Cloud.xml
profiel (Azure Service Fabric), moet de toepassing beschikbaar zijn op http://{ServiceFabricName}.{ Region}.cloudapp.azure.com:8081/visualobjects/. Zorg ervoor dat u wel hebt 8081/TCP
geconfigureerd in de Load Balancer (zoek de load balancer in dezelfde resourcegroep als het Service Fabric-exemplaar).
Stap 2: het voorbeeld van visuele objecten bijwerken
Mogelijk ziet u dat de visualobjecten niet worden gedraaid met de versie die is geïmplementeerd in stap 1. We gaan deze toepassing upgraden naar een toepassing waar de visuele objecten ook draaien.
Selecteer het project VisualObjects.ActorService in de VisualObjects-oplossing en open het bestand VisualObjectActor.cs . Ga in dat bestand naar de methode MoveObject
, markeer de visualObject.Move(false)
opmerking en verwijder opmerkingen visualObject.Move(true)
. Met deze codewijziging worden de objecten gedraaid nadat de service is bijgewerkt. U kunt nu de oplossing bouwen (niet opnieuw bouwen), waarmee de gewijzigde projecten worden gebouwd. Als u Alles opnieuw opbouwen selecteert, moet u de versies voor alle projecten bijwerken.
We moeten ook onze toepassing versien. Als u de versiewijzigingen wilt aanbrengen nadat u met de rechtermuisknop op het VisualObjects-project hebt geklikt, kunt u de optie Manifestversies van Visual Studio bewerken gebruiken. Als u deze optie selecteert, wordt het dialoogvenster voor editieversies als volgt weergegeven:
Werk de versies voor de gewijzigde projecten en de bijbehorende codepakketten bij, samen met de toepassing naar versie 2.0.0. Nadat de wijzigingen zijn aangebracht, moet het manifest er als volgt uitzien (vetgedrukte gedeelten geven de wijzigingen weer):
De Visual Studio-hulpprogramma's kunnen automatisch samenvouwen van versies uitvoeren bij het selecteren van automatisch bijwerken van toepassings- en serviceversies. Als u SemVer gebruikt, moet u de versie van het code- en/of configuratiepakket alleen bijwerken als deze optie is geselecteerd.
Sla de wijzigingen op en schakel nu het selectievakje De toepassing upgraden in.
Stap 3: Uw toepassing upgraden
Raak vertrouwd met de parameters voor de upgrade van de toepassing en het upgradeproces om een goed beeld te krijgen van de verschillende upgradeparameters, time-outs en statuscriterium dat kan worden toegepast. Voor deze procedure is het criterium voor servicestatusevaluatie ingesteld op de standaardmodus (niet-bewaakte modus). U kunt deze instellingen configureren door Upgrade-instellingen configureren te selecteren en vervolgens de parameters naar wens te wijzigen.
Nu zijn we klaar om de toepassingsupgrade te starten door Publiceren te selecteren. Met deze optie wordt uw toepassing bijgewerkt naar versie 2.0.0, waarin de objecten draaien. Service Fabric werkt één updatedomein tegelijk bij (sommige objecten worden eerst bijgewerkt, gevolgd door andere) en de service blijft toegankelijk tijdens de upgrade. Toegang tot de service kan worden gecontroleerd via uw client (browser).
Nu de upgrade van de toepassing wordt voortgezet, kunt u deze bewaken met Service Fabric Explorer met behulp van het tabblad Upgrades in Voortgang onder de toepassingen.
In een paar minuten moeten alle updatedomeinen worden bijgewerkt (voltooid) en in het uitvoervenster van Visual Studio moet ook worden aangegeven dat de upgrade is voltooid. En u zou moeten zien dat alle visuele objecten in uw browservenster nu draaien!
U kunt proberen om de versies te wijzigen en over te stappen van versie 2.0.0 naar versie 3.0.0 als oefening, of zelfs van versie 2.0.0 terug naar versie 1.0.0. Speel met time-outs en statusbeleid om uzelf vertrouwd te maken met deze beleidsregels. Wanneer u implementeert in een Azure-cluster in plaats van een lokaal cluster, moeten de gebruikte parameters mogelijk verschillen. U wordt aangeraden de time-outs conservatief in te stellen.
Volgende stappen
Als u uw toepassing bijwerkt met PowerShell , wordt u begeleid bij het uitvoeren van een toepassingsupgrade met behulp van PowerShell.
Bepalen hoe uw toepassing wordt bijgewerkt met behulp van upgradeparameters.
Uw toepassingsupgrades compatibel maken door te leren hoe u gegevensserialisatie kunt gebruiken.
Meer informatie over het gebruik van geavanceerde functionaliteit tijdens het upgraden van uw toepassing door te verwijzen naar geavanceerde onderwerpen.
Los veelvoorkomende problemen in toepassingsupgrades op door te verwijzen naar de stappen in Het oplossen van problemen met toepassingsupgrades.