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 ervoor dat een Service Fabric-toepassingspakket klaar is om te worden geïmplementeerd. Lees voor meer informatie over het ontwerpen en verpakken van een toepassing het Service Fabric-toepassingsmodel.
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.
- De inrichting van het gekoppelde toepassingstype ongedaan maken.
Een nieuwe toepassing implementeren
Voltooi de volgende taken 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 de upload 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 uw toepassingspakket hebt geüpload.
Het toepassingspakket verwijderen
Het is raadzaam het toepassingspakket te verwijderen nadat de toepassing is geregistreerd. Als u toepassingspakketten verwijdert uit het installatiekopieënarchief, worden systeembronnen vrijgemaakt. Ongebruikte toepassingspakketten verbruiken schijfopslag en leiden tot prestatieproblemen van toepassingen.
Gebruik de volgende opdracht om het toepassingspakket uit het installatiekopieënarchief te verwijderen:
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 op 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 toepassingsexemplaren. 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 van de toepassing. In het volgende voorbeeld maken we een nieuwe stateless service op basis van onze toepassing. De services die u vanuit een toepassing kunt maken, 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 de 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
Voltooi de volgende taken om een toepassing te verwijderen:
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 ongedaan maken 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 wordt aanbevolen om vervolgens een bewaakte automatische upgrade uit te voeren, de upgrade te starten 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 worden doorgegeven als argumenten voor de upgradeopdracht, indien nodig. 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.
Als ten slotte een upgrade wordt uitgevoerd en moet worden geannuleerd, kunt u de sfctl application upgrade-rollback
upgrade terugdraaien.