Clusters Microsoft.ServiceFabric 01/03/2019
Définition de ressource Bicep
Le type de ressource de clusters peut être déployé avec des opérations qui ciblent :
- Groupes de ressources - Voir commandes de déploiement de groupes de ressources
Pour obtenir la liste des propriétés modifiées dans chaque version de l’API, consultez journal des modifications.
Format des ressources
Pour créer une ressource Microsoft.ServiceFabric/clusters, ajoutez le Bicep suivant à votre modèle.
resource symbolicname 'Microsoft.ServiceFabric/clusters@2019-03-01' = {
name: 'string'
location: 'string'
tags: {
tagName1: 'tagValue1'
tagName2: 'tagValue2'
}
properties: {
addOnFeatures: [
'string'
]
azureActiveDirectory: {
clientApplication: 'string'
clusterApplication: 'string'
tenantId: 'string'
}
certificate: {
thumbprint: 'string'
thumbprintSecondary: 'string'
x509StoreName: 'string'
}
certificateCommonNames: {
commonNames: [
{
certificateCommonName: 'string'
certificateIssuerThumbprint: 'string'
}
]
x509StoreName: 'string'
}
clientCertificateCommonNames: [
{
certificateCommonName: 'string'
certificateIssuerThumbprint: 'string'
isAdmin: bool
}
]
clientCertificateThumbprints: [
{
certificateThumbprint: 'string'
isAdmin: bool
}
]
clusterCodeVersion: 'string'
diagnosticsStorageAccountConfig: {
blobEndpoint: 'string'
protectedAccountKeyName: 'string'
queueEndpoint: 'string'
storageAccountName: 'string'
tableEndpoint: 'string'
}
eventStoreServiceEnabled: bool
fabricSettings: [
{
name: 'string'
parameters: [
{
name: 'string'
value: 'string'
}
]
}
]
managementEndpoint: 'string'
nodeTypes: [
{
applicationPorts: {
endPort: int
startPort: int
}
capacities: {
{customized property}: 'string'
}
clientConnectionEndpointPort: int
durabilityLevel: 'string'
ephemeralPorts: {
endPort: int
startPort: int
}
httpGatewayEndpointPort: int
isPrimary: bool
name: 'string'
placementProperties: {
{customized property}: 'string'
}
reverseProxyEndpointPort: int
vmInstanceCount: int
}
]
reliabilityLevel: 'string'
reverseProxyCertificate: {
thumbprint: 'string'
thumbprintSecondary: 'string'
x509StoreName: 'string'
}
reverseProxyCertificateCommonNames: {
commonNames: [
{
certificateCommonName: 'string'
certificateIssuerThumbprint: 'string'
}
]
x509StoreName: 'string'
}
upgradeDescription: {
deltaHealthPolicy: {
applicationDeltaHealthPolicies: {
{customized property}: {
defaultServiceTypeDeltaHealthPolicy: {
maxPercentDeltaUnhealthyServices: int
}
serviceTypeDeltaHealthPolicies: {
{customized property}: {
maxPercentDeltaUnhealthyServices: int
}
}
}
}
maxPercentDeltaUnhealthyApplications: int
maxPercentDeltaUnhealthyNodes: int
maxPercentUpgradeDomainDeltaUnhealthyNodes: int
}
forceRestart: bool
healthCheckRetryTimeout: 'string'
healthCheckStableDuration: 'string'
healthCheckWaitDuration: 'string'
healthPolicy: {
applicationHealthPolicies: {
{customized property}: {
defaultServiceTypeHealthPolicy: {
maxPercentUnhealthyServices: int
}
serviceTypeHealthPolicies: {
{customized property}: {
maxPercentUnhealthyServices: int
}
}
}
}
maxPercentUnhealthyApplications: int
maxPercentUnhealthyNodes: int
}
upgradeDomainTimeout: 'string'
upgradeReplicaSetCheckTimeout: 'string'
upgradeTimeout: 'string'
}
upgradeMode: 'string'
vmImage: 'string'
}
}
Valeurs de propriétés
clusters
Nom | Description | Valeur |
---|---|---|
name | Nom de la ressource | chaîne (obligatoire) Limite de caractères : 4-23 Caractères valides : Lettres minuscules, chiffres et traits d’union. Doit commencer par une lettre minuscule. Doit se terminer par une lettre minuscule ou un chiffre. |
location | Emplacement des ressources Azure. | chaîne (obligatoire) |
tags | Balises de ressources Azure. | Dictionnaire de noms et de valeurs d’étiquettes. Voir Balises dans les modèles |
properties | Propriétés des ressources de cluster | ClusterProperties |
ClusterProperties
Nom | Description | Valeur |
---|---|---|
addOnFeatures | Liste des fonctionnalités de complément à activer dans le cluster. | Tableau de chaînes contenant l’un des éléments suivants : 'BackupRestoreService' 'DnsService' 'RepairManager' 'ResourceMonitorService' |
azureActiveDirectory | Paramètres d’authentification AAD du cluster. | AzureActiveDirectory |
certificat | Certificat à utiliser pour sécuriser le cluster. Le certificat fourni sera utilisé pour la sécurité de nœud à nœud au sein du cluster, le certificat SSL pour le point de terminaison de gestion du cluster et le client d’administration par défaut. | CertificateDescription |
certificateCommonNames | Décrit une liste de certificats de serveur référencés par un nom commun qui sont utilisés pour sécuriser le cluster. | ServerCertificateCommonNames |
clientCertificateCommonNames | Liste des certificats clients référencés par nom commun qui sont autorisés à gérer le cluster. | ClientCertificateCommonName[] |
clientCertificateThumbprints | Liste des certificats clients référencés par l’empreinte numérique qui sont autorisés à gérer le cluster. | ClientCertificateThumbprint[] |
clusterCodeVersion | Version du runtime Service Fabric du cluster. Cette propriété ne peut définir l’utilisateur que lorsque upgradeMode a la valeur « Manual ». Pour obtenir la liste des versions de Service Fabric disponibles pour les nouveaux clusters, utilisez l’API ClusterVersion. Pour obtenir la liste des versions disponibles pour les clusters existants, utilisez availableClusterVersions. | string |
diagnosticsStockageAccountConfig | Informations de compte de stockage pour le stockage des journaux de diagnostic Service Fabric. | DiagnosticsStorageAccountConfig |
eventStoreServiceEnabled | Indique si le service de magasin d’événements est activé. | bool |
fabricSettings | Liste des paramètres d’infrastructure personnalisés pour configurer le cluster. | SettingsSectionDescription[] |
managementEndpoint | Point de terminaison de gestion http du cluster. | chaîne (obligatoire) |
nodeTypes | Liste des types de nœuds dans le cluster. | NodeTypeDescription[] (obligatoire) |
reliabilityLevel | Le niveau de fiabilité définit la réplica taille de l’ensemble des services système. En savoir plus sur ReliabilityLevel. - Aucun : exécutez les services système avec une cible réplica nombre défini de 1. Il ne doit être utilisé que pour les clusters de test. - Bronze : exécutez les services système avec une cible réplica nombre défini de 3. Il ne doit être utilisé que pour les clusters de test. - Argent : exécutez les services système avec une cible réplica nombre défini de 5. - Gold : exécutez les services système avec une cible réplica nombre défini de 7. - Platinum : exécutez les services système avec une cible réplica nombre défini de 9. |
'Bronze' 'Gold' 'None' 'Platinum' 'Silver' |
reverseProxyCertificate | Certificat de serveur utilisé par le proxy inverse. | CertificateDescription |
reverseProxyCertificateCommonNames | Décrit une liste de certificats de serveur référencés par un nom commun qui sont utilisés pour sécuriser le cluster. | ServerCertificateCommonNames |
upgradeDescription | Stratégie à utiliser lors de la mise à niveau du cluster. | ClusterUpgradePolicy |
upgradeMode | Mode de mise à niveau du cluster lorsque la nouvelle version du runtime Service Fabric est disponible. - Automatique : le cluster sera automatiquement mis à niveau vers la dernière version du runtime Service Fabric dès qu’elle sera disponible. - Manuel : le cluster ne sera pas automatiquement mis à niveau vers la dernière version du runtime Service Fabric. Le cluster est mis à niveau en définissant la propriété clusterCodeVersion dans la ressource du cluster. |
'Automatique' 'Manuel' |
vmImage | L’image de machine virtuelle VMSS a été configurée avec. Des noms génériques tels que Windows ou Linux peuvent être utilisés. | string |
AzureActiveDirectory
Nom | Description | Valeur |
---|---|---|
clientApplication | ID d’application cliente Azure Active Directory. | string |
clusterApplication | ID d’application du cluster Azure Active Directory. | string |
tenantId | ID de locataire Azure Active Directory. | string |
CertificateDescription
Nom | Description | Valeur |
---|---|---|
thumbprint | Empreinte numérique du certificat principal. | chaîne (obligatoire) |
empreinte secondaire | Empreinte numérique du certificat secondaire. | string |
x509StoreName | Emplacement du magasin de certificats local. | 'AddressBook' 'AuthRoot' 'CertificateAuthority' « Non autorisé » 'My' 'Racine' 'TrustedPeople' 'TrustedPublisher' |
ServerCertificateCommonNames
Nom | Description | Valeur |
---|---|---|
commonNames | Liste des certificats de serveur référencés par un nom commun qui sont utilisés pour sécuriser le cluster. | ServerCertificateCommonName[] |
x509StoreName | Emplacement du magasin de certificats local. | 'AddressBook' 'AuthRoot' 'CertificateAuthority' « Non autorisé » 'My' 'Racine' 'TrustedPeople' 'TrustedPublisher' |
ServerCertificateCommonName
Nom | Description | Valeur |
---|---|---|
certificateCommonName | Nom commun du certificat de serveur. | chaîne (obligatoire) |
certificateIssuerThumbprint | Empreinte numérique de l’émetteur du certificat de serveur. | chaîne (obligatoire) |
ClientCertificateCommonName
Nom | Description | Valeur |
---|---|---|
certificateCommonName | Nom commun du certificat client. | chaîne (obligatoire) |
certificateIssuerThumbprint | Empreinte de l’émetteur du certificat client. | chaîne (obligatoire) |
isAdmin | Indique si le certificat client dispose d’un accès administrateur au cluster. Les clients non administrateurs peuvent effectuer uniquement des opérations en lecture seule sur le cluster. | bool (obligatoire) |
ClientCertificateThumbprint
Nom | Description | Valeur |
---|---|---|
certificateThumbprint | Empreinte numérique du certificat client. | string (obligatoire) |
isAdmin | Indique si le certificat client dispose d’un accès administrateur au cluster. Les clients non administrateurs peuvent effectuer uniquement des opérations en lecture seule sur le cluster. | bool (obligatoire) |
DiagnosticsStorageAccountConfig
Nom | Description | Valeur |
---|---|---|
blobEndpoint | Point de terminaison d’objet blob du compte de stockage Azure. | string (obligatoire) |
protectedAccountKeyName | Nom de clé de stockage diagnostics protégé. | string (obligatoire) |
queueEndpoint | Point de terminaison de file d’attente du compte de stockage Azure. | string (obligatoire) |
storageAccountName | Nom du compte de stockage Azure. | string (obligatoire) |
tableEndpoint | Point de terminaison de table du compte de stockage Azure. | string (obligatoire) |
SettingsSectionDescription
Nom | Description | Valeur |
---|---|---|
name | Nom de section des paramètres d’infrastructure. | string (obligatoire) |
parameters | Collection de paramètres dans la section . | SettingsParameterDescription[] (obligatoire) |
ParamètresParameterDescription
Nom | Description | Valeur |
---|---|---|
name | Nom du paramètre du paramètre fabric. | string (obligatoire) |
value | Valeur du paramètre du paramètre fabric. | string (obligatoire) |
NodeTypeDescription
Nom | Description | Valeur |
---|---|---|
applicationPorts | Plage de ports à partir de laquelle le cluster a attribué le port aux applications Service Fabric. | EndpointRangeDescription |
capacities | Balises de capacité appliquées aux nœuds dans le type de nœud. Le gestionnaire de ressources de cluster utilise ces balises pour comprendre la quantité de ressources d’un nœud. | NodeTypeDescriptionCapacities |
clientConnectionEndpointPort | Port du point de terminaison de gestion du cluster TCP. | int (obligatoire) |
durabilityLevel | Niveau de durabilité du type de nœud. En savoir plus sur DurabilityLevel. - Bronze - Aucun privilège. Il s’agit de la valeur par défaut. - Argent : les travaux d’infrastructure peuvent être suspendus pendant une durée de 10 minutes par UD. - Gold - Les travaux d’infrastructure peuvent être suspendus pendant une durée de 2 heures par UD. La durabilité Gold ne peut être activée que sur les références de machine virtuelle à nœud complet comme D15_V2, G5, etc. |
'Bronze' 'Gold' 'Silver' |
ephemeralPorts | Plage de ports éphémères avec lesquels les nœuds de ce type de nœud doivent être configurés. | EndpointRangeDescription |
httpGatewayEndpointPort | Port du point de terminaison de gestion du cluster HTTP. | int (obligatoire) |
isPrimary | Type de nœud sur lequel les services système s’exécuteront. Un seul type de nœud doit être marqué comme principal. Le type de nœud principal ne peut pas être supprimé ou modifié pour les clusters existants. | bool (obligatoire) |
name | Nom du type de nœud. | string (obligatoire) |
placementProperties | Balises de placement appliquées aux nœuds dans le type de nœud, qui peuvent être utilisées pour indiquer où certains services (charge de travail) doivent s’exécuter. | NodeTypeDescriptionPlacementProperties |
reverseProxyEndpointPort | Point de terminaison utilisé par le proxy inverse. | int |
vmInstanceCount | Nombre de nœuds dans le type de nœud. Ce nombre doit correspondre à la propriété capacity dans la ressource VirtualMachineScaleSet correspondante. | int (obligatoire) Contraintes : Valeur minimale = 1 Valeur maximale = 2147483647 |
EndpointRangeDescription
Nom | Description | Valeur |
---|---|---|
endPort | Port de fin d’une plage de ports | int (obligatoire) |
startPort | Port de départ d’une plage de ports | int (obligatoire) |
NodeTypeDescriptionCapacities
Nom | Description | Valeur |
---|---|---|
{propriété personnalisée} | string |
NodeTypeDescriptionPlacementProperties
Nom | Description | Valeur |
---|---|---|
{propriété personnalisée} | string |
ClusterUpgradePolicy
Nom | Description | Valeur |
---|---|---|
deltaHealthPolicy | Stratégie d’intégrité delta du cluster utilisée lors de la mise à niveau du cluster. | ClusterUpgradeDeltaHealthPolicy |
forceRestart | Si la valeur est true, les processus sont redémarrés de force pendant la mise à niveau même si la version du code n’a pas changé (la mise à niveau modifie uniquement la configuration ou les données). | bool |
healthCheckRetryTimeout | Durée de la nouvelle tentative d’évaluation de l’intégrité lorsque l’application ou le cluster est défectueux avant la restauration de la mise à niveau. Le délai d’expiration peut être au format hh :mm :ss ou au format d.hh :mm :ss.ms. | chaîne (obligatoire) |
healthCheckStableDuration | Durée pendant laquelle l’application ou le cluster doivent rester sains avant que la mise à niveau ne passe au domaine de mise à niveau suivant. La durée peut être au format hh :mm :ss ou au format d.hh :mm :ss.ms. | chaîne (obligatoire) |
healthCheckWaitDuration | Durée d’attente après avoir terminé un domaine de mise à niveau avant d’effectuer des vérifications d’intégrité. La durée peut être au format hh :mm :ss ou au format d.hh :mm :ss.ms. | chaîne (obligatoire) |
healthPolicy | Stratégie d’intégrité du cluster utilisée lors de la mise à niveau du cluster. | ClusterHealthPolicy (obligatoire) |
upgradeDomainTimeout | Durée pendant laquelle chaque domaine de mise à niveau doit se terminer avant la restauration de la mise à niveau. Le délai d’expiration peut être au format hh :mm :ss ou au format d.hh :mm :ss.ms. | chaîne (obligatoire) |
upgradeReplicaSetCheckTimeout | Durée maximale pendant laquelle bloquer le traitement d’un domaine de mise à niveau et éviter la perte de disponibilité en cas de problèmes inattendus. Lorsque ce délai d’attente expire, le traitement du domaine de mise à niveau se poursuit, indépendamment des problèmes de perte de disponibilité. Le délai d’expiration est réinitialisé au début de chaque domaine de mise à niveau. Le délai d’expiration peut être au format hh :mm :ss ou au format d.hh :mm :ss.ms. | chaîne (obligatoire) |
upgradeTimeout | Durée pendant laquelle la mise à niveau globale doit se terminer avant la restauration de la mise à niveau. Le délai d’expiration peut être au format hh :mm :ss ou au format d.hh :mm :ss.ms. | chaîne (obligatoire) |
ClusterUpgradeDeltaHealthPolicy
Nom | Description | Valeur |
---|---|---|
applicationDeltaHealthPolicies | Définit la carte de stratégie d’intégrité delta d’application utilisée pour évaluer l’intégrité d’une application ou de l’une de ses entités enfants lors de la mise à niveau du cluster. | ApplicationDeltaHealthPolicyMap |
maxPercentDeltaUnhealthyApplications | Pourcentage maximal autorisé de dégradation de l’intégrité des applications pendant les mises à niveau du cluster. Le delta est mesuré entre l’état des applications au début de la mise à niveau et l’état des applications au moment de l’évaluation d’intégrité. Cette vérification est effectuée après chaque mise à niveau de domaine de mise à niveau afin de vérifier que l’état global du cluster se trouve dans les limites autorisées. Les services système ne sont pas inclus dans ce. |
int (obligatoire) Contraintes : Valeur minimale = 0 Valeur maximale = 100 |
maxPercentDeltaUnhealthyNodes | Pourcentage maximal autorisé de dégradation de l’intégrité des nœuds pendant les mises à niveau de clusters. Le delta est mesuré entre l’état des nœuds au début de la mise à niveau et l’état des nœuds au moment de l’évaluation de l’intégrité. Cette vérification est effectuée après chaque mise à niveau de domaine de mise à niveau afin de vérifier que l’état global du cluster se trouve dans les limites autorisées. |
int (obligatoire) Contraintes : Valeur minimale = 0 Valeur maximale = 100 |
maxPercentUpgradeDomainDeltaUnhealthyNodes | Pourcentage maximal autorisé de dégradation de l’intégrité des nœuds de domaine de mise à niveau pendant les mises à niveau de clusters. Le delta est mesuré entre l’état des nœuds de domaine de mise à niveau au début de la mise à niveau et leur état au moment de l’évaluation de l’intégrité. Cette vérification est effectuée après chaque mise à niveau de domaine de mise à niveau (pour l’ensemble des domaines de mise à niveau) afin de vérifier que l’état des domaines de mise à niveau se trouve dans les limites autorisées. |
int (obligatoire) Contraintes : Valeur minimale = 0 Valeur maximale = 100 |
ApplicationDeltaHealthPolicyMap
Nom | Description | Valeur |
---|---|---|
{propriété personnalisée} | ApplicationDeltaHealthPolicy |
ApplicationDeltaHealthPolicy
Nom | Description | Valeur |
---|---|---|
defaultServiceTypeDeltaHealthPolicy | Stratégie d’intégrité delta utilisée par défaut pour évaluer l’intégrité d’un type de service lors de la mise à niveau du cluster. | ServiceTypeDeltaHealthPolicy |
serviceTypeDeltaHealthPolicies | Carte avec la stratégie d’intégrité delta de type de service par nom de type de service. Par défaut, le mappage est vide. | ServiceTypeDeltaHealthPolicyMap |
ServiceTypeDeltaHealthPolicy
Nom | Description | Valeur |
---|---|---|
maxPercentDeltaUnhealthyServices | Pourcentage maximal autorisé de dégradation de l’intégrité des services autorisé pendant les mises à niveau du cluster. Le delta est mesuré entre l’état des services au début de la mise à niveau et l’état des services au moment de l’évaluation d’intégrité. Cette vérification est effectuée après chaque mise à niveau de domaine de mise à niveau afin de vérifier que l’état global du cluster se trouve dans les limites autorisées. |
int Contraintes : Valeur minimale = 0 Valeur maximale = 100 |
ServiceTypeDeltaHealthPolicyMap
Nom | Description | Valeur |
---|---|---|
{propriété personnalisée} | ServiceTypeDeltaHealthPolicy |
ClusterHealthPolicy
Nom | Description | Valeur |
---|---|---|
applicationHealthPolicies | Définit le mappage de stratégie d’intégrité de l’application utilisé pour évaluer l’intégrité d’une application ou de l’une de ses entités enfants. | ApplicationHealthPolicyMap |
maxPercentUnhealthyApplications | Pourcentage maximal autorisé d’applications non saines avant signalement d’une erreur. Par exemple, pour autoriser 10 % des applications pouvant être défectueuses, cette valeur serait de 10. Il s’agit du pourcentage maximum toléré d’applications pouvant être défectueuses avant que l’intégrité du cluster ne soit considérée comme étant à l’état Error. Si le pourcentage est respecté mais qu’il existe au moins une application pouvant être défectueuse, l’état d’intégrité est Warning. Ce calcul est effectué en divisant le nombre d’applications pouvant être défectueuses par le nombre total d’instances de l’application dans le cluster, à l’exception des types d’applications inclus dans le ApplicationTypeHealthPolicyMap. Le calcul est arrondi pour tolérer la défaillance d’un petit nombre d’applications. Le pourcentage par défaut est zéro. |
int Contraintes : Valeur minimale = 0 Valeur maximale = 100 |
maxPercentUnhealthyNodes | Pourcentage maximal autorisé de nœuds non sains avant signalement d’une erreur. Par exemple, pour autoriser 10 % de nœuds défectueux, cette valeur serait de 10. Il s’agit du pourcentage maximum toléré de nœuds pouvant être défectueux avant que l’intégrité du cluster ne soit considérée comme étant à l’état Error. Si le pourcentage est respecté mais qu’il existe au moins un nœud pouvant être défectueux, l’état d’intégrité est Warning. Le pourcentage est calculé en divisant le nombre de nœuds défectueux par le nombre total de nœuds du cluster. Le calcul est arrondi pour tolérer une défaillance sur un petit nombre de nœuds. Le pourcentage par défaut est zéro. Dans les clusters de grande taille, certains nœuds sont toujours inactifs ou en réparation. Ce pourcentage doit donc être configuré pour tolérer cette condition. |
int Contraintes : Valeur minimale = 0 Valeur maximale = 100 |
ApplicationHealthPolicyMap
Nom | Description | Valeur |
---|---|---|
{propriété personnalisée} | ApplicationHealthPolicy |
ApplicationHealthPolicy
Nom | Description | Valeur |
---|---|---|
defaultServiceTypeHealthPolicy | Stratégie d’intégrité utilisée par défaut pour évaluer l’intégrité d’un type de service. | ServiceTypeHealthPolicy |
serviceTypeHealthPolicies | Mappage avec la stratégie d’intégrité de type de service par nom de type de service. Par défaut, le mappage est vide. | ServiceTypeHealthPolicyMap |
ServiceTypeHealthPolicy
Nom | Description | Valeur |
---|---|---|
maxPercentUnhealthyServices | Pourcentage maximal de services autorisés à être défectueux avant que votre application ne soit considérée comme étant en erreur. | int Contraintes : Valeur minimale = 0 Valeur maximale = 100 |
ServiceTypeHealthPolicyMap
Nom | Description | Valeur |
---|---|---|
{propriété personnalisée} | ServiceTypeHealthPolicy |
Modèles de démarrage rapide
Les modèles de démarrage rapide suivants déploient ce type de ressource.
Modèle | Description |
---|---|
Déployer un cluster Ubuntu Service Fabric à 5 nœuds |
Ce modèle vous permet de déployer un cluster Service Fabric sécurisé à 5 nœuds exécutant Ubuntu sur un vmSS de taille Standard_D2_V2. |
Déployer un cluster sécurisé à 5 nœuds |
Ce modèle vous permet de déployer un cluster Service Fabric à 5 nœuds sécurisé exécutant Windows Server 2019 Datacenter sur un vmSS de taille Standard_D2_v2. |
Déployer un cluster sécurisé à 3 nœuds avec des groupes de sécurité réseau activés |
Ce modèle vous permet de déployer un cluster Service Fabric de type 3 nœuds sécurisé exécutant le centre de données Windows Server 2016 sur une taille de machines virtuelles Standard_D2. Ce modèle vous permet de contrôler le trafic réseau entrant et sortant à l’aide de groupes de sécurité réseau. |
Définition de ressources de modèle ARM
Le type de ressource de clusters peut être déployé avec des opérations qui ciblent :
- Groupes de ressources - Voir commandes de déploiement de groupe de ressources
Pour obtenir la liste des propriétés modifiées dans chaque version d’API, consultez journal des modifications.
Format des ressources
Pour créer une ressource Microsoft.ServiceFabric/clusters, ajoutez le code JSON suivant à votre modèle.
{
"type": "Microsoft.ServiceFabric/clusters",
"apiVersion": "2019-03-01",
"name": "string",
"location": "string",
"tags": {
"tagName1": "tagValue1",
"tagName2": "tagValue2"
},
"properties": {
"addOnFeatures": [ "string" ],
"azureActiveDirectory": {
"clientApplication": "string",
"clusterApplication": "string",
"tenantId": "string"
},
"certificate": {
"thumbprint": "string",
"thumbprintSecondary": "string",
"x509StoreName": "string"
},
"certificateCommonNames": {
"commonNames": [
{
"certificateCommonName": "string",
"certificateIssuerThumbprint": "string"
}
],
"x509StoreName": "string"
},
"clientCertificateCommonNames": [
{
"certificateCommonName": "string",
"certificateIssuerThumbprint": "string",
"isAdmin": "bool"
}
],
"clientCertificateThumbprints": [
{
"certificateThumbprint": "string",
"isAdmin": "bool"
}
],
"clusterCodeVersion": "string",
"diagnosticsStorageAccountConfig": {
"blobEndpoint": "string",
"protectedAccountKeyName": "string",
"queueEndpoint": "string",
"storageAccountName": "string",
"tableEndpoint": "string"
},
"eventStoreServiceEnabled": "bool",
"fabricSettings": [
{
"name": "string",
"parameters": [
{
"name": "string",
"value": "string"
}
]
}
],
"managementEndpoint": "string",
"nodeTypes": [
{
"applicationPorts": {
"endPort": "int",
"startPort": "int"
},
"capacities": {
"{customized property}": "string"
},
"clientConnectionEndpointPort": "int",
"durabilityLevel": "string",
"ephemeralPorts": {
"endPort": "int",
"startPort": "int"
},
"httpGatewayEndpointPort": "int",
"isPrimary": "bool",
"name": "string",
"placementProperties": {
"{customized property}": "string"
},
"reverseProxyEndpointPort": "int",
"vmInstanceCount": "int"
}
],
"reliabilityLevel": "string",
"reverseProxyCertificate": {
"thumbprint": "string",
"thumbprintSecondary": "string",
"x509StoreName": "string"
},
"reverseProxyCertificateCommonNames": {
"commonNames": [
{
"certificateCommonName": "string",
"certificateIssuerThumbprint": "string"
}
],
"x509StoreName": "string"
},
"upgradeDescription": {
"deltaHealthPolicy": {
"applicationDeltaHealthPolicies": {
"{customized property}": {
"defaultServiceTypeDeltaHealthPolicy": {
"maxPercentDeltaUnhealthyServices": "int"
},
"serviceTypeDeltaHealthPolicies": {
"{customized property}": {
"maxPercentDeltaUnhealthyServices": "int"
}
}
}
},
"maxPercentDeltaUnhealthyApplications": "int",
"maxPercentDeltaUnhealthyNodes": "int",
"maxPercentUpgradeDomainDeltaUnhealthyNodes": "int"
},
"forceRestart": "bool",
"healthCheckRetryTimeout": "string",
"healthCheckStableDuration": "string",
"healthCheckWaitDuration": "string",
"healthPolicy": {
"applicationHealthPolicies": {
"{customized property}": {
"defaultServiceTypeHealthPolicy": {
"maxPercentUnhealthyServices": "int"
},
"serviceTypeHealthPolicies": {
"{customized property}": {
"maxPercentUnhealthyServices": "int"
}
}
}
},
"maxPercentUnhealthyApplications": "int",
"maxPercentUnhealthyNodes": "int"
},
"upgradeDomainTimeout": "string",
"upgradeReplicaSetCheckTimeout": "string",
"upgradeTimeout": "string"
},
"upgradeMode": "string",
"vmImage": "string"
}
}
Valeurs de propriétés
clusters
Nom | Description | Valeur |
---|---|---|
type | Type de ressource | 'Microsoft.ServiceFabric/clusters' |
apiVersion | Version de l’API de ressource | '2019-03-01' |
name | Nom de la ressource | string (obligatoire) Limite de caractères : 4-23 Caractères valides : Lettres minuscules, chiffres et traits d’union. Doit commencer par une lettre minuscule. Doit se terminer par une lettre minuscule ou un chiffre. |
location | Emplacement des ressources Azure. | string (obligatoire) |
tags | Balises de ressource Azure. | Dictionnaire de noms et de valeurs d’étiquettes. Voir Balises dans les modèles |
properties | Propriétés de la ressource de cluster | ClusterProperties |
ClusterProperties
Nom | Description | Valeur |
---|---|---|
addOnFeatures | Liste des fonctionnalités de module complémentaire à activer dans le cluster. | Tableau de chaînes contenant l’un des éléments suivants : 'BackupRestoreService' 'DnsService' 'RepairManager' 'ResourceMonitorService' |
azureActiveDirectory | Paramètres d’authentification AAD du cluster. | AzureActiveDirectory |
certificat | Certificat à utiliser pour sécuriser le cluster. Le certificat fourni sera utilisé pour la sécurité de nœud à nœud au sein du cluster, le certificat SSL pour le point de terminaison de gestion du cluster et le client d’administration par défaut. | CertificateDescription |
certificateCommonNames | Décrit une liste de certificats de serveur référencés par un nom commun qui sont utilisés pour sécuriser le cluster. | ServerCertificateCommonNames |
clientCertificateCommonNames | Liste des certificats clients référencés par nom commun autorisés à gérer le cluster. | ClientCertificateCommonName[] |
clientCertificateThumbprints | Liste des certificats clients référencés par l’empreinte numérique autorisés à gérer le cluster. | ClientCertificateThumbprint[] |
clusterCodeVersion | Version du runtime Service Fabric du cluster. Cette propriété ne peut définir l’utilisateur que lorsque upgradeMode a la valeur « Manual ». Pour obtenir la liste des versions de Service Fabric disponibles pour les nouveaux clusters, utilisez l’API ClusterVersion. Pour obtenir la liste des versions disponibles pour les clusters existants, utilisez availableClusterVersions. | string |
diagnosticsStorageAccountConfig | Informations de compte de stockage pour le stockage des journaux de diagnostic Service Fabric. | DiagnosticsStorageAccountConfig |
eventStoreServiceEnabled | Indique si le service de magasin d’événements est activé. | bool |
fabricSettings | Liste des paramètres d’infrastructure personnalisés pour configurer le cluster. | SettingsSectionDescription[] |
managementEndpoint | Point de terminaison de gestion http du cluster. | string (obligatoire) |
nodeTypes | Liste des types de nœuds dans le cluster. | NodeTypeDescription[] (obligatoire) |
reliabilityLevel | Le niveau de fiabilité définit la taille d’ensemble réplica des services système. En savoir plus sur ReliabilityLevel. - Aucun : exécutez les services système avec un nombre de réplica défini cible de 1. Cela ne doit être utilisé que pour les clusters de test. - Bronze : exécutez les services système avec une cible réplica nombre défini de 3. Cela ne doit être utilisé que pour les clusters de test. - Silver : exécutez les services système avec une cible réplica nombre défini de 5. - Gold : exécutez les services système avec une cible réplica nombre défini de 7. - Platinum : exécutez les services système avec une cible réplica nombre défini de 9. |
'Bronze' 'Gold' 'None' 'Platinum' 'Silver' |
reverseProxyCertificate | Certificat de serveur utilisé par le proxy inverse. | CertificateDescription |
reverseProxyCertificateCommonNames | Décrit une liste de certificats de serveur référencés par un nom commun qui sont utilisés pour sécuriser le cluster. | ServerCertificateCommonNames |
upgradeDescription | Stratégie à utiliser lors de la mise à niveau du cluster. | ClusterUpgradePolicy |
upgradeMode | Mode de mise à niveau du cluster lorsque la nouvelle version du runtime Service Fabric est disponible. - Automatique : le cluster sera automatiquement mis à niveau vers la dernière version du runtime Service Fabric dès qu’elle sera disponible. - Manuel : le cluster ne sera pas automatiquement mis à niveau vers la dernière version du runtime Service Fabric. Le cluster est mis à niveau en définissant la propriété clusterCodeVersion dans la ressource de cluster. |
'Automatic' 'Manuel' |
vmImage | L’image de machine virtuelle VMSS a été configurée avec. Des noms génériques tels que Windows ou Linux peuvent être utilisés. | string |
AzureActiveDirectory
Nom | Description | Valeur |
---|---|---|
clientApplication | ID d’application cliente Azure Active Directory. | string |
clusterApplication | ID d’application du cluster Azure Active Directory. | string |
tenantId | ID de locataire Azure Active Directory. | string |
CertificateDescription
Nom | Description | Valeur |
---|---|---|
thumbprint | Empreinte numérique du certificat principal. | string (obligatoire) |
thumbprintSecondary | Empreinte numérique du certificat secondaire. | string |
x509StoreName | Emplacement du magasin de certificats local. | 'AddressBook' 'AuthRoot' 'CertificateAuthority' 'Non autorisé' 'My' 'Root' 'TrustedPeople' 'TrustedPublisher' |
ServerCertificateCommonNames
Nom | Description | Valeur |
---|---|---|
commonNames | Liste des certificats de serveur référencés par nom commun utilisés pour sécuriser le cluster. | ServerCertificateCommonName[] |
x509StoreName | Emplacement du magasin de certificats local. | 'AddressBook' 'AuthRoot' 'CertificateAuthority' 'Non autorisé' 'My' 'Root' 'TrustedPeople' 'TrustedPublisher' |
ServerCertificateCommonName
Nom | Description | Valeur |
---|---|---|
certificateCommonName | Nom commun du certificat de serveur. | string (obligatoire) |
certificateIssuerThumbprint | Empreinte numérique de l’émetteur du certificat de serveur. | string (obligatoire) |
ClientCertificateCommonName
Nom | Description | Valeur |
---|---|---|
certificateCommonName | Nom commun du certificat client. | string (obligatoire) |
certificateIssuerThumbprint | Empreinte numérique de l’émetteur du certificat client. | string (obligatoire) |
isAdmin | Indique si le certificat client dispose d’un accès administrateur au cluster. Les clients non administrateurs peuvent effectuer uniquement des opérations en lecture seule sur le cluster. | bool (obligatoire) |
ClientCertificateThumbprint
Nom | Description | Valeur |
---|---|---|
certificateThumbprint | Empreinte numérique du certificat client. | string (obligatoire) |
isAdmin | Indique si le certificat client dispose d’un accès administrateur au cluster. Les clients non administrateurs peuvent effectuer uniquement des opérations en lecture seule sur le cluster. | bool (obligatoire) |
DiagnosticsStorageAccountConfig
Nom | Description | Valeur |
---|---|---|
blobEndpoint | Point de terminaison d’objet blob du compte de stockage Azure. | string (obligatoire) |
protectedAccountKeyName | Nom de clé de stockage diagnostics protégé. | string (obligatoire) |
queueEndpoint | Point de terminaison de file d’attente du compte de stockage Azure. | string (obligatoire) |
storageAccountName | Nom du compte de stockage Azure. | string (obligatoire) |
tableEndpoint | Point de terminaison de table du compte de stockage Azure. | string (obligatoire) |
SettingsSectionDescription
Nom | Description | Valeur |
---|---|---|
name | Nom de section des paramètres d’infrastructure. | string (obligatoire) |
parameters | Collection de paramètres dans la section . | SettingsParameterDescription[] (obligatoire) |
ParamètresParameterDescription
Nom | Description | Valeur |
---|---|---|
name | Nom du paramètre du paramètre fabric. | string (obligatoire) |
value | Valeur du paramètre du paramètre fabric. | string (obligatoire) |
NodeTypeDescription
Nom | Description | Valeur |
---|---|---|
applicationPorts | Plage de ports à partir de laquelle le cluster a attribué le port aux applications Service Fabric. | EndpointRangeDescription |
capacities | Balises de capacité appliquées aux nœuds dans le type de nœud. Le gestionnaire de ressources de cluster utilise ces balises pour comprendre la quantité de ressources d’un nœud. | NodeTypeDescriptionCapacities |
clientConnectionEndpointPort | Port du point de terminaison de gestion du cluster TCP. | int (obligatoire) |
durabilityLevel | Niveau de durabilité du type de nœud. En savoir plus sur DurabilityLevel. - Bronze - Aucun privilège. Il s’agit de la valeur par défaut. - Argent : les travaux d’infrastructure peuvent être suspendus pendant une durée de 10 minutes par UD. - Gold - Les travaux d’infrastructure peuvent être suspendus pendant une durée de 2 heures par UD. La durabilité Gold ne peut être activée que sur les références de machine virtuelle à nœud complet comme D15_V2, G5, etc. |
'Bronze' 'Gold' 'Silver' |
ephemeralPorts | Plage de ports éphémères avec lesquels les nœuds de ce type de nœud doivent être configurés. | EndpointRangeDescription |
httpGatewayEndpointPort | Port du point de terminaison de gestion du cluster HTTP. | int (obligatoire) |
isPrimary | Type de nœud sur lequel les services système s’exécuteront. Un seul type de nœud doit être marqué comme principal. Le type de nœud principal ne peut pas être supprimé ou modifié pour les clusters existants. | bool (obligatoire) |
name | Nom du type de nœud. | string (obligatoire) |
placementProperties | Balises de placement appliquées aux nœuds dans le type de nœud, qui peuvent être utilisées pour indiquer où certains services (charge de travail) doivent s’exécuter. | NodeTypeDescriptionPlacementProperties |
reverseProxyEndpointPort | Point de terminaison utilisé par le proxy inverse. | int |
vmInstanceCount | Nombre de nœuds dans le type de nœud. Ce nombre doit correspondre à la propriété capacity dans la ressource VirtualMachineScaleSet correspondante. | int (obligatoire) Contraintes : Valeur minimale = 1 Valeur maximale = 2147483647 |
EndpointRangeDescription
Nom | Description | Valeur |
---|---|---|
endPort | Port de fin d’une plage de ports | int (obligatoire) |
startPort | Port de départ d’une plage de ports | int (obligatoire) |
NodeTypeDescriptionCapacities
Nom | Description | Valeur |
---|---|---|
{propriété personnalisée} | string |
NodeTypeDescriptionPlacementProperties
Nom | Description | Valeur |
---|---|---|
{propriété personnalisée} | string |
ClusterUpgradePolicy
Nom | Description | Valeur |
---|---|---|
deltaHealthPolicy | Stratégie d’intégrité delta du cluster utilisée lors de la mise à niveau du cluster. | ClusterUpgradeDeltaHealthPolicy |
forceRestart | Si la valeur est true, les processus sont redémarrés de force pendant la mise à niveau même si la version du code n’a pas changé (la mise à niveau modifie uniquement la configuration ou les données). | bool |
healthCheckRetryTimeout | Durée de la nouvelle tentative d’évaluation de l’intégrité lorsque l’application ou le cluster est défectueux avant la restauration de la mise à niveau. Le délai d’expiration peut être au format hh :mm :ss ou au format d.hh :mm :ss.ms. | chaîne (obligatoire) |
healthCheckStableDuration | Durée pendant laquelle l’application ou le cluster doivent rester sains avant que la mise à niveau ne passe au domaine de mise à niveau suivant. La durée peut être au format hh :mm :ss ou au format d.hh :mm :ss.ms. | chaîne (obligatoire) |
healthCheckWaitDuration | Durée d’attente après avoir terminé un domaine de mise à niveau avant d’effectuer des vérifications d’intégrité. La durée peut être au format hh :mm :ss ou au format d.hh :mm :ss.ms. | chaîne (obligatoire) |
healthPolicy | Stratégie d’intégrité du cluster utilisée lors de la mise à niveau du cluster. | ClusterHealthPolicy (obligatoire) |
upgradeDomainTimeout | Durée pendant laquelle chaque domaine de mise à niveau doit se terminer avant la restauration de la mise à niveau. Le délai d’expiration peut être au format hh :mm :ss ou au format d.hh :mm :ss.ms. | chaîne (obligatoire) |
upgradeReplicaSetCheckTimeout | Durée maximale pendant laquelle bloquer le traitement d’un domaine de mise à niveau et éviter la perte de disponibilité en cas de problèmes inattendus. Lorsque ce délai d’attente expire, le traitement du domaine de mise à niveau se poursuit, indépendamment des problèmes de perte de disponibilité. Le délai d’expiration est réinitialisé au début de chaque domaine de mise à niveau. Le délai d’expiration peut être au format hh :mm :ss ou au format d.hh :mm :ss.ms. | chaîne (obligatoire) |
upgradeTimeout | Durée pendant laquelle la mise à niveau globale doit se terminer avant la restauration de la mise à niveau. Le délai d’expiration peut être au format hh :mm :ss ou au format d.hh :mm :ss.ms. | chaîne (obligatoire) |
ClusterUpgradeDeltaHealthPolicy
Nom | Description | Valeur |
---|---|---|
applicationDeltaHealthPolicies | Définit la carte de stratégie d’intégrité delta d’application utilisée pour évaluer l’intégrité d’une application ou de l’une de ses entités enfants lors de la mise à niveau du cluster. | ApplicationDeltaHealthPolicyMap |
maxPercentDeltaUnhealthyApplications | Pourcentage maximal autorisé de dégradation de l’intégrité des applications pendant les mises à niveau du cluster. Le delta est mesuré entre l’état des applications au début de la mise à niveau et l’état des applications au moment de l’évaluation d’intégrité. Cette vérification est effectuée après chaque mise à niveau de domaine de mise à niveau afin de vérifier que l’état global du cluster se trouve dans les limites autorisées. Les services système ne sont pas inclus dans ce. |
int (obligatoire) Contraintes : Valeur minimale = 0 Valeur maximale = 100 |
maxPercentDeltaUnhealthyNodes | Pourcentage maximal autorisé de dégradation de l’intégrité des nœuds pendant les mises à niveau de clusters. Le delta est mesuré entre l’état des nœuds au début de la mise à niveau et l’état des nœuds au moment de l’évaluation de l’intégrité. Cette vérification est effectuée après chaque mise à niveau de domaine de mise à niveau afin de vérifier que l’état global du cluster se trouve dans les limites autorisées. |
int (obligatoire) Contraintes : Valeur minimale = 0 Valeur maximale = 100 |
maxPercentUpgradeDomainDeltaUnhealthyNodes | Pourcentage maximal autorisé de dégradation de l’intégrité des nœuds de domaine de mise à niveau pendant les mises à niveau de clusters. Le delta est mesuré entre l’état des nœuds de domaine de mise à niveau au début de la mise à niveau et leur état au moment de l’évaluation de l’intégrité. Cette vérification est effectuée après chaque mise à niveau de domaine de mise à niveau (pour l’ensemble des domaines de mise à niveau) afin de vérifier que l’état des domaines de mise à niveau se trouve dans les limites autorisées. |
int (obligatoire) Contraintes : Valeur minimale = 0 Valeur maximale = 100 |
ApplicationDeltaHealthPolicyMap
Nom | Description | Valeur |
---|---|---|
{propriété personnalisée} | ApplicationDeltaHealthPolicy |
ApplicationDeltaHealthPolicy
Nom | Description | Valeur |
---|---|---|
defaultServiceTypeDeltaHealthPolicy | Stratégie d’intégrité delta utilisée par défaut pour évaluer l’intégrité d’un type de service lors de la mise à niveau du cluster. | ServiceTypeDeltaHealthPolicy |
serviceTypeDeltaHealthPolicies | Mapper avec la stratégie d’intégrité delta de type de service par nom de type de service. Par défaut, le mappage est vide. | ServiceTypeDeltaHealthPolicyMap |
ServiceTypeDeltaHealthPolicy
Nom | Description | Valeur |
---|---|---|
maxPercentDeltaUnhealthyServices | Pourcentage maximal autorisé de dégradation de l’intégrité des services pendant les mises à niveau du cluster. Le delta est mesuré entre l’état des services au début de la mise à niveau et l’état des services au moment de l’évaluation de l’intégrité. Cette vérification est effectuée après chaque mise à niveau de domaine de mise à niveau afin de vérifier que l’état global du cluster se trouve dans les limites autorisées. |
int Contraintes : Valeur minimale = 0 Valeur maximale = 100 |
ServiceTypeDeltaHealthPolicyMap
Nom | Description | Valeur |
---|---|---|
{propriété personnalisée} | ServiceTypeDeltaHealthPolicy |
ClusterHealthPolicy
Nom | Description | Valeur |
---|---|---|
applicationHealthPolicies | Définit le mappage de stratégie d’intégrité de l’application utilisé pour évaluer l’intégrité d’une application ou de l’une de ses entités enfants. | ApplicationHealthPolicyMap |
maxPercentUnhealthyApplications | Pourcentage maximal autorisé d’applications non saines avant signalement d’une erreur. Par exemple, pour autoriser 10 % des applications pouvant être défectueuses, cette valeur serait de 10. Il s’agit du pourcentage maximum toléré d’applications pouvant être défectueuses avant que l’intégrité du cluster ne soit considérée comme étant à l’état Error. Si le pourcentage est respecté mais qu’il existe au moins une application pouvant être défectueuse, l’état d’intégrité est Warning. Ce calcul est effectué en divisant le nombre d’applications pouvant être défectueuses par le nombre total d’instances de l’application dans le cluster, à l’exception des types d’applications inclus dans le ApplicationTypeHealthPolicyMap. Le calcul est arrondi pour tolérer la défaillance d’un petit nombre d’applications. Le pourcentage par défaut est zéro. |
int Contraintes : Valeur minimale = 0 Valeur maximale = 100 |
maxPercentUnhealthyNodes | Pourcentage maximal autorisé de nœuds non sains avant signalement d’une erreur. Par exemple, pour autoriser 10 % de nœuds défectueux, cette valeur serait de 10. Il s’agit du pourcentage maximum toléré de nœuds pouvant être défectueux avant que l’intégrité du cluster ne soit considérée comme étant à l’état Error. Si le pourcentage est respecté mais qu’il existe au moins un nœud pouvant être défectueux, l’état d’intégrité est Warning. Le pourcentage est calculé en divisant le nombre de nœuds défectueux par le nombre total de nœuds du cluster. Le calcul est arrondi pour tolérer une défaillance sur un petit nombre de nœuds. Le pourcentage par défaut est zéro. Dans les clusters de grande taille, certains nœuds sont toujours inactifs ou en réparation. Ce pourcentage doit donc être configuré pour tolérer cette condition. |
int Contraintes : Valeur minimale = 0 Valeur maximale = 100 |
ApplicationHealthPolicyMap
Nom | Description | Valeur |
---|---|---|
{propriété personnalisée} | ApplicationHealthPolicy |
ApplicationHealthPolicy
Nom | Description | Valeur |
---|---|---|
defaultServiceTypeHealthPolicy | Stratégie d’intégrité utilisée par défaut pour évaluer l’intégrité d’un type de service. | ServiceTypeHealthPolicy |
serviceTypeHealthPolicies | Mapper avec la stratégie d’intégrité de type de service par nom de type de service. Par défaut, le mappage est vide. | ServiceTypeHealthPolicyMap |
ServiceTypeHealthPolicy
Nom | Description | Valeur |
---|---|---|
maxPercentUnhealthyServices | Pourcentage maximal de services autorisés à être défectueux avant que votre application ne soit considérée comme étant erronée. | int Contraintes : Valeur minimale = 0 Valeur maximale = 100 |
ServiceTypeHealthPolicyMap
Nom | Description | Valeur |
---|---|---|
{propriété personnalisée} | ServiceTypeHealthPolicy |
Modèles de démarrage rapide
Les modèles de démarrage rapide suivants déploient ce type de ressource.
Modèle | Description |
---|---|
Déployer un cluster Ubuntu Service Fabric à 5 nœuds |
Ce modèle vous permet de déployer un cluster Service Fabric sécurisé à 5 nœuds exécutant Ubuntu sur un vmSS de taille Standard_D2_V2. |
Déployer un cluster sécurisé à 5 nœuds |
Ce modèle vous permet de déployer un cluster Service Fabric à 5 nœuds sécurisé exécutant Windows Server 2019 Datacenter sur un vmSS de taille Standard_D2_v2. |
Déployer un cluster sécurisé à 3 nœuds avec des groupes de sécurité réseau activés |
Ce modèle vous permet de déployer un cluster Service Fabric de type 3 nœuds sécurisé exécutant le centre de données Windows Server 2016 sur une taille de machines virtuelles Standard_D2. Ce modèle vous permet de contrôler le trafic réseau entrant et sortant à l’aide de groupes de sécurité réseau. |
Définition de ressource Terraform (fournisseur AzAPI)
Le type de ressource de clusters peut être déployé avec des opérations qui ciblent :
- Groupes de ressources
Pour obtenir la liste des propriétés modifiées dans chaque version d’API, consultez journal des modifications.
Format des ressources
Pour créer une ressource Microsoft.ServiceFabric/clusters, ajoutez le Terraform suivant à votre modèle.
resource "azapi_resource" "symbolicname" {
type = "Microsoft.ServiceFabric/clusters@2019-03-01"
name = "string"
location = "string"
parent_id = "string"
tags = {
tagName1 = "tagValue1"
tagName2 = "tagValue2"
}
body = jsonencode({
properties = {
addOnFeatures = [
"string"
]
azureActiveDirectory = {
clientApplication = "string"
clusterApplication = "string"
tenantId = "string"
}
certificate = {
thumbprint = "string"
thumbprintSecondary = "string"
x509StoreName = "string"
}
certificateCommonNames = {
commonNames = [
{
certificateCommonName = "string"
certificateIssuerThumbprint = "string"
}
]
x509StoreName = "string"
}
clientCertificateCommonNames = [
{
certificateCommonName = "string"
certificateIssuerThumbprint = "string"
isAdmin = bool
}
]
clientCertificateThumbprints = [
{
certificateThumbprint = "string"
isAdmin = bool
}
]
clusterCodeVersion = "string"
diagnosticsStorageAccountConfig = {
blobEndpoint = "string"
protectedAccountKeyName = "string"
queueEndpoint = "string"
storageAccountName = "string"
tableEndpoint = "string"
}
eventStoreServiceEnabled = bool
fabricSettings = [
{
name = "string"
parameters = [
{
name = "string"
value = "string"
}
]
}
]
managementEndpoint = "string"
nodeTypes = [
{
applicationPorts = {
endPort = int
startPort = int
}
capacities = {
{customized property} = "string"
}
clientConnectionEndpointPort = int
durabilityLevel = "string"
ephemeralPorts = {
endPort = int
startPort = int
}
httpGatewayEndpointPort = int
isPrimary = bool
name = "string"
placementProperties = {
{customized property} = "string"
}
reverseProxyEndpointPort = int
vmInstanceCount = int
}
]
reliabilityLevel = "string"
reverseProxyCertificate = {
thumbprint = "string"
thumbprintSecondary = "string"
x509StoreName = "string"
}
reverseProxyCertificateCommonNames = {
commonNames = [
{
certificateCommonName = "string"
certificateIssuerThumbprint = "string"
}
]
x509StoreName = "string"
}
upgradeDescription = {
deltaHealthPolicy = {
applicationDeltaHealthPolicies = {
{customized property} = {
defaultServiceTypeDeltaHealthPolicy = {
maxPercentDeltaUnhealthyServices = int
}
serviceTypeDeltaHealthPolicies = {
{customized property} = {
maxPercentDeltaUnhealthyServices = int
}
}
}
}
maxPercentDeltaUnhealthyApplications = int
maxPercentDeltaUnhealthyNodes = int
maxPercentUpgradeDomainDeltaUnhealthyNodes = int
}
forceRestart = bool
healthCheckRetryTimeout = "string"
healthCheckStableDuration = "string"
healthCheckWaitDuration = "string"
healthPolicy = {
applicationHealthPolicies = {
{customized property} = {
defaultServiceTypeHealthPolicy = {
maxPercentUnhealthyServices = int
}
serviceTypeHealthPolicies = {
{customized property} = {
maxPercentUnhealthyServices = int
}
}
}
}
maxPercentUnhealthyApplications = int
maxPercentUnhealthyNodes = int
}
upgradeDomainTimeout = "string"
upgradeReplicaSetCheckTimeout = "string"
upgradeTimeout = "string"
}
upgradeMode = "string"
vmImage = "string"
}
})
}
Valeurs de propriétés
clusters
Nom | Description | Valeur |
---|---|---|
type | Type de ressource | « Microsoft.ServiceFabric/clusters@2019-03-01 » |
name | Nom de la ressource | string (obligatoire) Limite de caractères : 4-23 Caractères valides : Lettres minuscules, chiffres et traits d’union. Doit commencer par une lettre minuscule. Doit se terminer par une lettre minuscule ou un chiffre. |
location | Emplacement des ressources Azure. | string (obligatoire) |
parent_id | Pour effectuer un déploiement dans un groupe de ressources, utilisez l’ID de ce groupe de ressources. | string (obligatoire) |
tags | Balises de ressource Azure. | Dictionnaire de noms et de valeurs d’étiquettes. |
properties | Propriétés de la ressource de cluster | ClusterProperties |
ClusterProperties
Nom | Description | Valeur |
---|---|---|
addOnFeatures | Liste des fonctionnalités de module complémentaire à activer dans le cluster. | Tableau de chaînes contenant l’un des éléments suivants : « BackupRestoreService » « DnsService » « RepairManager » « ResourceMonitorService » |
azureActiveDirectory | Paramètres d’authentification AAD du cluster. | AzureActiveDirectory |
certificat | Certificat à utiliser pour sécuriser le cluster. Le certificat fourni sera utilisé pour la sécurité de nœud à nœud au sein du cluster, le certificat SSL pour le point de terminaison de gestion du cluster et le client d’administration par défaut. | CertificateDescription |
certificateCommonNames | Décrit une liste de certificats de serveur référencés par un nom commun qui sont utilisés pour sécuriser le cluster. | ServerCertificateCommonNames |
clientCertificateCommonNames | Liste des certificats clients référencés par nom commun autorisés à gérer le cluster. | ClientCertificateCommonName[] |
clientCertificateThumbprints | Liste des certificats clients référencés par l’empreinte numérique autorisés à gérer le cluster. | ClientCertificateThumbprint[] |
clusterCodeVersion | Version du runtime Service Fabric du cluster. Cette propriété ne peut définir l’utilisateur que lorsque upgradeMode a la valeur « Manual ». Pour obtenir la liste des versions de Service Fabric disponibles pour les nouveaux clusters, utilisez l’API ClusterVersion. Pour obtenir la liste des versions disponibles pour les clusters existants, utilisez availableClusterVersions. | string |
diagnosticsStorageAccountConfig | Informations de compte de stockage pour le stockage des journaux de diagnostic Service Fabric. | DiagnosticsStorageAccountConfig |
eventStoreServiceEnabled | Indique si le service de magasin d’événements est activé. | bool |
fabricSettings | Liste des paramètres d’infrastructure personnalisés pour configurer le cluster. | SettingsSectionDescription[] |
managementEndpoint | Point de terminaison de gestion http du cluster. | string (obligatoire) |
nodeTypes | Liste des types de nœuds dans le cluster. | NodeTypeDescription[] (obligatoire) |
reliabilityLevel | Le niveau de fiabilité définit la taille d’ensemble réplica des services système. En savoir plus sur ReliabilityLevel. - Aucun : exécutez les services système avec un nombre de réplica défini cible de 1. Cela ne doit être utilisé que pour les clusters de test. - Bronze : exécutez les services système avec une cible réplica nombre défini de 3. Cela ne doit être utilisé que pour les clusters de test. - Silver : exécutez les services système avec une cible réplica nombre défini de 5. - Gold : exécutez les services système avec une cible réplica nombre défini de 7. - Platinum : exécutez les services système avec une cible réplica nombre défini de 9. |
« Bronze » « Or » "None" « Platine » "Silver" |
reverseProxyCertificate | Certificat de serveur utilisé par le proxy inverse. | CertificateDescription |
reverseProxyCertificateCommonNames | Décrit une liste de certificats de serveur référencés par un nom commun qui sont utilisés pour sécuriser le cluster. | ServerCertificateCommonNames |
upgradeDescription | Stratégie à utiliser lors de la mise à niveau du cluster. | ClusterUpgradePolicy |
upgradeMode | Mode de mise à niveau du cluster lorsque la nouvelle version du runtime Service Fabric est disponible. - Automatique : le cluster sera automatiquement mis à niveau vers la dernière version du runtime Service Fabric dès qu’elle sera disponible. - Manuel : le cluster ne sera pas automatiquement mis à niveau vers la dernière version du runtime Service Fabric. Le cluster est mis à niveau en définissant la propriété clusterCodeVersion dans la ressource du cluster. |
« Automatique » « Manuel » |
vmImage | L’image de machine virtuelle VMSS a été configurée avec. Des noms génériques tels que Windows ou Linux peuvent être utilisés. | string |
AzureActiveDirectory
Nom | Description | Valeur |
---|---|---|
clientApplication | ID d’application cliente Azure Active Directory. | string |
clusterApplication | ID d’application du cluster Azure Active Directory. | string |
tenantId | ID de locataire Azure Active Directory. | string |
CertificateDescription
Nom | Description | Valeur |
---|---|---|
thumbprint | Empreinte numérique du certificat principal. | chaîne (obligatoire) |
empreinte secondaire | Empreinte numérique du certificat secondaire. | string |
x509StoreName | Emplacement du magasin de certificats local. | « Carnet d’adresses » « AuthRoot » « CertificateAuthority » « Non autorisé » « Mon » « Racine » « TrustedPeople » « TrustedPublisher » |
ServerCertificateCommonNames
Nom | Description | Valeur |
---|---|---|
commonNames | Liste des certificats de serveur référencés par un nom commun qui sont utilisés pour sécuriser le cluster. | ServerCertificateCommonName[] |
x509StoreName | Emplacement du magasin de certificats local. | « Carnet d’adresses » « AuthRoot » « CertificateAuthority » « Non autorisé » « Mon » « Racine » « TrustedPeople » « TrustedPublisher » |
ServerCertificateCommonName
Nom | Description | Valeur |
---|---|---|
certificateCommonName | Nom commun du certificat de serveur. | chaîne (obligatoire) |
certificateIssuerThumbprint | Empreinte numérique de l’émetteur du certificat de serveur. | chaîne (obligatoire) |
ClientCertificateCommonName
Nom | Description | Valeur |
---|---|---|
certificateCommonName | Nom commun du certificat client. | chaîne (obligatoire) |
certificateIssuerThumbprint | Empreinte de l’émetteur du certificat client. | chaîne (obligatoire) |
isAdmin | Indique si le certificat client dispose d’un accès administrateur au cluster. Les clients non administrateurs peuvent effectuer uniquement des opérations en lecture seule sur le cluster. | bool (obligatoire) |
ClientCertificateThumbprint
Nom | Description | Valeur |
---|---|---|
certificateThumbprint | Empreinte numérique du certificat client. | chaîne (obligatoire) |
isAdmin | Indique si le certificat client dispose d’un accès administrateur au cluster. Les clients non administrateurs peuvent effectuer uniquement des opérations en lecture seule sur le cluster. | bool (obligatoire) |
DiagnosticsStorageAccountConfig
Nom | Description | Valeur |
---|---|---|
blobEndpoint | Point de terminaison d’objet blob du compte de stockage Azure. | chaîne (obligatoire) |
protectedAccountKeyName | Nom de clé de stockage protégé diagnostics. | chaîne (obligatoire) |
queueEndpoint | Point de terminaison de file d’attente du compte de stockage Azure. | chaîne (obligatoire) |
storageAccountName | Nom du compte de stockage Azure. | chaîne (obligatoire) |
tableEndpoint | Point de terminaison de table du compte de stockage Azure. | chaîne (obligatoire) |
SettingsSectionDescription
Nom | Description | Valeur |
---|---|---|
name | Nom de section des paramètres de l’infrastructure. | chaîne (obligatoire) |
parameters | Collection de paramètres dans la section. | SettingsParameterDescription[] (obligatoire) |
ParamètresParameterDescription
Nom | Description | Valeur |
---|---|---|
name | Nom de paramètre du paramètre de l’infrastructure. | chaîne (obligatoire) |
value | Valeur du paramètre du paramètre de l’infrastructure. | chaîne (obligatoire) |
NodeTypeDescription
Nom | Description | Valeur |
---|---|---|
applicationPorts | Plage de ports à partir desquels le cluster a attribué un port aux applications Service Fabric. | EndpointRangeDescription |
capacities | Balises de capacité appliquées aux nœuds dans le type de nœud. Le gestionnaire de ressources de cluster utilise ces balises pour comprendre la quantité de ressources d’un nœud. | NodeTypeDescriptionCapacities |
clientConnectionEndpointPort | Port du point de terminaison de gestion du cluster TCP. | int (obligatoire) |
durabilityLevel | Niveau de durabilité du type de nœud. En savoir plus sur DurabilityLevel. - Bronze - Aucun privilège. Il s’agit de la valeur par défaut. - Argent : les travaux d’infrastructure peuvent être suspendus pendant une durée de 10 minutes par UD. - Gold - Les travaux d’infrastructure peuvent être suspendus pendant une durée de 2 heures par UD. La durabilité Gold ne peut être activée que sur les références de machine virtuelle à nœud complet comme D15_V2, G5, etc. |
« Bronze » « Or » "Silver" |
ephemeralPorts | Plage de ports éphémères que les nœuds de ce type de nœud doivent être configurés. | EndpointRangeDescription |
httpGatewayEndpointPort | Port du point de terminaison de gestion du cluster HTTP. | int (obligatoire) |
isPrimary | Type de nœud sur lequel les services système s’exécuteront. Un seul type de nœud doit être marqué comme principal. Le type de nœud principal ne peut pas être supprimé ou modifié pour les clusters existants. | bool (obligatoire) |
name | Nom du type de nœud. | chaîne (obligatoire) |
placementProperties | Balises de placement appliquées aux nœuds du type de nœud, qui peuvent être utilisées pour indiquer où certains services (charge de travail) doivent s’exécuter. | NodeTypeDescriptionPlacementProperties |
reverseProxyEndpointPort | Point de terminaison utilisé par le proxy inverse. | int |
vmInstanceCount | Nombre de nœuds dans le type de nœud. Ce nombre doit correspondre à la propriété de capacité dans la ressource VirtualMachineScaleSet correspondante. | int (obligatoire) Contraintes : Valeur minimale = 1 Valeur maximale = 2147483647 |
EndpointRangeDescription
Nom | Description | Valeur |
---|---|---|
endPort | Port de fin d’une plage de ports | int (obligatoire) |
startPort | Port de départ d’une plage de ports | int (obligatoire) |
NodeTypeDescriptionCapacities
Nom | Description | Valeur |
---|---|---|
{propriété personnalisée} | string |
NodeTypeDescriptionPlacementProperties
Nom | Description | Valeur |
---|---|---|
{propriété personnalisée} | string |
ClusterUpgradePolicy
Nom | Description | Valeur |
---|---|---|
deltaHealthPolicy | Stratégie d’intégrité delta du cluster utilisée lors de la mise à niveau du cluster. | ClusterUpgradeDeltaHealthPolicy |
forceRestart | Si la valeur est true, les processus sont redémarrés de force pendant la mise à niveau même si la version du code n’a pas changé (la mise à niveau modifie uniquement la configuration ou les données). | bool |
healthCheckRetryTimeout | Durée de la nouvelle tentative d’évaluation de l’intégrité lorsque l’application ou le cluster est défectueux avant la restauration de la mise à niveau. Le délai d’expiration peut être au format hh :mm :ss ou au format d.hh :mm :ss.ms. | chaîne (obligatoire) |
healthCheckStableDuration | Durée pendant laquelle l’application ou le cluster doivent rester sains avant que la mise à niveau ne passe au domaine de mise à niveau suivant. La durée peut être au format hh :mm :ss ou au format d.hh :mm :ss.ms. | chaîne (obligatoire) |
healthCheckWaitDuration | Durée d’attente après avoir terminé un domaine de mise à niveau avant d’effectuer des vérifications d’intégrité. La durée peut être au format hh :mm :ss ou au format d.hh :mm :ss.ms. | chaîne (obligatoire) |
healthPolicy | Stratégie d’intégrité du cluster utilisée lors de la mise à niveau du cluster. | ClusterHealthPolicy (obligatoire) |
upgradeDomainTimeout | Durée pendant laquelle chaque domaine de mise à niveau doit se terminer avant la restauration de la mise à niveau. Le délai d’expiration peut être au format hh :mm :ss ou au format d.hh :mm :ss.ms. | chaîne (obligatoire) |
upgradeReplicaSetCheckTimeout | Durée maximale pendant laquelle bloquer le traitement d’un domaine de mise à niveau et éviter la perte de disponibilité en cas de problèmes inattendus. Lorsque ce délai d’attente expire, le traitement du domaine de mise à niveau se poursuit, indépendamment des problèmes de perte de disponibilité. Le délai d’expiration est réinitialisé au début de chaque domaine de mise à niveau. Le délai d’expiration peut être au format hh :mm :ss ou au format d.hh :mm :ss.ms. | chaîne (obligatoire) |
upgradeTimeout | Durée pendant laquelle la mise à niveau globale doit se terminer avant la restauration de la mise à niveau. Le délai d’expiration peut être au format hh :mm :ss ou au format d.hh :mm :ss.ms. | chaîne (obligatoire) |
ClusterUpgradeDeltaHealthPolicy
Nom | Description | Valeur |
---|---|---|
applicationDeltaHealthPolicies | Définit la carte de stratégie d’intégrité delta d’application utilisée pour évaluer l’intégrité d’une application ou de l’une de ses entités enfants lors de la mise à niveau du cluster. | ApplicationDeltaHealthPolicyMap |
maxPercentDeltaUnhealthyApplications | Pourcentage maximal autorisé de dégradation de l’intégrité des applications pendant les mises à niveau du cluster. Le delta est mesuré entre l’état des applications au début de la mise à niveau et l’état des applications au moment de l’évaluation d’intégrité. Cette vérification est effectuée après chaque mise à niveau de domaine de mise à niveau afin de vérifier que l’état global du cluster se trouve dans les limites autorisées. Les services système ne sont pas inclus dans ce. |
int (obligatoire) Contraintes : Valeur minimale = 0 Valeur maximale = 100 |
maxPercentDeltaUnhealthyNodes | Pourcentage maximal autorisé de dégradation de l’intégrité des nœuds pendant les mises à niveau de clusters. Le delta est mesuré entre l’état des nœuds au début de la mise à niveau et l’état des nœuds au moment de l’évaluation de l’intégrité. Cette vérification est effectuée après chaque mise à niveau de domaine de mise à niveau afin de vérifier que l’état global du cluster se trouve dans les limites autorisées. |
int (obligatoire) Contraintes : Valeur minimale = 0 Valeur maximale = 100 |
maxPercentUpgradeDomainDeltaUnhealthyNodes | Pourcentage maximal autorisé de dégradation de l’intégrité des nœuds de domaine de mise à niveau pendant les mises à niveau de clusters. Le delta est mesuré entre l’état des nœuds de domaine de mise à niveau au début de la mise à niveau et leur état au moment de l’évaluation de l’intégrité. Cette vérification est effectuée après chaque mise à niveau de domaine de mise à niveau (pour l’ensemble des domaines de mise à niveau) afin de vérifier que l’état des domaines de mise à niveau se trouve dans les limites autorisées. |
int (obligatoire) Contraintes : Valeur minimale = 0 Valeur maximale = 100 |
ApplicationDeltaHealthPolicyMap
Nom | Description | Valeur |
---|---|---|
{propriété personnalisée} | ApplicationDeltaHealthPolicy |
ApplicationDeltaHealthPolicy
Nom | Description | Valeur |
---|---|---|
defaultServiceTypeDeltaHealthPolicy | Stratégie d’intégrité delta utilisée par défaut pour évaluer l’intégrité d’un type de service lors de la mise à niveau du cluster. | ServiceTypeDeltaHealthPolicy |
serviceTypeDeltaHealthPolicies | Mapper avec la stratégie d’intégrité delta de type de service par nom de type de service. Par défaut, le mappage est vide. | ServiceTypeDeltaHealthPolicyMap |
ServiceTypeDeltaHealthPolicy
Nom | Description | Valeur |
---|---|---|
maxPercentDeltaUnhealthyServices | Pourcentage maximal autorisé de dégradation de l’intégrité des services pendant les mises à niveau du cluster. Le delta est mesuré entre l’état des services au début de la mise à niveau et l’état des services au moment de l’évaluation de l’intégrité. Cette vérification est effectuée après chaque mise à niveau de domaine de mise à niveau afin de vérifier que l’état global du cluster se trouve dans les limites autorisées. |
int Contraintes : Valeur minimale = 0 Valeur maximale = 100 |
ServiceTypeDeltaHealthPolicyMap
Nom | Description | Valeur |
---|---|---|
{propriété personnalisée} | ServiceTypeDeltaHealthPolicy |
ClusterHealthPolicy
Nom | Description | Valeur |
---|---|---|
applicationHealthPolicies | Définit le mappage de stratégie d’intégrité de l’application utilisé pour évaluer l’intégrité d’une application ou de l’une de ses entités enfants. | ApplicationHealthPolicyMap |
maxPercentUnhealthyApplications | Pourcentage maximal autorisé d’applications non saines avant signalement d’une erreur. Par exemple, pour autoriser 10 % des applications pouvant être défectueuses, cette valeur serait de 10. Il s’agit du pourcentage maximum toléré d’applications pouvant être défectueuses avant que l’intégrité du cluster ne soit considérée comme étant à l’état Error. Si le pourcentage est respecté mais qu’il existe au moins une application pouvant être défectueuse, l’état d’intégrité est Warning. Ce calcul est effectué en divisant le nombre d’applications pouvant être défectueuses par le nombre total d’instances de l’application dans le cluster, à l’exception des types d’applications inclus dans le ApplicationTypeHealthPolicyMap. Le calcul est arrondi pour tolérer la défaillance d’un petit nombre d’applications. Le pourcentage par défaut est zéro. |
int Contraintes : Valeur minimale = 0 Valeur maximale = 100 |
maxPercentUnhealthyNodes | Pourcentage maximal autorisé de nœuds non sains avant signalement d’une erreur. Par exemple, pour autoriser 10 % de nœuds défectueux, cette valeur serait de 10. Il s’agit du pourcentage maximum toléré de nœuds pouvant être défectueux avant que l’intégrité du cluster ne soit considérée comme étant à l’état Error. Si le pourcentage est respecté mais qu’il existe au moins un nœud pouvant être défectueux, l’état d’intégrité est Warning. Le pourcentage est calculé en divisant le nombre de nœuds défectueux par le nombre total de nœuds du cluster. Le calcul est arrondi pour tolérer une défaillance sur un petit nombre de nœuds. Le pourcentage par défaut est zéro. Dans les clusters de grande taille, certains nœuds sont toujours inactifs ou en réparation. Ce pourcentage doit donc être configuré pour tolérer cette condition. |
int Contraintes : Valeur minimale = 0 Valeur maximale = 100 |
ApplicationHealthPolicyMap
Nom | Description | Valeur |
---|---|---|
{propriété personnalisée} | ApplicationHealthPolicy |
ApplicationHealthPolicy
Nom | Description | Valeur |
---|---|---|
defaultServiceTypeHealthPolicy | Stratégie d’intégrité utilisée par défaut pour évaluer l’intégrité d’un type de service. | ServiceTypeHealthPolicy |
serviceTypeHealthPolicies | Mapper avec la stratégie d’intégrité de type de service par nom de type de service. Par défaut, le mappage est vide. | ServiceTypeHealthPolicyMap |
ServiceTypeHealthPolicy
Nom | Description | Valeur |
---|---|---|
maxPercentUnhealthyServices | Pourcentage maximal de services autorisés à être défectueux avant que votre application ne soit considérée comme étant erronée. | int Contraintes : Valeur minimale = 0 Valeur maximale = 100 |
ServiceTypeHealthPolicyMap
Nom | Description | Valeur |
---|---|---|
{propriété personnalisée} | ServiceTypeHealthPolicy |