Een Azure Service Fabric-toepassing beheren met behulp van Azure Service Fabric CLI (sfctl)
Meer informatie over het maken en verwijderen van toepassingen die worden uitgevoerd in een Azure Service Fabric-cluster.
Vereisten
Installeer Service Fabric CLI. Selecteer vervolgens uw Service Fabric-cluster. Zie Aan de slag met Service Fabric CLI voor meer informatie.
Zorg dat er een Service Fabric-toepassingspakket gereed is om te worden geïmplementeerd. Lees over het Service Fabric-toepassingsmodel voor meer informatie over het ontwerpen en verpakken van een toepassing.
Overzicht
Voer de volgende stappen uit om een nieuwe toepassing te implementeren:
- Upload een toepassingspakket naar het Service Fabric-installatiekopieënarchief.
- Een toepassingstype inrichten.
- Verwijder de inhoud van het afbeeldingsarchief.
- Geef een toepassing op en maak deze.
- Services opgeven en maken.
Voer de volgende stappen uit om een bestaande toepassing te verwijderen:
- Verwijder de toepassing.
- Maak de inrichting van het gekoppelde toepassingstype ongedaan.
Een nieuwe toepassing implementeren
Voer de volgende taken uit om een nieuwe toepassing te implementeren:
Een nieuw toepassingspakket uploaden naar het afbeeldingsarchief
Voordat u een toepassing maakt, uploadt u het toepassingspakket naar het Service Fabric-installatiekopieënarchief.
Als uw toepassingspakket zich bijvoorbeeld in de app_package_dir
map bevindt, gebruikt u de volgende opdrachten om de map te uploaden:
sfctl application upload --path ~/app_package_dir
Voor grote toepassingspakketten kunt u de --show-progress
optie opgeven om de voortgang van het uploaden weer te geven.
Het toepassingstype inrichten
Wanneer het uploaden is voltooid, richt u de toepassing in. Gebruik de volgende opdracht om de toepassing in te richten:
sfctl application provision --application-type-build-path app_package_dir
De waarde voor application-type-build-path
is de naam van de map waar u het toepassingspakket hebt geüpload.
Het toepassingspakket verwijderen
Het wordt aanbevolen om het toepassingspakket te verwijderen nadat de toepassing is geregistreerd. Als u toepassingspakketten verwijdert uit het installatiekopieënarchief, worden systeembronnen vrijgemaakt. Het bewaren van ongebruikte toepassingspakketten verbruikt schijfopslag en leidt tot prestatieproblemen van de toepassing.
Als u het toepassingspakket wilt verwijderen uit het installatiekopieënarchief, gebruikt u de volgende opdracht:
sfctl store delete --content-path app_package_dir
content-path
moet de naam zijn van de map die u hebt geüpload toen u de toepassing maakte.
Een toepassing maken van een toepassingstype
Nadat u de toepassing hebt ingericht, gebruikt u de volgende opdracht om uw toepassing een naam te geven en te maken:
sfctl application create --app-name fabric:/TestApp --app-type TestAppType --app-version 1.0
app-name
is de naam die u wilt gebruiken voor het toepassingsexemplaar. U kunt aanvullende parameters ophalen uit het eerder ingerichte toepassingsmanifest.
De naam van de toepassing moet beginnen met het voorvoegsel fabric:/
.
Services maken voor de nieuwe toepassing
Nadat u een toepassing hebt gemaakt, maakt u services op basis van de toepassing. In het volgende voorbeeld maken we een nieuwe stateless service op basis van onze toepassing. De services die u kunt maken vanuit een toepassing, worden gedefinieerd in een servicemanifest in het eerder ingerichte toepassingspakket.
sfctl service create --app-id TestApp --name fabric:/TestApp/TestSvc --service-type TestServiceType \
--stateless --instance-count 1 --singleton-scheme
Implementatie en status van toepassing controleren
Gebruik de volgende statusopdrachten om te controleren of alles in orde is:
sfctl application list
sfctl service list --application-id TestApp
Als u wilt controleren of de service in orde is, gebruikt u vergelijkbare opdrachten om de status van zowel de service als de toepassing op te halen:
sfctl application health --application-id TestApp
sfctl service health --service-id TestApp/TestSvc
Gezonde services en toepassingen hebben een HealthState
waarde van Ok
.
Een bestaande toepassing verwijderen
Als u een toepassing wilt verwijderen, voert u de volgende taken uit:
De toepassing verwijderen
Gebruik de volgende opdracht om de toepassing te verwijderen:
sfctl application delete --application-id TestEdApp
Inrichting van het toepassingstype ongedaan maken
Nadat u de toepassing hebt verwijderd, kunt u de inrichting van het toepassingstype opheffen als u deze niet meer nodig hebt. Gebruik de volgende opdracht om de inrichting van het toepassingstype ongedaan te maken:
sfctl application unprovision --application-type-name TestAppType --application-type-version 1.0
De typenaam en de typeversie moeten overeenkomen met de naam en versie in het eerder ingerichte toepassingsmanifest.
Toepassing upgraden
Nadat u uw toepassing hebt gemaakt, kunt u dezelfde reeks stappen herhalen om een tweede versie van uw toepassing in te richten. Vervolgens kunt u met een Service Fabric-toepassingsupgrade overstappen op het uitvoeren van de tweede versie van de toepassing. Zie de documentatie over service fabric-toepassingsupgrades voor meer informatie.
Als u een upgrade wilt uitvoeren, richt u eerst de volgende versie van de toepassing in met dezelfde opdrachten als voorheen:
sfctl application upload --path ~/app_package_dir_2
sfctl application provision --application-type-build-path app_package_dir_2
sfctl store delete --content-path app_package_dir_2
Het is raadzaam om vervolgens een bewaakte automatische upgrade uit te voeren, start u de upgrade door de volgende opdracht uit te voeren:
sfctl application upgrade --app-id TestApp --app-version 2.0.0 --parameters "{\"test\":\"value\"}" --mode Monitored
Upgrades overschrijven bestaande parameters met elke set die is opgegeven. Toepassingsparameters moeten indien nodig als argumenten worden doorgegeven aan de upgradeopdracht. Toepassingsparameters moeten worden gecodeerd als een JSON-object.
Als u eerder opgegeven parameters wilt ophalen, kunt u de sfctl application info
opdracht gebruiken.
Wanneer een toepassingsupgrade wordt uitgevoerd, kan de status worden opgehaald met behulp van de sfctl application upgrade-status
opdracht .
Ten slotte, als een upgrade wordt uitgevoerd en moet worden geannuleerd, kunt u de sfctl application upgrade-rollback
gebruiken om de upgrade terug te draaien.