StatelessServiceDescription
Décrit un service sans état.
Propriétés
Nom | Type | Obligatoire |
---|---|---|
ApplicationName |
string | Non |
ServiceName |
string | Oui |
ServiceTypeName |
string | Oui |
InitializationData |
tableau d’entier | Non |
PartitionDescription |
PartitionSchemeDescription | Oui |
PlacementConstraints |
string | Non |
CorrelationScheme |
tableau de ServiceCorrelationDescription | Non |
ServiceLoadMetrics |
tableau de ServiceLoadMetricDescription | Non |
ServicePlacementPolicies |
tableau de ServicePlacementPolicyDescription | Non |
DefaultMoveCost |
string (énumération) | Non |
IsDefaultMoveCostSpecified |
boolean | Non |
ServicePackageActivationMode |
string (énumération) | Non |
ServiceDnsName |
string | Non |
ScalingPolicies |
tableau de ScalingPolicyDescription | Non |
TagsRequiredToPlace |
NodeTagsDescription | Non |
TagsRequiredToRun |
NodeTagsDescription | Non |
InstanceCount |
entier | Oui |
MinInstanceCount |
entier | Non |
MinInstancePercentage |
entier | Non |
Flags |
entier | Non |
InstanceCloseDelayDurationSeconds |
entier (int64) | Non |
InstanceLifecycleDescription |
InstanceLifecycleDescription | Non |
InstanceRestartWaitDurationSeconds |
entier (int64) | Non |
ApplicationName
Type : chaîne
Obligatoire : Non
Nom de l’application, y compris le schéma d’URI « fabric: ».
ServiceName
Type : chaîne
Obligatoire : Oui
Nom complet du service avec le schéma d’URI « fabric: ».
ServiceTypeName
Type : chaîne
Obligatoire : Oui
Nom du type de service spécifié dans le manifeste du service.
InitializationData
Type : tableau d’entier
Obligatoire : Non
Données d'initialisation en tant que tableau d'octets. Les données d'initialisation sont transmises aux instances ou aux réplicas de service lors de leur création.
PartitionDescription
Type : PartitionSchemeDescription
Obligatoire : Oui
Description de la partition en tant qu’objet.
PlacementConstraints
Type : chaîne
Obligatoire : Non
Contraintes de placement sous forme de chaîne. Les contraintes de placement sont des expressions booléennes sur les propriétés de nœud et permettent de restreindre un service à des nœuds particuliers en fonction des besoins du service. Par exemple, pour placer un service sur des nœuds où NodeType est bleu, spécifiez ce qui suit : « NodeColor == blue) ».
CorrelationScheme
Type : tableau de ServiceCorrelationDescription
Obligatoire : Non
Schéma de corrélation.
ServiceLoadMetrics
Type : tableau de ServiceLoadMetricDescription
Obligatoire : Non
Métriques de charge du service.
ServicePlacementPolicies
Type : tableau de ServicePlacementPolicyDescription
Obligatoire : Non
Stratégies de placement du service.
DefaultMoveCost
Type : chaîne (énumération)
Obligatoire : Non
Coût de déplacement du service.
Spécifie le coût du déplacement du service.
Les valeurs possibles sont les suivantes :
-
Zero
- Coût de déplacement zéro. Cette valeur est zéro. -
Low
- Spécifie le coût de déplacement du service comme étant faible. La valeur est égale à 1. -
Medium
- Spécifie le coût de déplacement du service comme Moyen. La valeur est égale à 2. -
High
- Spécifie le coût de déplacement du service comme élevé. La valeur est 3. -
VeryHigh
- Spécifie le coût de déplacement du service en tant que VeryHigh. La valeur est égale à 4.
IsDefaultMoveCostSpecified
Type : booléen
Obligatoire : Non
Indique si la propriété DefaultMoveCost est spécifiée.
ServicePackageActivationMode
Type : chaîne (énumération)
Obligatoire : Non
Mode d’activation du package de service à utiliser pour un service.
Mode d’activation du package de service à utiliser pour un service Service Fabric. Cette valeur est spécifiée au moment de la création du service.
Les valeurs possibles sont les suivantes :
-
SharedProcess
- Il s’agit du mode d’activation par défaut. Avec ce mode d’activation, les réplicas ou les instances de partitions différentes du service, sur un nœud donné, partagent la même activation du package de service sur un nœud. La valeur est égale à zéro. -
ExclusiveProcess
- Avec ce mode d’activation, chaque réplica ou instance de service, sur un nœud donné, aura sa propre activation dédiée du package de service sur un nœud. La valeur est égale à 1.
ServiceDnsName
Type : chaîne
Obligatoire : Non
Nom DNS du service. Il nécessite que le service système DNS soit activé dans le cluster Service Fabric.
ScalingPolicies
Type : tableau de ScalingPolicyDescription
Obligatoire : Non
Stratégies de mise à l’échelle pour ce service.
TagsRequiredToPlace
Type : NodeTagsDescription
Obligatoire : Non
Balises pour le placement de ce service.
TagsRequiredToRun
Type : NodeTagsDescription
Obligatoire : Non
Balises pour l’exécution de ce service.
InstanceCount
Type : entier
Obligatoire : Oui
InclusiveMinimum : -1
Nombre d’instances.
MinInstanceCount
Type : entier
Obligatoire : Non
MinInstanceCount est le nombre minimal d’instances qui doivent être en place pour respecter la case activée de sécurité EnsureAvailability pendant des opérations telles que la mise à niveau ou la désactivation du nœud.
Le nombre réel utilisé est max( MinInstanceCount, ceil( MinInstancePercentage/100.0 * InstanceCount) ).
Notez que si InstanceCount est défini sur -1, pendant le calcul MinInstanceCount, -1 est d’abord converti en nombre de nœuds sur lesquels les instances sont autorisées à être placées en fonction des contraintes de placement sur le service.
MinInstancePercentage
Type : entier
Obligatoire : Non
MinInstancePercentage est le pourcentage minimal d’InstanceCount qui doit être en mesure de respecter la case activée de sécurité EnsureAvailability pendant des opérations telles que la mise à niveau ou la désactivation du nœud.
Le nombre réel utilisé est max( MinInstanceCount, ceil( MinInstancePercentage/100.0 * InstanceCount) ).
Notez que si InstanceCount est défini sur -1, pendant le calcul MinInstancePercentage, -1 est d’abord converti en nombre de nœuds sur lesquels les instances sont autorisées à être placées en fonction des contraintes de placement sur le service.
Flags
Type : entier
Obligatoire : Non
Indicateurs indiquant si d’autres propriétés sont définies. Chacune des propriétés associées correspond à un indicateur, spécifié ci-dessous, qui, s’il est défini, indique que la propriété est spécifiée.
Cette propriété peut être une combinaison de ces indicateurs obtenus à l’aide de l’opérateur « OR » au niveau du bit.
Par exemple, si la valeur fournie est 1, les indicateurs pour InstanceCloseDelayDuration sont définis.
- Aucun : n’indique pas que d’autres propriétés sont définies. La valeur est égale à zéro.
- InstanceCloseDelayDuration : indique que la propriété InstanceCloseDelayDuration est définie. La valeur est égale à 1.
- InstanceRestartWaitDuration : indique que la propriété InstanceRestartWaitDurationSeconds est définie. La valeur est égale à 2.
InstanceCloseDelayDurationSeconds
Type : integer (int64)
Obligatoire : Non
InclusiveMaximum : 4294967295
InclusiveMinimum : 0
Durée en secondes, pour attendre avant la fermeture d’une instance sans état, pour permettre aux requêtes actives de se vider correctement. Cela serait efficace lorsque le instance se ferme pendant la mise à niveau de l’application/du cluster et désactive le nœud.
Le point de terminaison exposé sur ce instance est supprimé avant de commencer le délai, ce qui empêche de nouvelles connexions à ce instance.
En outre, les clients qui se sont abonnés à des événements de modification de point de terminaison de service (https://docs.microsoft.com/dotnet/api/system.fabric.fabricclient.servicemanagementclient.registerservicenotificationfilterasync) peuvent effectuer les opérations suivantes lors de la réception de la notification de suppression de point de terminaison : - Arrêter d’envoyer de nouvelles demandes à ce instance.
- Fermez les connexions existantes une fois les demandes en cours d’exécution terminées.
- Connectez-vous à une autre instance de la partition de service pour les demandes futures.
Notez que la valeur par défaut de InstanceCloseDelayDuration est 0, ce qui indique qu’il n’y aura pas de retard ou de suppression du point de terminaison avant la fermeture du instance.
InstanceLifecycleDescription
Type : InstanceLifecycleDescription
Obligatoire : Non
Définit le comportement des instances de ce service pendant leur cycle de vie.
InstanceRestartWaitDurationSeconds
Type : integer (int64)
Obligatoire : Non
InclusiveMaximum : 4294967295
InclusiveMinimum : 0
Lorsqu’un instance sans état tombe en panne, ce minuteur démarre. À son expiration, Service Fabric crée une nouvelle instance sur n’importe quel nœud du cluster.
Cette configuration vise à réduire la création inutile d’une nouvelle instance dans les situations où le instance est susceptible de se rétablir dans un court laps de temps. Par exemple, lors d’une mise à niveau.
La valeur par défaut est 0, ce qui indique que lorsque la instance sans état tombe en panne, Service Fabric commence immédiatement à créer son remplacement.