Créer le service
Permet de créer le service Service Fabric spécifié.
Cette API permet de créer un service Service Fabric sans état ou avec état sous une application Service Fabric spécifiée. La description de la création du service inclut des informations de partitionnement et des propriétés facultatives pour le placement et l’équilibrage de charge. Certaines des propriétés peuvent être modifiées ultérieurement à l’aide de l’API UpdateService
.
Méthode | URI de demande |
---|---|
POST | /Applications/{applicationId}/$/GetServices/$/Create?api-version=6.0&timeout={timeout} |
Nom | Type | Obligatoire | Emplacement |
---|---|---|---|
applicationId |
string | Oui | Chemin d’accès |
api-version |
string | Oui | Requête |
timeout |
entier (int64) | Non | Requête |
ServiceDescription |
ServiceDescription | Oui | body |
Type : chaîne
Obligatoire : Oui
Identité de l’application. Il s’agit généralement du nom complet de l’application, sans « fabric ». Schéma d’URI.
Depuis la version 6.0, les noms hiérarchiques sont séparés par le caractère « ~ ».
Par exemple, si une application est nommée « fabric://mon_app/app1 », son identité est « mon_app~app1 » dans les versions 6.0 et supérieures, et « mon_app/app1 » dans les versions précédentes.
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.
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.
Type : ServiceDescription
Obligatoire : Oui
Informations nécessaires pour créer un service.
Code d’état HTTP | Description | Schéma de réponse |
---|---|---|
202 (accepté) | Une opération réussie retourne le code 202 status. |
|
Tous les autres codes status | Réponse d’erreur détaillée. |
FabricError |
Cet exemple montre comment créer un service Service Fabric sans état de base.
POST http://localhost:19080/Applications/test/$/GetServices/$/Create?api-version=6.0
{
"ServiceKind": "Stateless",
"ApplicationName": "fabric:/test",
"ServiceName": "fabric:/test/test1",
"ServiceTypeName": "StatelessFrontendService",
"PartitionDescription": {
"PartitionScheme": "Singleton"
},
"InstanceCount": "4"
}
Le corps de la réponse est vide.
Cet exemple montre comment créer un service Service Fabric avec état de base.
POST http://localhost:19080/Applications/test/$/GetServices/$/Create?api-version=6.0
{
"ServiceKind": "Stateful",
"ApplicationName": "fabric:/test",
"ServiceName": "fabric:/test/test2",
"ServiceTypeName": "StatefulBackendService",
"PartitionDescription": {
"PartitionScheme": "Singleton"
},
"TargetReplicaSetSize": "3",
"MinReplicaSetSize": "2",
"HasPersistedState": false
}
Le corps de la réponse est vide.
Cet exemple montre comment créer un service Service Fabric sans état avec un nom dns défini et une mise à l’échelle automatique en fonction de l’utilisation du processeur.
POST http://localhost:19080/Applications/test/$/GetServices/$/Create?api-version=6.0
{
"ServiceKind": "Stateless",
"ApplicationName": "fabric:/test",
"ServiceName": "fabric:/test/test1",
"ServiceTypeName": "StatelessFrontendService",
"InitializationData": [],
"PartitionDescription": {
"PartitionScheme": "Singleton"
},
"InstanceCount": "2",
"PlacementConstraints": "Color==Blue",
"CorrelationScheme": [],
"ServiceLoadMetrics": [],
"ServicePlacementPolicies": [],
"DefaultMoveCost": "Low",
"IsDefaultMoveCostSpecified": true,
"ServicePackageActivationMode": "ExclusiveProcess",
"ServiceDnsName": "test1.test",
"ScalingPolicies": [
{
"ScalingTrigger": {
"Kind": "AveragePartitionLoad",
"MetricName": "servicefabric:/_CpuCores",
"LowerLoadThreshold": "0.300000",
"UpperLoadThreshold": "0.800000",
"ScaleIntervalInSeconds": "600"
},
"ScalingMechanism": {
"Kind": "PartitionInstanceCount",
"MinInstanceCount": "1",
"MaxInstanceCount": "6",
"ScaleIncrement": "2"
}
}
]
}
Le corps de la réponse est vide.
Cet exemple montre comment créer un service Service Fabric avec état avec des partitions nommées et une mise à l’échelle activées en fonction de l’utilisation de la mémoire.
POST http://localhost:19080/Applications/test/$/GetServices/$/Create?api-version=6.0
{
"ServiceKind": "Stateful",
"ApplicationName": "fabric:/test",
"ServiceName": "fabric:/test/test2",
"ServiceTypeName": "StatefulBackendService",
"InitializationData": [],
"PartitionDescription": {
"PartitionScheme": "Named",
"Count": "1",
"Names": [
"0"
]
},
"TargetReplicaSetSize": "3",
"MinReplicaSetSize": "2",
"HasPersistedState": true,
"ServicePackageActivationMode": "ExclusiveProcess",
"ScalingPolicies": [
{
"ScalingTrigger": {
"Kind": "AverageServiceLoad",
"MetricName": "servicefabric:/_MemoryInMB",
"LowerLoadThreshold": "500",
"UpperLoadThreshold": "900",
"ScaleIntervalInSeconds": "600",
"UseOnlyPrimaryLoad": false
},
"ScalingMechanism": {
"Kind": "AddRemoveIncrementalNamedPartition",
"MinPartitionCount": "1",
"MaxPartitionCount": "3",
"ScaleIncrement": "1"
}
}
]
}
Le corps de la réponse est vide.