Service de mise à jour
Mises à jour un service Service Fabric à l’aide de la description de mise à jour spécifiée.
Cette API permet de mettre à jour les propriétés d’un service Service Fabric en cours d’exécution. L’ensemble de propriétés qui peuvent être mises à jour est un sous-ensemble des propriétés qui ont été spécifiées au moment de la création du service. L’ensemble actuel de propriétés peut être obtenu à l’aide de l’API GetServiceDescription
. Notez que la mise à jour des propriétés d’un service en cours d’exécution est différente de la mise à niveau de votre application à l’aide d’API StartApplicationUpgrade
. La mise à niveau est une opération en arrière-plan de longue durée qui consiste à déplacer l’application d’une version à une autre, un domaine de mise à niveau à la fois, tandis que la mise à jour applique immédiatement les nouvelles propriétés au service.
Requête
Méthode | URI de demande |
---|---|
POST | /Services/{serviceId}/$/Update?api-version=6.0&timeout={timeout} |
Paramètres
Nom | Type | Obligatoire | Emplacement |
---|---|---|---|
serviceId |
string | Oui | Chemin d’accès |
api-version |
string | Oui | Requête |
timeout |
entier (int64) | Non | Requête |
ServiceUpdateDescription |
ServiceUpdateDescription | Oui | body |
serviceId
Type : chaîne
Obligatoire : Oui
Identité du service. Cet ID est généralement le nom complet du service sans le schéma d’URI « fabric: ».
Depuis la version 6.0, les noms hiérarchiques sont séparés par le caractère « ~ ».
Par exemple, si un service est nommé « fabric:/myapp/app1/svc1 », son identité de service est « myapp~app1~svc1 » dans les versions 6.0 et ultérieures et « myapp/app1/svc1 » dans les versions antérieures.
api-version
Type : chaîne
Obligatoire : Oui
Par défaut : 6.0
Version de l’API. Ce paramètre est obligatoire et sa valeur doit être « 6.0 ».
La version de l’API REST Service Fabric est basée sur la version du runtime dans laquelle l’API a été introduite ou a été modifiée. Le runtime Service Fabric prend en charge plusieurs versions de l’API. Il s’agit de la dernière version prise en charge de l’API. Si une version d’API inférieure est transmise, la réponse retournée peut être différente de celle documentée dans cette spécification.
En outre, le runtime accepte toute version supérieure à la dernière version prise en charge jusqu’à la version actuelle du runtime. Par conséquent, si la dernière version de l’API est 6.0, mais si le runtime est 6.1, afin de faciliter l’écriture des clients, le runtime accepte la version 6.1 pour cette API. Toutefois, le comportement de l’API sera en fonction de la version 6.0 documentée.
timeout
Type : integer (int64)
Obligatoire : Non
Par défaut : 60
InclusiveMaximum : 4294967295
InclusiveMinimum : 1
Délai d’attente du serveur pour l’exécution de l’opération en secondes. Il spécifie la durée pendant laquelle le client attend la fin de l’opération demandée. La valeur par défaut de ce paramètre est de 60 secondes.
ServiceUpdateDescription
Type : ServiceUpdateDescription
Obligatoire : Oui
Informations nécessaires pour mettre à jour un service.
Réponses
Code d’état HTTP | Description | Schéma de réponse |
---|---|---|
200 (OK) | Une opération réussie retourne le code 202 status. |
|
Tous les autres codes status | Réponse d’erreur détaillée. |
FabricError |
Exemples
Service sans état
Cet exemple montre comment mettre à jour les paramètres liés au placement et à l’équilibrage de charge d’un service Service Fabric sans état.
Requête
POST http://localhost:19080/Services/test~test1/$/Update?api-version=6.0
Corps
{
"ServiceKind": "Stateless",
"Flags": "1568",
"PlacementConstraints": "Color==Red",
"DefaultMoveCost": "High",
"ScalingPolicies": [
{
"ScalingTrigger": {
"Kind": "AveragePartitionLoad",
"MetricName": "servicefabric:/_CpuCores",
"LowerLoadThreshold": "0.500000",
"UpperLoadThreshold": "0.800000",
"ScaleIntervalInSeconds": "900"
},
"ScalingMechanism": {
"Kind": "PartitionInstanceCount",
"MinInstanceCount": "4",
"MaxInstanceCount": "6",
"ScaleIncrement": "2"
}
}
]
}
Réponse 200
Corps
Le corps de la réponse est vide.
Service avec état
Cet exemple montre comment mettre à jour les paramètres liés au placement et à l’équilibrage de charge d’un service Service Fabric avec état.
Requête
POST http://localhost:19080/Services/test~test2/$/Update?api-version=6.0
Corps
{
"ServiceKind": "Stateful",
"Flags": "40",
"PlacementConstraints": "Color==Green",
"StandByReplicaKeepDurationSeconds": "1000"
}
Réponse 200
Corps
Le corps de la réponse est vide.