Clústeres Microsoft.ServiceFabric

Definición de recurso Bicep

El tipo de recurso de clústeres se puede implementar con operaciones destinadas a:

Para obtener una lista de las propiedades modificadas en cada versión de API, consulte registro de cambios.

Formato de recurso

Para crear un recurso Microsoft.ServiceFabric/clusters, añade el siguiente Bicep a tu plantilla.

resource symbolicname 'Microsoft.ServiceFabric/clusters@2026-03-01-preview' = {
  location: 'string'
  name: 'string'
  properties: {
    addOnFeatures: [
      'string'
    ]
    applicationTypeVersionsCleanupPolicy: {
      maxUnusedVersionsToKeep: int
    }
    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'
      protectedAccountKeyName2: 'string'
      queueEndpoint: 'string'
      storageAccountName: 'string'
      tableEndpoint: 'string'
    }
    enableHttpGatewayExclusiveAuthMode: bool
    eventStoreServiceEnabled: bool
    fabricSettings: [
      {
        name: 'string'
        parameters: [
          {
            name: 'string'
            value: 'string'
          }
        ]
      }
    ]
    infrastructureServiceManager: bool
    managementEndpoint: 'string'
    nodeTypes: [
      {
        applicationPorts: {
          endPort: int
          startPort: int
        }
        capacities: {
          {customized property}: 'string'
        }
        clientConnectionEndpointPort: int
        durabilityLevel: 'string'
        ephemeralPorts: {
          endPort: int
          startPort: int
        }
        httpGatewayEndpointPort: int
        httpGatewayTokenAuthEndpointPort: int
        isPrimary: bool
        isStateless: bool
        multipleAvailabilityZones: bool
        name: 'string'
        placementProperties: {
          {customized property}: 'string'
        }
        reverseProxyEndpointPort: int
        vmInstanceCount: int
      }
    ]
    notifications: [
      {
        isEnabled: bool
        notificationCategory: 'string'
        notificationLevel: 'string'
        notificationTargets: [
          {
            notificationChannel: 'string'
            receivers: [
              'string'
            ]
          }
        ]
      }
    ]
    reliabilityLevel: 'string'
    reverseProxyCertificate: {
      thumbprint: 'string'
      thumbprintSecondary: 'string'
      x509StoreName: 'string'
    }
    reverseProxyCertificateCommonNames: {
      commonNames: [
        {
          certificateCommonName: 'string'
          certificateIssuerThumbprint: 'string'
        }
      ]
      x509StoreName: 'string'
    }
    sfZonalUpgradeMode: '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'
    upgradePauseEndTimestampUtc: 'string'
    upgradePauseStartTimestampUtc: 'string'
    upgradeWave: 'string'
    vmImage: 'string'
    vmssZonalUpgradeMode: 'string'
    waveUpgradePaused: bool
  }
  tags: {
    {customized property}: 'string'
  }
}

Valores de propiedad

Microsoft.ServiceFabric/clusters

Nombre Descripción Valor
ubicación Ubicación geográfica donde reside el recurso string (obligatorio)
nombre El nombre del recurso string (obligatorio)
Propiedades Propiedades del recurso de clúster clusterProperties de
Etiquetas Etiquetas de recursos Diccionario de nombres y valores de etiqueta. Consulte etiquetas de en plantillas

AplicaciónDeltaHealthPolicy

Nombre Descripción Valor
defaultServiceTypeDeltaHealthPolicy La directiva de mantenimiento delta que se usa de forma predeterminada para evaluar el estado de un tipo de servicio al actualizar el clúster. ServiceTypeDeltaHealthPolicy
serviceTypeDeltaHealthPolicies Mapa con la directiva de mantenimiento delta de tipo de servicio por nombre de tipo de servicio. El mapa está vacío de forma predeterminada. AplicaciónDeltaSaludPolíticaTipoDeltaSaludPolíticas

AplicaciónDeltaSaludPolíticaTipoDeltaSaludPolíticas

Nombre Descripción Valor

ApplicationHealthPolicy

Nombre Descripción Valor
defaultServiceTypeHealthPolicy La directiva de mantenimiento usada de forma predeterminada para evaluar el estado de un tipo de servicio. ServiceTypeHealthPolicy
serviceTypeHealthPolicies Mapa con la directiva de mantenimiento del tipo de servicio por nombre de tipo de servicio. El mapa está vacío de forma predeterminada. AplicaciónPolíticaSaludTipoServicioPolíticas de Salud

AplicaciónPolíticaSaludTipoServicioPolíticas de Salud

Nombre Descripción Valor

ApplicationTypeVersionsCleanupPolicy

Nombre Descripción Valor
maxUnusedVersionsToKeep Número de versiones sin usar por tipo de aplicación que se van a conservar. Int

Restricciones:
Valor mínimo = 0 (obligatorio)

AzureActiveDirectory

Nombre Descripción Valor
clientApplication Azure Active Directory Active Directory Application Application. cuerda
clusterApplication ID de aplicación del clúster Active Directory de Azure. cuerda
ID del arrendatario Azure Active Directory Tenant ID. cuerda

CertificateDescription

Nombre Descripción Valor
Huella digital Huella digital del certificado principal. string (obligatorio)
huella digitalSecundaria Huella digital del certificado secundario. cuerda
x509StoreName Ubicación del almacén de certificados local. 'Libreta de direcciones'
'AuthRoot'
"CertificateAuthority"
'No permitido'
"Mi"
'Raíz'
'Gente de confianza'
"TrustedPublisher"

ClientCertificateCommonName

Nombre Descripción Valor
certificateCommonName Nombre común del certificado de cliente. string (obligatorio)
certificateIssuerThumbprint Huella digital del emisor del certificado de cliente. string (obligatorio)
isAdmin Indica si el certificado de cliente tiene acceso de administrador al clúster. Los clientes que no son administradores solo pueden realizar operaciones de solo lectura en el clúster. bool (obligatorio)

ClientCertificateThumbprint

Nombre Descripción Valor
certificateThumbprint Huella digital del certificado de cliente. string (obligatorio)
isAdmin Indica si el certificado de cliente tiene acceso de administrador al clúster. Los clientes que no son administradores solo pueden realizar operaciones de solo lectura en el clúster. bool (obligatorio)

ClusterHealthPolicy

Nombre Descripción Valor
applicationHealthPolicies Define el mapa de directivas de mantenimiento de la aplicación que se usa para evaluar el estado de una aplicación o una de sus entidades secundarias. ClústerTAplicaciónPolíticaSaludPolíticas de Salud
maxPercentUnhealthyApplications Porcentaje máximo permitido de aplicaciones incorrectas antes de notificar un error. Por ejemplo, para permitir que 10% de aplicaciones sean incorrectos, este valor sería 10.

El porcentaje representa el porcentaje máximo tolerado de aplicaciones que pueden ser incorrectos antes de que el clúster se considere en error.
Si se respeta el porcentaje, pero hay al menos una aplicación incorrecta, el estado se evalúa como Advertencia.
Esto se calcula dividiendo el número de aplicaciones incorrectas en el número total de instancias de aplicación en el clúster, excluyendo las aplicaciones de tipos de aplicación que se incluyen en ApplicationTypeHealthPolicyMap.
El cálculo se redondea hasta tolerar un error en un número reducido de aplicaciones. El porcentaje predeterminado es cero.
Int

Restricciones:
Valor mínimo = 0
Valor máximo = 100
maxPercentUnhealthyNodes Porcentaje máximo permitido de nodos incorrectos antes de notificar un error. Por ejemplo, para permitir que 10% de nodos sean incorrectos, este valor sería 10.

El porcentaje representa el porcentaje máximo tolerado de nodos que pueden ser incorrectos antes de que el clúster se considere en error.
Si se respeta el porcentaje, pero hay al menos un nodo incorrecto, el estado se evalúa como Advertencia.
El porcentaje se calcula dividiendo el número de nodos incorrectos en el número total de nodos del clúster.
El cálculo se redondea hasta tolerar un error en un número reducido de nodos. El porcentaje predeterminado es cero.

En clústeres grandes, algunos nodos siempre estarán inactivos o fuera para reparaciones, por lo que este porcentaje debe configurarse para tolerarlo.
Int

Restricciones:
Valor mínimo = 0
Valor máximo = 100

ClústerTAplicaciónPolíticaSaludPolíticas de Salud

Nombre Descripción Valor

ClusterProperties (Propiedades de clúster)

Nombre Descripción Valor
addOnFeatures Lista de características de complementos que se van a habilitar en el clúster. Matriz de cadenas que contiene cualquiera de:
"BackupRestoreService"
"DnsService"
'Gerente de reparación'
'ResourceMonitorService'
applicationTypeVersionsCleanupPolicy Directiva que se usa para limpiar las versiones no usadas. ApplicationTypeVersionsCleanupPolicy
azureActiveDirectory Configuración de autenticación de AAD del clúster. azureActiveDirectory
certificado Certificado que se va a usar para proteger el clúster. El certificado proporcionado se usará para la seguridad del nodo al nodo dentro del clúster, el certificado SSL para el punto de conexión de administración del clúster y el cliente de administración predeterminado. certificateDescription
certificateCommonNames Describe una lista de certificados de servidor a los que hace referencia el nombre común que se usan para proteger el clúster. ServerCertificateCommonNames
clientCertificateCommonNames Lista de certificados de cliente a los que se hace referencia por nombre común que pueden administrar el clúster. ClientCertificateCommonName[]
clientCertificateThumbprints Lista de certificados de cliente a los que hace referencia la huella digital que pueden administrar el clúster. clientCertificateThumbprint[]
clusterCodeVersion La versión en tiempo de ejecución de Service Fabric del clúster. Esta propiedad solo puede establecer el usuario cuando upgradeMode está establecido en "Manual". Para obtener una lista de las versiones disponibles de Service Fabric para los nuevos clústeres, use ClusterVersion API. Para obtener la lista de versiones disponibles para los clústeres existentes, use availableClusterVersions. cuerda
diagnosticsStorageAccountConfig Información de la cuenta de almacenamiento para almacenar registros de diagnóstico de Service Fabric. DiagnosticsStorageAccountConfig
enableHttpGatewayExclusiveAuthMode Si es true, no se permite la autenticación basada en tokens en httpGatewayEndpoint. Esto es necesario para admitir las versiones 1.3 y posteriores de TLS. Si se usa la autenticación basada en tokens, se debe definir HttpGatewayTokenAuthEndpointPort. Bool
eventStoreServiceEnabled Indica si el servicio de almacén de eventos está habilitado. Bool
fabricSettings Lista de opciones de tejido personalizadas para configurar el clúster. SettingsSectionDescription[]
infrastructureServiceManager Indica si el administrador de servicios de infraestructura está habilitado. Bool
managementEndpoint Punto de conexión de administración http del clúster. string (obligatorio)
nodeTypes Lista de tipos de nodo en el clúster. nodeTypeDescription[] (obligatorio)
notificaciones Indica una lista de canales de notificación para eventos de clúster. de notificación []
fiabilidadNivel El nivel de confiabilidad establece el tamaño del conjunto de réplicas de los servicios del sistema. Obtenga información sobre ReliabilityLevel.

- Ninguno: ejecute los servicios del sistema con un recuento de conjuntos de réplicas de destino de 1. Esto solo se debe usar para los clústeres de prueba.
- Bronze: ejecute los servicios del sistema con un recuento de conjuntos de réplicas de destino de 3. Esto solo se debe usar para los clústeres de prueba.
- Silver: ejecute los servicios del sistema con un recuento de conjuntos de réplicas de destino de 5.
- Gold: ejecute los servicios del sistema con un recuento de conjuntos de réplicas de destino de 7.
- Platinum: ejecute los servicios del sistema con un recuento de conjuntos de réplicas de destino de 9.
'Bronce'
'Oro'
'Ninguno'
'Platino'
'Plata'
reverseProxyCertificate El certificado de servidor usado por el proxy inverso. certificateDescription
reverseProxyCertificateCommonNames Describe una lista de certificados de servidor a los que hace referencia el nombre común que se usan para proteger el clúster. ServerCertificateCommonNames
sfZonalUpgradeMode Esta propiedad controla la agrupación lógica de máquinas virtuales en dominios de actualización (UD). Esta propiedad no puede modificarse si un tipo de nodo con múltiples Availability Zones ya está presente en el clúster. 'Jerárquico'
'Paralelo'
upgradeDescription Directiva que se va a usar al actualizar el clúster. ClusterUpgradePolicy
upgradeMode Modo de actualización del clúster cuando hay disponible una nueva versión en tiempo de ejecución de Service Fabric. 'Automático'
'Manual'
upgradePauseEndTimestampUtc Indica la fecha y hora de finalización para pausar las actualizaciones automáticas de la versión en tiempo de ejecución en el clúster durante un período de tiempo específico en el clúster (UTC). cuerda
upgradePauseStartTimestampUtc Indica la fecha y hora de inicio para pausar las actualizaciones automáticas de la versión en tiempo de ejecución en el clúster durante un período de tiempo específico en el clúster (UTC). cuerda
upgradeWave Indica cuándo se aplicarán nuevas actualizaciones de la versión en tiempo de ejecución del clúster después de su lanzamiento. De forma predeterminada, es Wave0. Solo se aplica cuando upgradeMode está establecido en "Automático". 'Ola0'
'Ola1'
'Ola2'
vmImage La imagen de máquina virtual VM VMSS se ha configurado con. Se pueden usar nombres genéricos como Windows o Linux. cuerda
vmssZonalUpgradeMode Esta propiedad define el modo de actualización para el conjunto de escalas de la máquina virtual; es obligatoria si se añade un tipo de nodo con múltiples Availability Zones. 'Jerárquico'
'Paralelo'
waveUpgradePaused Boolean para pausar las actualizaciones automáticas de la versión del entorno de ejecución en el clúster. Bool

ClusterUpgradeDeltaHealthPolicy

Nombre Descripción Valor
aplicaciónDeltaHealthPolicies Define el mapa de directivas de mantenimiento delta de la aplicación que se usa para evaluar el estado de una aplicación o de una de sus entidades secundarias al actualizar el clúster. ClusterUpgradeDeltaHealthPolicyApplicationDeltaHealthPolicies
maxPercentDeltaUnhealthyApplications Porcentaje máximo permitido de degradación del estado de las aplicaciones permitida durante las actualizaciones del clúster.
La diferencia se mide entre el estado de las aplicaciones al principio de la actualización y el estado de las aplicaciones en el momento de la evaluación de estado.
La comprobación se realiza después de cada finalización de actualización del dominio de actualización para asegurarse de que el estado global del clúster está dentro de los límites tolerados. Los servicios del sistema no se incluyen en esto.
Int

Restricciones:
Valor mínimo = 0
Valor máximo = 100 (obligatorio)
maxPercentDeltaUnhealthyNodes Porcentaje máximo permitido de degradación del estado de los nodos permitido durante las actualizaciones del clúster.
La diferencia se mide entre el estado de los nodos al principio de la actualización y el estado de los nodos en el momento de la evaluación de estado.
La comprobación se realiza después de cada finalización de actualización del dominio de actualización para asegurarse de que el estado global del clúster está dentro de los límites tolerados.
Int

Restricciones:
Valor mínimo = 0
Valor máximo = 100 (obligatorio)
maxPercentUpgradeDomainDeltaUnhealthyNodes El porcentaje máximo permitido de degradación del estado de los nodos de dominio de actualización permitido durante las actualizaciones del clúster.
La diferencia se mide entre el estado de los nodos de dominio de actualización al principio de la actualización y el estado de los nodos de dominio de actualización en el momento de la evaluación de estado.
La comprobación se realiza después de completar cada actualización de dominio de actualización para todos los dominios de actualización completados para asegurarse de que el estado de los dominios de actualización está dentro de los límites tolerados.
Int

Restricciones:
Valor mínimo = 0
Valor máximo = 100 (obligatorio)

ClusterUpgradeDeltaHealthPolicyApplicationDeltaHealthPolicies

Nombre Descripción Valor

ClusterUpgradePolicy

Nombre Descripción Valor
deltaHealthPolicy Directiva de mantenimiento delta del clúster que se usa al actualizar el clúster. clusterUpgradeDeltaHealthPolicy
forceRestart Si es true, los procesos se reinician con fuerza durante la actualización incluso cuando la versión del código no ha cambiado (la actualización solo cambia la configuración o los datos). Bool
healthCheckRetryTimeout Cantidad de tiempo para volver a intentar la evaluación del estado cuando la aplicación o el clúster no son correctos antes de revertir la actualización. El tiempo de espera puede estar en formato hh:mm:ss o en formato d.hh:mm:ss.ms. string (obligatorio)
healthCheckStableDuration La cantidad de tiempo que la aplicación o el clúster deben permanecer en buen estado antes de que la actualización continúe con el siguiente dominio de actualización. La duración puede estar en formato hh:mm:ss o en formato d.hh:mm:ss.ms. string (obligatorio)
healthCheckWaitDuration Período de tiempo que debe esperar después de completar un dominio de actualización antes de realizar comprobaciones de estado. La duración puede estar en formato hh:mm:ss o en formato d.hh:mm:ss.ms. string (obligatorio)
Política de salud Directiva de mantenimiento del clúster que se usa al actualizar el clúster. ClusterHealthPolicy (obligatorio)
upgradeDomainTimeout Cantidad de tiempo que cada dominio de actualización tiene que completarse antes de revertir la actualización. El tiempo de espera puede estar en formato hh:mm:ss o en formato d.hh:mm:ss.ms. string (obligatorio)
upgradeReplicaSetCheckTimeout Cantidad máxima de tiempo para bloquear el procesamiento de un dominio de actualización y evitar la pérdida de disponibilidad cuando hay problemas inesperados. Cuando expire este tiempo de espera, el procesamiento del dominio de actualización continuará independientemente de los problemas de pérdida de disponibilidad. El tiempo de espera se restablece al principio de cada dominio de actualización. El tiempo de espera puede estar en formato hh:mm:ss o en formato d.hh:mm:ss.ms. string (obligatorio)
upgradeTimeout La cantidad de tiempo que tiene que completarse la actualización general antes de revertir la actualización. El tiempo de espera puede estar en formato hh:mm:ss o en formato d.hh:mm:ss.ms. string (obligatorio)

DiagnosticsStorageAccountConfig

Nombre Descripción Valor
blobEndpoint Punto de conexión de blob de la cuenta de azure Storage. string (obligatorio)
protectedAccountKeyName Nombre de clave de almacenamiento de diagnósticos protegido. string (obligatorio)
protectedAccountKeyName2 Nombre de la clave de almacenamiento de diagnóstico protegida secundaria. Si se rota una de las claves de la cuenta de almacenamiento, el clúster se revertirá al uso de la otra. cuerda
queueEndpoint Punto de conexión de cola de la cuenta de azure Storage. string (obligatorio)
storageAccountName El nombre de la cuenta de almacenamiento de Azure. string (obligatorio)
tableEndpoint Punto de conexión de tabla de la cuenta de azure Storage. string (obligatorio)

EndpointRangeDescription

Nombre Descripción Valor
endPort Puerto final de un intervalo de puertos int (obligatorio)
startPort Puerto inicial de un intervalo de puertos int (obligatorio)

NodeTypeDescription

Nombre Descripción Valor
applicationPorts Intervalo de puertos desde los que el clúster asignó el puerto a las aplicaciones de Service Fabric. endpointRangeDescription de
Capacidades Las etiquetas de capacidad aplicadas a los nodos del tipo de nodo, el administrador de recursos de clúster usa estas etiquetas para comprender la cantidad de recursos que tiene un nodo. nodeTypeDescriptionCapacities
clientConnectionEndpointPort Puerto de punto de conexión de administración de clústeres TCP. int (obligatorio)
nivelDeDurabilidad Nivel de durabilidad del tipo de nodo. Obtenga información sobre DurabilityLevel.

- Bronce - Sin privilegios. Este es el valor predeterminado.
- Silver: los trabajos de infraestructura se pueden pausar durante un período de 10 minutos por UD.
- Gold: los trabajos de infraestructura se pueden pausar durante una duración de 2 horas por UD. La durabilidad Gold solo se puede habilitar en Sku de máquina virtual de nodo completo, como D15_V2, G5, etc.
'Bronce'
'Oro'
'Plata'
ephemeralPorts El intervalo de puertos efímeros con los que deben configurarse los nodos de este tipo de nodo. endpointRangeDescription de
httpGatewayEndpointPort Puerto de punto de conexión de administración de clústerES HTTP. int (obligatorio)
httpGatewayTokenAuthEndpointPort Puerto que se usa para las conexiones HTTPS basadas en token al clúster. No se puede establecer en el mismo puerto que HttpGatewayEndpoint. Int
isPrimario Tipo de nodo en el que se ejecutarán los servicios del sistema. Solo se debe marcar un tipo de nodo como principal. El tipo de nodo principal no se puede eliminar ni cambiar para los clústeres existentes. bool (obligatorio)
isStateless Indica si el tipo de nodo solo puede hospedar cargas de trabajo sin estado. Bool
multipleAvailabilityZones Indica si el tipo de nodo está habilitado para admitir varias zonas. Bool
nombre Nombre del tipo de nodo. string (obligatorio)
placementProperties Las etiquetas de selección de ubicación aplicadas a los nodos del tipo de nodo, que se pueden usar para indicar dónde deben ejecutarse determinados servicios (carga de trabajo). NodeTypeDescriptionPlacementProperties
reverseProxyEndpointPort Punto de conexión utilizado por el proxy inverso. Int
vmInstanceCount VMInstanceCount debe ser de 1 a n, donde n indica el número de instancias de máquina virtual correspondientes a este nodeType. VMInstanceCount = 0 solo se puede realizar en estos escenarios: NodeType es un nodeType secundario. Durabilidad = Bronce o Durabilidad >= Bronze e InfrastructureServiceManager = true. Si VMInstanceCount = 0, implica que las máquinas virtuales de este nodeType no se usarán para el cálculo inicial del tamaño del clúster. Int

Restricciones:
Valor mínimo = 0
Valor máximo = 2147483647 (obligatorio)

NodeTypeDescriptionCapacidades

Nombre Descripción Valor

NodeTypeDescriptionPlacementProperties

Nombre Descripción Valor

Notificación

Nombre Descripción Valor
isEnabled Indica si la notificación está habilitada. bool (obligatorio)
notificationCategory Categoría de notificación. 'WaveProgress' (obligatorio)
notificationLevel Nivel de notificación. "Todo"
'Crítico' (obligatorio)
notificationTargets Lista de destinos que se suscriben a la notificación. NotificationTarget[] (obligatorio)

NotificationTarget

Nombre Descripción Valor
notificationChannel El canal de notificación indica el tipo de receptores suscritos a la notificación, ya sea usuario o suscripción. "EmailSubscription"
'EmailUser' (obligatorio)
Receptores Lista de destinos que se suscriben a la notificación. string[] (obligatorio)

ServerCertificateCommonName

Nombre Descripción Valor
certificateCommonName Nombre común del certificado de servidor. string (obligatorio)
certificateIssuerThumbprint Huella digital del emisor del certificado de servidor. string (obligatorio)

ServerCertificateCommonNames

Nombre Descripción Valor
Nombres comunes Lista de certificados de servidor a los que se hace referencia por nombre común que se usan para proteger el clúster. ServerCertificateCommonName[]
x509StoreName Ubicación del almacén de certificados local. 'Libreta de direcciones'
'AuthRoot'
"CertificateAuthority"
'No permitido'
"Mi"
'Raíz'
'Gente de confianza'
"TrustedPublisher"

ServiceTypeDeltaHealthPolicy

Nombre Descripción Valor
maxPercentDeltaUnhealthyServices Porcentaje máximo permitido de degradación del estado de los servicios permitido durante las actualizaciones del clúster.
La diferencia se mide entre el estado de los servicios al principio de la actualización y el estado de los servicios en el momento de la evaluación de estado.
La comprobación se realiza después de cada finalización de actualización del dominio de actualización para asegurarse de que el estado global del clúster está dentro de los límites tolerados.
Int

Restricciones:
Valor mínimo = 0
Valor máximo = 100

ServiceTypeHealthPolicy

Nombre Descripción Valor
maxPercentUnhealthyServices El porcentaje máximo de servicios permitidos para ser incorrectos antes de que la aplicación se considere en error. Int

Restricciones:
Valor mínimo = 0
Valor máximo = 100

SettingsParameterDescription

Nombre Descripción Valor
nombre Nombre del parámetro de la configuración del tejido. string (obligatorio)
valor Valor de parámetro de la configuración del tejido. string (obligatorio)

SettingsSectionDescription

Nombre Descripción Valor
nombre Nombre de sección de la configuración del tejido. string (obligatorio)
Parámetros Colección de parámetros de la sección . SettingsParameterDescription[] (obligatorio)

TrackedResourceTags

Nombre Descripción Valor

Ejemplos de uso

Muestras de Bicep

Ejemplo básico de implementación de clústeres de Service Fabric.

param resourceName string = 'acctest0001'
param location string = 'westeurope'

resource cluster 'Microsoft.ServiceFabric/clusters@2021-06-01' = {
  name: resourceName
  location: location
  properties: {
    addOnFeatures: []
    fabricSettings: []
    managementEndpoint: 'http://example:80'
    nodeTypes: [
      {
        capacities: {}
        clientConnectionEndpointPort: 2020
        durabilityLevel: 'Bronze'
        httpGatewayEndpointPort: 80
        isPrimary: true
        isStateless: false
        multipleAvailabilityZones: false
        name: 'first'
        placementProperties: {}
        vmInstanceCount: 3
      }
    ]
    reliabilityLevel: 'Bronze'
    upgradeMode: 'Automatic'
    vmImage: 'Windows'
  }
}

Azure Verified Modules

Los siguientes módulos verificados Azure pueden usarse para desplegar este tipo de recurso.

Módulo Descripción
Clúster de Fabric de Servicios Módulo de recursos de AVM para el clúster de Service Fabric

Azure Quickstart Samples

Las siguientes plantillas de inicio rápido Azure contienen Bicep ejemplos para desplegar este tipo de recurso.

Archivo Bicep Descripción
Despliega un clúster seguro de 5 nodos Esta plantilla te permite desplegar un Clúster de Fabric de Servicios seguro de 5 nodos ejecutando Windows Server 2019 Datacenter en un VMSS de tamaño Standard_D2_v2.

Definición de recursos de plantilla de ARM

El tipo de recurso de clústeres se puede implementar con operaciones destinadas a:

Para obtener una lista de las propiedades modificadas en cada versión de API, consulte registro de cambios.

Formato de recurso

Para crear un recurso Microsoft.ServiceFabric/clusters, agregue el siguiente JSON a la plantilla.

{
  "type": "Microsoft.ServiceFabric/clusters",
  "apiVersion": "2026-03-01-preview",
  "name": "string",
  "location": "string",
  "properties": {
    "addOnFeatures": [ "string" ],
    "applicationTypeVersionsCleanupPolicy": {
      "maxUnusedVersionsToKeep": "int"
    },
    "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",
      "protectedAccountKeyName2": "string",
      "queueEndpoint": "string",
      "storageAccountName": "string",
      "tableEndpoint": "string"
    },
    "enableHttpGatewayExclusiveAuthMode": "bool",
    "eventStoreServiceEnabled": "bool",
    "fabricSettings": [
      {
        "name": "string",
        "parameters": [
          {
            "name": "string",
            "value": "string"
          }
        ]
      }
    ],
    "infrastructureServiceManager": "bool",
    "managementEndpoint": "string",
    "nodeTypes": [
      {
        "applicationPorts": {
          "endPort": "int",
          "startPort": "int"
        },
        "capacities": {
          "{customized property}": "string"
        },
        "clientConnectionEndpointPort": "int",
        "durabilityLevel": "string",
        "ephemeralPorts": {
          "endPort": "int",
          "startPort": "int"
        },
        "httpGatewayEndpointPort": "int",
        "httpGatewayTokenAuthEndpointPort": "int",
        "isPrimary": "bool",
        "isStateless": "bool",
        "multipleAvailabilityZones": "bool",
        "name": "string",
        "placementProperties": {
          "{customized property}": "string"
        },
        "reverseProxyEndpointPort": "int",
        "vmInstanceCount": "int"
      }
    ],
    "notifications": [
      {
        "isEnabled": "bool",
        "notificationCategory": "string",
        "notificationLevel": "string",
        "notificationTargets": [
          {
            "notificationChannel": "string",
            "receivers": [ "string" ]
          }
        ]
      }
    ],
    "reliabilityLevel": "string",
    "reverseProxyCertificate": {
      "thumbprint": "string",
      "thumbprintSecondary": "string",
      "x509StoreName": "string"
    },
    "reverseProxyCertificateCommonNames": {
      "commonNames": [
        {
          "certificateCommonName": "string",
          "certificateIssuerThumbprint": "string"
        }
      ],
      "x509StoreName": "string"
    },
    "sfZonalUpgradeMode": "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",
    "upgradePauseEndTimestampUtc": "string",
    "upgradePauseStartTimestampUtc": "string",
    "upgradeWave": "string",
    "vmImage": "string",
    "vmssZonalUpgradeMode": "string",
    "waveUpgradePaused": "bool"
  },
  "tags": {
    "{customized property}": "string"
  }
}

Valores de propiedad

Microsoft.ServiceFabric/clusters

Nombre Descripción Valor
apiVersion La versión de api 'Avance del 01-03-2026'
ubicación Ubicación geográfica donde reside el recurso string (obligatorio)
nombre El nombre del recurso string (obligatorio)
Propiedades Propiedades del recurso de clúster clusterProperties de
Etiquetas Etiquetas de recursos Diccionario de nombres y valores de etiqueta. Consulte etiquetas de en plantillas
tipo El tipo de recurso "Microsoft.ServiceFabric/clusters"

AplicaciónDeltaHealthPolicy

Nombre Descripción Valor
defaultServiceTypeDeltaHealthPolicy La directiva de mantenimiento delta que se usa de forma predeterminada para evaluar el estado de un tipo de servicio al actualizar el clúster. ServiceTypeDeltaHealthPolicy
serviceTypeDeltaHealthPolicies Mapa con la directiva de mantenimiento delta de tipo de servicio por nombre de tipo de servicio. El mapa está vacío de forma predeterminada. AplicaciónDeltaSaludPolíticaTipoDeltaSaludPolíticas

AplicaciónDeltaSaludPolíticaTipoDeltaSaludPolíticas

Nombre Descripción Valor

ApplicationHealthPolicy

Nombre Descripción Valor
defaultServiceTypeHealthPolicy La directiva de mantenimiento usada de forma predeterminada para evaluar el estado de un tipo de servicio. ServiceTypeHealthPolicy
serviceTypeHealthPolicies Mapa con la directiva de mantenimiento del tipo de servicio por nombre de tipo de servicio. El mapa está vacío de forma predeterminada. AplicaciónPolíticaSaludTipoServicioPolíticas de Salud

AplicaciónPolíticaSaludTipoServicioPolíticas de Salud

Nombre Descripción Valor

ApplicationTypeVersionsCleanupPolicy

Nombre Descripción Valor
maxUnusedVersionsToKeep Número de versiones sin usar por tipo de aplicación que se van a conservar. Int

Restricciones:
Valor mínimo = 0 (obligatorio)

AzureActiveDirectory

Nombre Descripción Valor
clientApplication Azure Active Directory Active Directory Application Application. cuerda
clusterApplication ID de aplicación del clúster Active Directory de Azure. cuerda
ID del arrendatario Azure Active Directory Tenant ID. cuerda

CertificateDescription

Nombre Descripción Valor
Huella digital Huella digital del certificado principal. string (obligatorio)
huella digitalSecundaria Huella digital del certificado secundario. cuerda
x509StoreName Ubicación del almacén de certificados local. 'Libreta de direcciones'
'AuthRoot'
"CertificateAuthority"
'No permitido'
"Mi"
'Raíz'
'Gente de confianza'
"TrustedPublisher"

ClientCertificateCommonName

Nombre Descripción Valor
certificateCommonName Nombre común del certificado de cliente. string (obligatorio)
certificateIssuerThumbprint Huella digital del emisor del certificado de cliente. string (obligatorio)
isAdmin Indica si el certificado de cliente tiene acceso de administrador al clúster. Los clientes que no son administradores solo pueden realizar operaciones de solo lectura en el clúster. bool (obligatorio)

ClientCertificateThumbprint

Nombre Descripción Valor
certificateThumbprint Huella digital del certificado de cliente. string (obligatorio)
isAdmin Indica si el certificado de cliente tiene acceso de administrador al clúster. Los clientes que no son administradores solo pueden realizar operaciones de solo lectura en el clúster. bool (obligatorio)

ClusterHealthPolicy

Nombre Descripción Valor
applicationHealthPolicies Define el mapa de directivas de mantenimiento de la aplicación que se usa para evaluar el estado de una aplicación o una de sus entidades secundarias. ClústerTAplicaciónPolíticaSaludPolíticas de Salud
maxPercentUnhealthyApplications Porcentaje máximo permitido de aplicaciones incorrectas antes de notificar un error. Por ejemplo, para permitir que 10% de aplicaciones sean incorrectos, este valor sería 10.

El porcentaje representa el porcentaje máximo tolerado de aplicaciones que pueden ser incorrectos antes de que el clúster se considere en error.
Si se respeta el porcentaje, pero hay al menos una aplicación incorrecta, el estado se evalúa como Advertencia.
Esto se calcula dividiendo el número de aplicaciones incorrectas en el número total de instancias de aplicación en el clúster, excluyendo las aplicaciones de tipos de aplicación que se incluyen en ApplicationTypeHealthPolicyMap.
El cálculo se redondea hasta tolerar un error en un número reducido de aplicaciones. El porcentaje predeterminado es cero.
Int

Restricciones:
Valor mínimo = 0
Valor máximo = 100
maxPercentUnhealthyNodes Porcentaje máximo permitido de nodos incorrectos antes de notificar un error. Por ejemplo, para permitir que 10% de nodos sean incorrectos, este valor sería 10.

El porcentaje representa el porcentaje máximo tolerado de nodos que pueden ser incorrectos antes de que el clúster se considere en error.
Si se respeta el porcentaje, pero hay al menos un nodo incorrecto, el estado se evalúa como Advertencia.
El porcentaje se calcula dividiendo el número de nodos incorrectos en el número total de nodos del clúster.
El cálculo se redondea hasta tolerar un error en un número reducido de nodos. El porcentaje predeterminado es cero.

En clústeres grandes, algunos nodos siempre estarán inactivos o fuera para reparaciones, por lo que este porcentaje debe configurarse para tolerarlo.
Int

Restricciones:
Valor mínimo = 0
Valor máximo = 100

ClústerTAplicaciónPolíticaSaludPolíticas de Salud

Nombre Descripción Valor

ClusterProperties (Propiedades de clúster)

Nombre Descripción Valor
addOnFeatures Lista de características de complementos que se van a habilitar en el clúster. Matriz de cadenas que contiene cualquiera de:
"BackupRestoreService"
"DnsService"
'Gerente de reparación'
'ResourceMonitorService'
applicationTypeVersionsCleanupPolicy Directiva que se usa para limpiar las versiones no usadas. ApplicationTypeVersionsCleanupPolicy
azureActiveDirectory Configuración de autenticación de AAD del clúster. azureActiveDirectory
certificado Certificado que se va a usar para proteger el clúster. El certificado proporcionado se usará para la seguridad del nodo al nodo dentro del clúster, el certificado SSL para el punto de conexión de administración del clúster y el cliente de administración predeterminado. certificateDescription
certificateCommonNames Describe una lista de certificados de servidor a los que hace referencia el nombre común que se usan para proteger el clúster. ServerCertificateCommonNames
clientCertificateCommonNames Lista de certificados de cliente a los que se hace referencia por nombre común que pueden administrar el clúster. ClientCertificateCommonName[]
clientCertificateThumbprints Lista de certificados de cliente a los que hace referencia la huella digital que pueden administrar el clúster. clientCertificateThumbprint[]
clusterCodeVersion La versión en tiempo de ejecución de Service Fabric del clúster. Esta propiedad solo puede establecer el usuario cuando upgradeMode está establecido en "Manual". Para obtener una lista de las versiones disponibles de Service Fabric para los nuevos clústeres, use ClusterVersion API. Para obtener la lista de versiones disponibles para los clústeres existentes, use availableClusterVersions. cuerda
diagnosticsStorageAccountConfig Información de la cuenta de almacenamiento para almacenar registros de diagnóstico de Service Fabric. DiagnosticsStorageAccountConfig
enableHttpGatewayExclusiveAuthMode Si es true, no se permite la autenticación basada en tokens en httpGatewayEndpoint. Esto es necesario para admitir las versiones 1.3 y posteriores de TLS. Si se usa la autenticación basada en tokens, se debe definir HttpGatewayTokenAuthEndpointPort. Bool
eventStoreServiceEnabled Indica si el servicio de almacén de eventos está habilitado. Bool
fabricSettings Lista de opciones de tejido personalizadas para configurar el clúster. SettingsSectionDescription[]
infrastructureServiceManager Indica si el administrador de servicios de infraestructura está habilitado. Bool
managementEndpoint Punto de conexión de administración http del clúster. string (obligatorio)
nodeTypes Lista de tipos de nodo en el clúster. nodeTypeDescription[] (obligatorio)
notificaciones Indica una lista de canales de notificación para eventos de clúster. de notificación []
fiabilidadNivel El nivel de confiabilidad establece el tamaño del conjunto de réplicas de los servicios del sistema. Obtenga información sobre ReliabilityLevel.

- Ninguno: ejecute los servicios del sistema con un recuento de conjuntos de réplicas de destino de 1. Esto solo se debe usar para los clústeres de prueba.
- Bronze: ejecute los servicios del sistema con un recuento de conjuntos de réplicas de destino de 3. Esto solo se debe usar para los clústeres de prueba.
- Silver: ejecute los servicios del sistema con un recuento de conjuntos de réplicas de destino de 5.
- Gold: ejecute los servicios del sistema con un recuento de conjuntos de réplicas de destino de 7.
- Platinum: ejecute los servicios del sistema con un recuento de conjuntos de réplicas de destino de 9.
'Bronce'
'Oro'
'Ninguno'
'Platino'
'Plata'
reverseProxyCertificate El certificado de servidor usado por el proxy inverso. certificateDescription
reverseProxyCertificateCommonNames Describe una lista de certificados de servidor a los que hace referencia el nombre común que se usan para proteger el clúster. ServerCertificateCommonNames
sfZonalUpgradeMode Esta propiedad controla la agrupación lógica de máquinas virtuales en dominios de actualización (UD). Esta propiedad no puede modificarse si un tipo de nodo con múltiples Availability Zones ya está presente en el clúster. 'Jerárquico'
'Paralelo'
upgradeDescription Directiva que se va a usar al actualizar el clúster. ClusterUpgradePolicy
upgradeMode Modo de actualización del clúster cuando hay disponible una nueva versión en tiempo de ejecución de Service Fabric. 'Automático'
'Manual'
upgradePauseEndTimestampUtc Indica la fecha y hora de finalización para pausar las actualizaciones automáticas de la versión en tiempo de ejecución en el clúster durante un período de tiempo específico en el clúster (UTC). cuerda
upgradePauseStartTimestampUtc Indica la fecha y hora de inicio para pausar las actualizaciones automáticas de la versión en tiempo de ejecución en el clúster durante un período de tiempo específico en el clúster (UTC). cuerda
upgradeWave Indica cuándo se aplicarán nuevas actualizaciones de la versión en tiempo de ejecución del clúster después de su lanzamiento. De forma predeterminada, es Wave0. Solo se aplica cuando upgradeMode está establecido en "Automático". 'Ola0'
'Ola1'
'Ola2'
vmImage La imagen de máquina virtual VM VMSS se ha configurado con. Se pueden usar nombres genéricos como Windows o Linux. cuerda
vmssZonalUpgradeMode Esta propiedad define el modo de actualización para el conjunto de escalas de la máquina virtual; es obligatoria si se añade un tipo de nodo con múltiples Availability Zones. 'Jerárquico'
'Paralelo'
waveUpgradePaused Boolean para pausar las actualizaciones automáticas de la versión del entorno de ejecución en el clúster. Bool

ClusterUpgradeDeltaHealthPolicy

Nombre Descripción Valor
aplicaciónDeltaHealthPolicies Define el mapa de directivas de mantenimiento delta de la aplicación que se usa para evaluar el estado de una aplicación o de una de sus entidades secundarias al actualizar el clúster. ClusterUpgradeDeltaHealthPolicyApplicationDeltaHealthPolicies
maxPercentDeltaUnhealthyApplications Porcentaje máximo permitido de degradación del estado de las aplicaciones permitida durante las actualizaciones del clúster.
La diferencia se mide entre el estado de las aplicaciones al principio de la actualización y el estado de las aplicaciones en el momento de la evaluación de estado.
La comprobación se realiza después de cada finalización de actualización del dominio de actualización para asegurarse de que el estado global del clúster está dentro de los límites tolerados. Los servicios del sistema no se incluyen en esto.
Int

Restricciones:
Valor mínimo = 0
Valor máximo = 100 (obligatorio)
maxPercentDeltaUnhealthyNodes Porcentaje máximo permitido de degradación del estado de los nodos permitido durante las actualizaciones del clúster.
La diferencia se mide entre el estado de los nodos al principio de la actualización y el estado de los nodos en el momento de la evaluación de estado.
La comprobación se realiza después de cada finalización de actualización del dominio de actualización para asegurarse de que el estado global del clúster está dentro de los límites tolerados.
Int

Restricciones:
Valor mínimo = 0
Valor máximo = 100 (obligatorio)
maxPercentUpgradeDomainDeltaUnhealthyNodes El porcentaje máximo permitido de degradación del estado de los nodos de dominio de actualización permitido durante las actualizaciones del clúster.
La diferencia se mide entre el estado de los nodos de dominio de actualización al principio de la actualización y el estado de los nodos de dominio de actualización en el momento de la evaluación de estado.
La comprobación se realiza después de completar cada actualización de dominio de actualización para todos los dominios de actualización completados para asegurarse de que el estado de los dominios de actualización está dentro de los límites tolerados.
Int

Restricciones:
Valor mínimo = 0
Valor máximo = 100 (obligatorio)

ClusterUpgradeDeltaHealthPolicyApplicationDeltaHealthPolicies

Nombre Descripción Valor

ClusterUpgradePolicy

Nombre Descripción Valor
deltaHealthPolicy Directiva de mantenimiento delta del clúster que se usa al actualizar el clúster. clusterUpgradeDeltaHealthPolicy
forceRestart Si es true, los procesos se reinician con fuerza durante la actualización incluso cuando la versión del código no ha cambiado (la actualización solo cambia la configuración o los datos). Bool
healthCheckRetryTimeout Cantidad de tiempo para volver a intentar la evaluación del estado cuando la aplicación o el clúster no son correctos antes de revertir la actualización. El tiempo de espera puede estar en formato hh:mm:ss o en formato d.hh:mm:ss.ms. string (obligatorio)
healthCheckStableDuration La cantidad de tiempo que la aplicación o el clúster deben permanecer en buen estado antes de que la actualización continúe con el siguiente dominio de actualización. La duración puede estar en formato hh:mm:ss o en formato d.hh:mm:ss.ms. string (obligatorio)
healthCheckWaitDuration Período de tiempo que debe esperar después de completar un dominio de actualización antes de realizar comprobaciones de estado. La duración puede estar en formato hh:mm:ss o en formato d.hh:mm:ss.ms. string (obligatorio)
Política de salud Directiva de mantenimiento del clúster que se usa al actualizar el clúster. ClusterHealthPolicy (obligatorio)
upgradeDomainTimeout Cantidad de tiempo que cada dominio de actualización tiene que completarse antes de revertir la actualización. El tiempo de espera puede estar en formato hh:mm:ss o en formato d.hh:mm:ss.ms. string (obligatorio)
upgradeReplicaSetCheckTimeout Cantidad máxima de tiempo para bloquear el procesamiento de un dominio de actualización y evitar la pérdida de disponibilidad cuando hay problemas inesperados. Cuando expire este tiempo de espera, el procesamiento del dominio de actualización continuará independientemente de los problemas de pérdida de disponibilidad. El tiempo de espera se restablece al principio de cada dominio de actualización. El tiempo de espera puede estar en formato hh:mm:ss o en formato d.hh:mm:ss.ms. string (obligatorio)
upgradeTimeout La cantidad de tiempo que tiene que completarse la actualización general antes de revertir la actualización. El tiempo de espera puede estar en formato hh:mm:ss o en formato d.hh:mm:ss.ms. string (obligatorio)

DiagnosticsStorageAccountConfig

Nombre Descripción Valor
blobEndpoint Punto de conexión de blob de la cuenta de azure Storage. string (obligatorio)
protectedAccountKeyName Nombre de clave de almacenamiento de diagnósticos protegido. string (obligatorio)
protectedAccountKeyName2 Nombre de la clave de almacenamiento de diagnóstico protegida secundaria. Si se rota una de las claves de la cuenta de almacenamiento, el clúster se revertirá al uso de la otra. cuerda
queueEndpoint Punto de conexión de cola de la cuenta de azure Storage. string (obligatorio)
storageAccountName El nombre de la cuenta de almacenamiento de Azure. string (obligatorio)
tableEndpoint Punto de conexión de tabla de la cuenta de azure Storage. string (obligatorio)

EndpointRangeDescription

Nombre Descripción Valor
endPort Puerto final de un intervalo de puertos int (obligatorio)
startPort Puerto inicial de un intervalo de puertos int (obligatorio)

NodeTypeDescription

Nombre Descripción Valor
applicationPorts Intervalo de puertos desde los que el clúster asignó el puerto a las aplicaciones de Service Fabric. endpointRangeDescription de
Capacidades Las etiquetas de capacidad aplicadas a los nodos del tipo de nodo, el administrador de recursos de clúster usa estas etiquetas para comprender la cantidad de recursos que tiene un nodo. nodeTypeDescriptionCapacities
clientConnectionEndpointPort Puerto de punto de conexión de administración de clústeres TCP. int (obligatorio)
nivelDeDurabilidad Nivel de durabilidad del tipo de nodo. Obtenga información sobre DurabilityLevel.

- Bronce - Sin privilegios. Este es el valor predeterminado.
- Silver: los trabajos de infraestructura se pueden pausar durante un período de 10 minutos por UD.
- Gold: los trabajos de infraestructura se pueden pausar durante una duración de 2 horas por UD. La durabilidad Gold solo se puede habilitar en Sku de máquina virtual de nodo completo, como D15_V2, G5, etc.
'Bronce'
'Oro'
'Plata'
ephemeralPorts El intervalo de puertos efímeros con los que deben configurarse los nodos de este tipo de nodo. endpointRangeDescription de
httpGatewayEndpointPort Puerto de punto de conexión de administración de clústerES HTTP. int (obligatorio)
httpGatewayTokenAuthEndpointPort Puerto que se usa para las conexiones HTTPS basadas en token al clúster. No se puede establecer en el mismo puerto que HttpGatewayEndpoint. Int
isPrimario Tipo de nodo en el que se ejecutarán los servicios del sistema. Solo se debe marcar un tipo de nodo como principal. El tipo de nodo principal no se puede eliminar ni cambiar para los clústeres existentes. bool (obligatorio)
isStateless Indica si el tipo de nodo solo puede hospedar cargas de trabajo sin estado. Bool
multipleAvailabilityZones Indica si el tipo de nodo está habilitado para admitir varias zonas. Bool
nombre Nombre del tipo de nodo. string (obligatorio)
placementProperties Las etiquetas de selección de ubicación aplicadas a los nodos del tipo de nodo, que se pueden usar para indicar dónde deben ejecutarse determinados servicios (carga de trabajo). NodeTypeDescriptionPlacementProperties
reverseProxyEndpointPort Punto de conexión utilizado por el proxy inverso. Int
vmInstanceCount VMInstanceCount debe ser de 1 a n, donde n indica el número de instancias de máquina virtual correspondientes a este nodeType. VMInstanceCount = 0 solo se puede realizar en estos escenarios: NodeType es un nodeType secundario. Durabilidad = Bronce o Durabilidad >= Bronze e InfrastructureServiceManager = true. Si VMInstanceCount = 0, implica que las máquinas virtuales de este nodeType no se usarán para el cálculo inicial del tamaño del clúster. Int

Restricciones:
Valor mínimo = 0
Valor máximo = 2147483647 (obligatorio)

NodeTypeDescriptionCapacidades

Nombre Descripción Valor

NodeTypeDescriptionPlacementProperties

Nombre Descripción Valor

Notificación

Nombre Descripción Valor
isEnabled Indica si la notificación está habilitada. bool (obligatorio)
notificationCategory Categoría de notificación. 'WaveProgress' (obligatorio)
notificationLevel Nivel de notificación. "Todo"
'Crítico' (obligatorio)
notificationTargets Lista de destinos que se suscriben a la notificación. NotificationTarget[] (obligatorio)

NotificationTarget

Nombre Descripción Valor
notificationChannel El canal de notificación indica el tipo de receptores suscritos a la notificación, ya sea usuario o suscripción. "EmailSubscription"
'EmailUser' (obligatorio)
Receptores Lista de destinos que se suscriben a la notificación. string[] (obligatorio)

ServerCertificateCommonName

Nombre Descripción Valor
certificateCommonName Nombre común del certificado de servidor. string (obligatorio)
certificateIssuerThumbprint Huella digital del emisor del certificado de servidor. string (obligatorio)

ServerCertificateCommonNames

Nombre Descripción Valor
Nombres comunes Lista de certificados de servidor a los que se hace referencia por nombre común que se usan para proteger el clúster. ServerCertificateCommonName[]
x509StoreName Ubicación del almacén de certificados local. 'Libreta de direcciones'
'AuthRoot'
"CertificateAuthority"
'No permitido'
"Mi"
'Raíz'
'Gente de confianza'
"TrustedPublisher"

ServiceTypeDeltaHealthPolicy

Nombre Descripción Valor
maxPercentDeltaUnhealthyServices Porcentaje máximo permitido de degradación del estado de los servicios permitido durante las actualizaciones del clúster.
La diferencia se mide entre el estado de los servicios al principio de la actualización y el estado de los servicios en el momento de la evaluación de estado.
La comprobación se realiza después de cada finalización de actualización del dominio de actualización para asegurarse de que el estado global del clúster está dentro de los límites tolerados.
Int

Restricciones:
Valor mínimo = 0
Valor máximo = 100

ServiceTypeHealthPolicy

Nombre Descripción Valor
maxPercentUnhealthyServices El porcentaje máximo de servicios permitidos para ser incorrectos antes de que la aplicación se considere en error. Int

Restricciones:
Valor mínimo = 0
Valor máximo = 100

SettingsParameterDescription

Nombre Descripción Valor
nombre Nombre del parámetro de la configuración del tejido. string (obligatorio)
valor Valor de parámetro de la configuración del tejido. string (obligatorio)

SettingsSectionDescription

Nombre Descripción Valor
nombre Nombre de sección de la configuración del tejido. string (obligatorio)
Parámetros Colección de parámetros de la sección . SettingsParameterDescription[] (obligatorio)

TrackedResourceTags

Nombre Descripción Valor

Ejemplos de uso

Plantillas de inicio rápido de Azure

Las siguientes plantillas Azure Quickstart despliegan este tipo de recurso.

Plantilla Descripción
Despliega un clúster seguro de 3 nodos con NSGs activados

Despliega en Azure
Esta plantilla permite desplegar un Clúster de Fabric de Servicio seguro de 3 nodos ejecutando Windows Data Center Server 2016 en máquinas virtuales de tamaño Standard_D2. Usar esta plantilla permite controlar el tráfico de red entrante y saliente mediante grupos de seguridad de red.
Despliega un clúster seguro de 5 nodos

Despliega en Azure
Esta plantilla te permite desplegar un Clúster de Fabric de Servicios seguro de 5 nodos ejecutando Windows Server 2019 Datacenter en un VMSS de tamaño Standard_D2_v2.
Despliega un clúster de 5 nodos de Ubuntu Service Fabric

Despliega en Azure
Esta plantilla permite implementar un clúster seguro de Service Fabric de 5 nodos que ejecuta Ubuntu en un vmSS de tamaño de Standard_D2_V2.

Definición de recursos de Terraform (proveedor AzAPI)

El tipo de recurso de clústeres se puede implementar con operaciones destinadas a:

  • Grupos de recursos

Para obtener una lista de las propiedades modificadas en cada versión de API, consulte registro de cambios.

Formato de recurso

Para crear un recurso Microsoft.ServiceFabric/clusters, agregue el siguiente terraform a la plantilla.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.ServiceFabric/clusters@2026-03-01-preview"
  name = "string"
  parent_id = "string"
  location = "string"
  tags = {
    {customized property} = "string"
  }
  body = {
    properties = {
      addOnFeatures = [
        "string"
      ]
      applicationTypeVersionsCleanupPolicy = {
        maxUnusedVersionsToKeep = int
      }
      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"
        protectedAccountKeyName2 = "string"
        queueEndpoint = "string"
        storageAccountName = "string"
        tableEndpoint = "string"
      }
      enableHttpGatewayExclusiveAuthMode = bool
      eventStoreServiceEnabled = bool
      fabricSettings = [
        {
          name = "string"
          parameters = [
            {
              name = "string"
              value = "string"
            }
          ]
        }
      ]
      infrastructureServiceManager = bool
      managementEndpoint = "string"
      nodeTypes = [
        {
          applicationPorts = {
            endPort = int
            startPort = int
          }
          capacities = {
            {customized property} = "string"
          }
          clientConnectionEndpointPort = int
          durabilityLevel = "string"
          ephemeralPorts = {
            endPort = int
            startPort = int
          }
          httpGatewayEndpointPort = int
          httpGatewayTokenAuthEndpointPort = int
          isPrimary = bool
          isStateless = bool
          multipleAvailabilityZones = bool
          name = "string"
          placementProperties = {
            {customized property} = "string"
          }
          reverseProxyEndpointPort = int
          vmInstanceCount = int
        }
      ]
      notifications = [
        {
          isEnabled = bool
          notificationCategory = "string"
          notificationLevel = "string"
          notificationTargets = [
            {
              notificationChannel = "string"
              receivers = [
                "string"
              ]
            }
          ]
        }
      ]
      reliabilityLevel = "string"
      reverseProxyCertificate = {
        thumbprint = "string"
        thumbprintSecondary = "string"
        x509StoreName = "string"
      }
      reverseProxyCertificateCommonNames = {
        commonNames = [
          {
            certificateCommonName = "string"
            certificateIssuerThumbprint = "string"
          }
        ]
        x509StoreName = "string"
      }
      sfZonalUpgradeMode = "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"
      upgradePauseEndTimestampUtc = "string"
      upgradePauseStartTimestampUtc = "string"
      upgradeWave = "string"
      vmImage = "string"
      vmssZonalUpgradeMode = "string"
      waveUpgradePaused = bool
    }
  }
}

Valores de propiedad

Microsoft.ServiceFabric/clusters

Nombre Descripción Valor
ubicación Ubicación geográfica donde reside el recurso string (obligatorio)
nombre El nombre del recurso string (obligatorio)
Propiedades Propiedades del recurso de clúster clusterProperties de
Etiquetas Etiquetas de recursos Diccionario de nombres y valores de etiqueta.
tipo El tipo de recurso "Microsoft.ServiceFabric/clusters@2026-03-01-preview"

AplicaciónDeltaHealthPolicy

Nombre Descripción Valor
defaultServiceTypeDeltaHealthPolicy La directiva de mantenimiento delta que se usa de forma predeterminada para evaluar el estado de un tipo de servicio al actualizar el clúster. ServiceTypeDeltaHealthPolicy
serviceTypeDeltaHealthPolicies Mapa con la directiva de mantenimiento delta de tipo de servicio por nombre de tipo de servicio. El mapa está vacío de forma predeterminada. AplicaciónDeltaSaludPolíticaTipoDeltaSaludPolíticas

AplicaciónDeltaSaludPolíticaTipoDeltaSaludPolíticas

Nombre Descripción Valor

ApplicationHealthPolicy

Nombre Descripción Valor
defaultServiceTypeHealthPolicy La directiva de mantenimiento usada de forma predeterminada para evaluar el estado de un tipo de servicio. ServiceTypeHealthPolicy
serviceTypeHealthPolicies Mapa con la directiva de mantenimiento del tipo de servicio por nombre de tipo de servicio. El mapa está vacío de forma predeterminada. AplicaciónPolíticaSaludTipoServicioPolíticas de Salud

AplicaciónPolíticaSaludTipoServicioPolíticas de Salud

Nombre Descripción Valor

ApplicationTypeVersionsCleanupPolicy

Nombre Descripción Valor
maxUnusedVersionsToKeep Número de versiones sin usar por tipo de aplicación que se van a conservar. Int

Restricciones:
Valor mínimo = 0 (obligatorio)

AzureActiveDirectory

Nombre Descripción Valor
clientApplication Azure Active Directory Active Directory Application Application. cuerda
clusterApplication ID de aplicación del clúster Active Directory de Azure. cuerda
ID del arrendatario Azure Active Directory Tenant ID. cuerda

CertificateDescription

Nombre Descripción Valor
Huella digital Huella digital del certificado principal. string (obligatorio)
huella digitalSecundaria Huella digital del certificado secundario. cuerda
x509StoreName Ubicación del almacén de certificados local. 'Libreta de direcciones'
'AuthRoot'
"CertificateAuthority"
'No permitido'
"Mi"
'Raíz'
'Gente de confianza'
"TrustedPublisher"

ClientCertificateCommonName

Nombre Descripción Valor
certificateCommonName Nombre común del certificado de cliente. string (obligatorio)
certificateIssuerThumbprint Huella digital del emisor del certificado de cliente. string (obligatorio)
isAdmin Indica si el certificado de cliente tiene acceso de administrador al clúster. Los clientes que no son administradores solo pueden realizar operaciones de solo lectura en el clúster. bool (obligatorio)

ClientCertificateThumbprint

Nombre Descripción Valor
certificateThumbprint Huella digital del certificado de cliente. string (obligatorio)
isAdmin Indica si el certificado de cliente tiene acceso de administrador al clúster. Los clientes que no son administradores solo pueden realizar operaciones de solo lectura en el clúster. bool (obligatorio)

ClusterHealthPolicy

Nombre Descripción Valor
applicationHealthPolicies Define el mapa de directivas de mantenimiento de la aplicación que se usa para evaluar el estado de una aplicación o una de sus entidades secundarias. ClústerTAplicaciónPolíticaSaludPolíticas de Salud
maxPercentUnhealthyApplications Porcentaje máximo permitido de aplicaciones incorrectas antes de notificar un error. Por ejemplo, para permitir que 10% de aplicaciones sean incorrectos, este valor sería 10.

El porcentaje representa el porcentaje máximo tolerado de aplicaciones que pueden ser incorrectos antes de que el clúster se considere en error.
Si se respeta el porcentaje, pero hay al menos una aplicación incorrecta, el estado se evalúa como Advertencia.
Esto se calcula dividiendo el número de aplicaciones incorrectas en el número total de instancias de aplicación en el clúster, excluyendo las aplicaciones de tipos de aplicación que se incluyen en ApplicationTypeHealthPolicyMap.
El cálculo se redondea hasta tolerar un error en un número reducido de aplicaciones. El porcentaje predeterminado es cero.
Int

Restricciones:
Valor mínimo = 0
Valor máximo = 100
maxPercentUnhealthyNodes Porcentaje máximo permitido de nodos incorrectos antes de notificar un error. Por ejemplo, para permitir que 10% de nodos sean incorrectos, este valor sería 10.

El porcentaje representa el porcentaje máximo tolerado de nodos que pueden ser incorrectos antes de que el clúster se considere en error.
Si se respeta el porcentaje, pero hay al menos un nodo incorrecto, el estado se evalúa como Advertencia.
El porcentaje se calcula dividiendo el número de nodos incorrectos en el número total de nodos del clúster.
El cálculo se redondea hasta tolerar un error en un número reducido de nodos. El porcentaje predeterminado es cero.

En clústeres grandes, algunos nodos siempre estarán inactivos o fuera para reparaciones, por lo que este porcentaje debe configurarse para tolerarlo.
Int

Restricciones:
Valor mínimo = 0
Valor máximo = 100

ClústerTAplicaciónPolíticaSaludPolíticas de Salud

Nombre Descripción Valor

ClusterProperties (Propiedades de clúster)

Nombre Descripción Valor
addOnFeatures Lista de características de complementos que se van a habilitar en el clúster. Matriz de cadenas que contiene cualquiera de:
"BackupRestoreService"
"DnsService"
'Gerente de reparación'
'ResourceMonitorService'
applicationTypeVersionsCleanupPolicy Directiva que se usa para limpiar las versiones no usadas. ApplicationTypeVersionsCleanupPolicy
azureActiveDirectory Configuración de autenticación de AAD del clúster. azureActiveDirectory
certificado Certificado que se va a usar para proteger el clúster. El certificado proporcionado se usará para la seguridad del nodo al nodo dentro del clúster, el certificado SSL para el punto de conexión de administración del clúster y el cliente de administración predeterminado. certificateDescription
certificateCommonNames Describe una lista de certificados de servidor a los que hace referencia el nombre común que se usan para proteger el clúster. ServerCertificateCommonNames
clientCertificateCommonNames Lista de certificados de cliente a los que se hace referencia por nombre común que pueden administrar el clúster. ClientCertificateCommonName[]
clientCertificateThumbprints Lista de certificados de cliente a los que hace referencia la huella digital que pueden administrar el clúster. clientCertificateThumbprint[]
clusterCodeVersion La versión en tiempo de ejecución de Service Fabric del clúster. Esta propiedad solo puede establecer el usuario cuando upgradeMode está establecido en "Manual". Para obtener una lista de las versiones disponibles de Service Fabric para los nuevos clústeres, use ClusterVersion API. Para obtener la lista de versiones disponibles para los clústeres existentes, use availableClusterVersions. cuerda
diagnosticsStorageAccountConfig Información de la cuenta de almacenamiento para almacenar registros de diagnóstico de Service Fabric. DiagnosticsStorageAccountConfig
enableHttpGatewayExclusiveAuthMode Si es true, no se permite la autenticación basada en tokens en httpGatewayEndpoint. Esto es necesario para admitir las versiones 1.3 y posteriores de TLS. Si se usa la autenticación basada en tokens, se debe definir HttpGatewayTokenAuthEndpointPort. Bool
eventStoreServiceEnabled Indica si el servicio de almacén de eventos está habilitado. Bool
fabricSettings Lista de opciones de tejido personalizadas para configurar el clúster. SettingsSectionDescription[]
infrastructureServiceManager Indica si el administrador de servicios de infraestructura está habilitado. Bool
managementEndpoint Punto de conexión de administración http del clúster. string (obligatorio)
nodeTypes Lista de tipos de nodo en el clúster. nodeTypeDescription[] (obligatorio)
notificaciones Indica una lista de canales de notificación para eventos de clúster. de notificación []
fiabilidadNivel El nivel de confiabilidad establece el tamaño del conjunto de réplicas de los servicios del sistema. Obtenga información sobre ReliabilityLevel.

- Ninguno: ejecute los servicios del sistema con un recuento de conjuntos de réplicas de destino de 1. Esto solo se debe usar para los clústeres de prueba.
- Bronze: ejecute los servicios del sistema con un recuento de conjuntos de réplicas de destino de 3. Esto solo se debe usar para los clústeres de prueba.
- Silver: ejecute los servicios del sistema con un recuento de conjuntos de réplicas de destino de 5.
- Gold: ejecute los servicios del sistema con un recuento de conjuntos de réplicas de destino de 7.
- Platinum: ejecute los servicios del sistema con un recuento de conjuntos de réplicas de destino de 9.
'Bronce'
'Oro'
'Ninguno'
'Platino'
'Plata'
reverseProxyCertificate El certificado de servidor usado por el proxy inverso. certificateDescription
reverseProxyCertificateCommonNames Describe una lista de certificados de servidor a los que hace referencia el nombre común que se usan para proteger el clúster. ServerCertificateCommonNames
sfZonalUpgradeMode Esta propiedad controla la agrupación lógica de máquinas virtuales en dominios de actualización (UD). Esta propiedad no puede modificarse si un tipo de nodo con múltiples Availability Zones ya está presente en el clúster. 'Jerárquico'
'Paralelo'
upgradeDescription Directiva que se va a usar al actualizar el clúster. ClusterUpgradePolicy
upgradeMode Modo de actualización del clúster cuando hay disponible una nueva versión en tiempo de ejecución de Service Fabric. 'Automático'
'Manual'
upgradePauseEndTimestampUtc Indica la fecha y hora de finalización para pausar las actualizaciones automáticas de la versión en tiempo de ejecución en el clúster durante un período de tiempo específico en el clúster (UTC). cuerda
upgradePauseStartTimestampUtc Indica la fecha y hora de inicio para pausar las actualizaciones automáticas de la versión en tiempo de ejecución en el clúster durante un período de tiempo específico en el clúster (UTC). cuerda
upgradeWave Indica cuándo se aplicarán nuevas actualizaciones de la versión en tiempo de ejecución del clúster después de su lanzamiento. De forma predeterminada, es Wave0. Solo se aplica cuando upgradeMode está establecido en "Automático". 'Ola0'
'Ola1'
'Ola2'
vmImage La imagen de máquina virtual VM VMSS se ha configurado con. Se pueden usar nombres genéricos como Windows o Linux. cuerda
vmssZonalUpgradeMode Esta propiedad define el modo de actualización para el conjunto de escalas de la máquina virtual; es obligatoria si se añade un tipo de nodo con múltiples Availability Zones. 'Jerárquico'
'Paralelo'
waveUpgradePaused Boolean para pausar las actualizaciones automáticas de la versión del entorno de ejecución en el clúster. Bool

ClusterUpgradeDeltaHealthPolicy

Nombre Descripción Valor
aplicaciónDeltaHealthPolicies Define el mapa de directivas de mantenimiento delta de la aplicación que se usa para evaluar el estado de una aplicación o de una de sus entidades secundarias al actualizar el clúster. ClusterUpgradeDeltaHealthPolicyApplicationDeltaHealthPolicies
maxPercentDeltaUnhealthyApplications Porcentaje máximo permitido de degradación del estado de las aplicaciones permitida durante las actualizaciones del clúster.
La diferencia se mide entre el estado de las aplicaciones al principio de la actualización y el estado de las aplicaciones en el momento de la evaluación de estado.
La comprobación se realiza después de cada finalización de actualización del dominio de actualización para asegurarse de que el estado global del clúster está dentro de los límites tolerados. Los servicios del sistema no se incluyen en esto.
Int

Restricciones:
Valor mínimo = 0
Valor máximo = 100 (obligatorio)
maxPercentDeltaUnhealthyNodes Porcentaje máximo permitido de degradación del estado de los nodos permitido durante las actualizaciones del clúster.
La diferencia se mide entre el estado de los nodos al principio de la actualización y el estado de los nodos en el momento de la evaluación de estado.
La comprobación se realiza después de cada finalización de actualización del dominio de actualización para asegurarse de que el estado global del clúster está dentro de los límites tolerados.
Int

Restricciones:
Valor mínimo = 0
Valor máximo = 100 (obligatorio)
maxPercentUpgradeDomainDeltaUnhealthyNodes El porcentaje máximo permitido de degradación del estado de los nodos de dominio de actualización permitido durante las actualizaciones del clúster.
La diferencia se mide entre el estado de los nodos de dominio de actualización al principio de la actualización y el estado de los nodos de dominio de actualización en el momento de la evaluación de estado.
La comprobación se realiza después de completar cada actualización de dominio de actualización para todos los dominios de actualización completados para asegurarse de que el estado de los dominios de actualización está dentro de los límites tolerados.
Int

Restricciones:
Valor mínimo = 0
Valor máximo = 100 (obligatorio)

ClusterUpgradeDeltaHealthPolicyApplicationDeltaHealthPolicies

Nombre Descripción Valor

ClusterUpgradePolicy

Nombre Descripción Valor
deltaHealthPolicy Directiva de mantenimiento delta del clúster que se usa al actualizar el clúster. clusterUpgradeDeltaHealthPolicy
forceRestart Si es true, los procesos se reinician con fuerza durante la actualización incluso cuando la versión del código no ha cambiado (la actualización solo cambia la configuración o los datos). Bool
healthCheckRetryTimeout Cantidad de tiempo para volver a intentar la evaluación del estado cuando la aplicación o el clúster no son correctos antes de revertir la actualización. El tiempo de espera puede estar en formato hh:mm:ss o en formato d.hh:mm:ss.ms. string (obligatorio)
healthCheckStableDuration La cantidad de tiempo que la aplicación o el clúster deben permanecer en buen estado antes de que la actualización continúe con el siguiente dominio de actualización. La duración puede estar en formato hh:mm:ss o en formato d.hh:mm:ss.ms. string (obligatorio)
healthCheckWaitDuration Período de tiempo que debe esperar después de completar un dominio de actualización antes de realizar comprobaciones de estado. La duración puede estar en formato hh:mm:ss o en formato d.hh:mm:ss.ms. string (obligatorio)
Política de salud Directiva de mantenimiento del clúster que se usa al actualizar el clúster. ClusterHealthPolicy (obligatorio)
upgradeDomainTimeout Cantidad de tiempo que cada dominio de actualización tiene que completarse antes de revertir la actualización. El tiempo de espera puede estar en formato hh:mm:ss o en formato d.hh:mm:ss.ms. string (obligatorio)
upgradeReplicaSetCheckTimeout Cantidad máxima de tiempo para bloquear el procesamiento de un dominio de actualización y evitar la pérdida de disponibilidad cuando hay problemas inesperados. Cuando expire este tiempo de espera, el procesamiento del dominio de actualización continuará independientemente de los problemas de pérdida de disponibilidad. El tiempo de espera se restablece al principio de cada dominio de actualización. El tiempo de espera puede estar en formato hh:mm:ss o en formato d.hh:mm:ss.ms. string (obligatorio)
upgradeTimeout La cantidad de tiempo que tiene que completarse la actualización general antes de revertir la actualización. El tiempo de espera puede estar en formato hh:mm:ss o en formato d.hh:mm:ss.ms. string (obligatorio)

DiagnosticsStorageAccountConfig

Nombre Descripción Valor
blobEndpoint Punto de conexión de blob de la cuenta de azure Storage. string (obligatorio)
protectedAccountKeyName Nombre de clave de almacenamiento de diagnósticos protegido. string (obligatorio)
protectedAccountKeyName2 Nombre de la clave de almacenamiento de diagnóstico protegida secundaria. Si se rota una de las claves de la cuenta de almacenamiento, el clúster se revertirá al uso de la otra. cuerda
queueEndpoint Punto de conexión de cola de la cuenta de azure Storage. string (obligatorio)
storageAccountName El nombre de la cuenta de almacenamiento de Azure. string (obligatorio)
tableEndpoint Punto de conexión de tabla de la cuenta de azure Storage. string (obligatorio)

EndpointRangeDescription

Nombre Descripción Valor
endPort Puerto final de un intervalo de puertos int (obligatorio)
startPort Puerto inicial de un intervalo de puertos int (obligatorio)

NodeTypeDescription

Nombre Descripción Valor
applicationPorts Intervalo de puertos desde los que el clúster asignó el puerto a las aplicaciones de Service Fabric. endpointRangeDescription de
Capacidades Las etiquetas de capacidad aplicadas a los nodos del tipo de nodo, el administrador de recursos de clúster usa estas etiquetas para comprender la cantidad de recursos que tiene un nodo. nodeTypeDescriptionCapacities
clientConnectionEndpointPort Puerto de punto de conexión de administración de clústeres TCP. int (obligatorio)
nivelDeDurabilidad Nivel de durabilidad del tipo de nodo. Obtenga información sobre DurabilityLevel.

- Bronce - Sin privilegios. Este es el valor predeterminado.
- Silver: los trabajos de infraestructura se pueden pausar durante un período de 10 minutos por UD.
- Gold: los trabajos de infraestructura se pueden pausar durante una duración de 2 horas por UD. La durabilidad Gold solo se puede habilitar en Sku de máquina virtual de nodo completo, como D15_V2, G5, etc.
'Bronce'
'Oro'
'Plata'
ephemeralPorts El intervalo de puertos efímeros con los que deben configurarse los nodos de este tipo de nodo. endpointRangeDescription de
httpGatewayEndpointPort Puerto de punto de conexión de administración de clústerES HTTP. int (obligatorio)
httpGatewayTokenAuthEndpointPort Puerto que se usa para las conexiones HTTPS basadas en token al clúster. No se puede establecer en el mismo puerto que HttpGatewayEndpoint. Int
isPrimario Tipo de nodo en el que se ejecutarán los servicios del sistema. Solo se debe marcar un tipo de nodo como principal. El tipo de nodo principal no se puede eliminar ni cambiar para los clústeres existentes. bool (obligatorio)
isStateless Indica si el tipo de nodo solo puede hospedar cargas de trabajo sin estado. Bool
multipleAvailabilityZones Indica si el tipo de nodo está habilitado para admitir varias zonas. Bool
nombre Nombre del tipo de nodo. string (obligatorio)
placementProperties Las etiquetas de selección de ubicación aplicadas a los nodos del tipo de nodo, que se pueden usar para indicar dónde deben ejecutarse determinados servicios (carga de trabajo). NodeTypeDescriptionPlacementProperties
reverseProxyEndpointPort Punto de conexión utilizado por el proxy inverso. Int
vmInstanceCount VMInstanceCount debe ser de 1 a n, donde n indica el número de instancias de máquina virtual correspondientes a este nodeType. VMInstanceCount = 0 solo se puede realizar en estos escenarios: NodeType es un nodeType secundario. Durabilidad = Bronce o Durabilidad >= Bronze e InfrastructureServiceManager = true. Si VMInstanceCount = 0, implica que las máquinas virtuales de este nodeType no se usarán para el cálculo inicial del tamaño del clúster. Int

Restricciones:
Valor mínimo = 0
Valor máximo = 2147483647 (obligatorio)

NodeTypeDescriptionCapacidades

Nombre Descripción Valor

NodeTypeDescriptionPlacementProperties

Nombre Descripción Valor

Notificación

Nombre Descripción Valor
isEnabled Indica si la notificación está habilitada. bool (obligatorio)
notificationCategory Categoría de notificación. 'WaveProgress' (obligatorio)
notificationLevel Nivel de notificación. "Todo"
'Crítico' (obligatorio)
notificationTargets Lista de destinos que se suscriben a la notificación. NotificationTarget[] (obligatorio)

NotificationTarget

Nombre Descripción Valor
notificationChannel El canal de notificación indica el tipo de receptores suscritos a la notificación, ya sea usuario o suscripción. "EmailSubscription"
'EmailUser' (obligatorio)
Receptores Lista de destinos que se suscriben a la notificación. string[] (obligatorio)

ServerCertificateCommonName

Nombre Descripción Valor
certificateCommonName Nombre común del certificado de servidor. string (obligatorio)
certificateIssuerThumbprint Huella digital del emisor del certificado de servidor. string (obligatorio)

ServerCertificateCommonNames

Nombre Descripción Valor
Nombres comunes Lista de certificados de servidor a los que se hace referencia por nombre común que se usan para proteger el clúster. ServerCertificateCommonName[]
x509StoreName Ubicación del almacén de certificados local. 'Libreta de direcciones'
'AuthRoot'
"CertificateAuthority"
'No permitido'
"Mi"
'Raíz'
'Gente de confianza'
"TrustedPublisher"

ServiceTypeDeltaHealthPolicy

Nombre Descripción Valor
maxPercentDeltaUnhealthyServices Porcentaje máximo permitido de degradación del estado de los servicios permitido durante las actualizaciones del clúster.
La diferencia se mide entre el estado de los servicios al principio de la actualización y el estado de los servicios en el momento de la evaluación de estado.
La comprobación se realiza después de cada finalización de actualización del dominio de actualización para asegurarse de que el estado global del clúster está dentro de los límites tolerados.
Int

Restricciones:
Valor mínimo = 0
Valor máximo = 100

ServiceTypeHealthPolicy

Nombre Descripción Valor
maxPercentUnhealthyServices El porcentaje máximo de servicios permitidos para ser incorrectos antes de que la aplicación se considere en error. Int

Restricciones:
Valor mínimo = 0
Valor máximo = 100

SettingsParameterDescription

Nombre Descripción Valor
nombre Nombre del parámetro de la configuración del tejido. string (obligatorio)
valor Valor de parámetro de la configuración del tejido. string (obligatorio)

SettingsSectionDescription

Nombre Descripción Valor
nombre Nombre de sección de la configuración del tejido. string (obligatorio)
Parámetros Colección de parámetros de la sección . SettingsParameterDescription[] (obligatorio)

TrackedResourceTags

Nombre Descripción Valor

Ejemplos de uso

Ejemplos de Terraform

Ejemplo básico de implementación de clústeres de Service Fabric.

terraform {
  required_providers {
    azapi = {
      source = "Azure/azapi"
    }
  }
}

provider "azapi" {
  skip_provider_registration = false
}

variable "resource_name" {
  type    = string
  default = "acctest0001"
}

variable "location" {
  type    = string
  default = "westeurope"
}

resource "azapi_resource" "resourceGroup" {
  type     = "Microsoft.Resources/resourceGroups@2020-06-01"
  name     = var.resource_name
  location = var.location
}

resource "azapi_resource" "cluster" {
  type      = "Microsoft.ServiceFabric/clusters@2021-06-01"
  parent_id = azapi_resource.resourceGroup.id
  name      = var.resource_name
  location  = var.location
  body = {
    properties = {
      addOnFeatures = [
      ]
      fabricSettings = [
      ]
      managementEndpoint = "http://example:80"
      nodeTypes = [
        {
          capacities = {
          }
          clientConnectionEndpointPort = 2020
          durabilityLevel              = "Bronze"
          httpGatewayEndpointPort      = 80
          isPrimary                    = true
          isStateless                  = false
          multipleAvailabilityZones    = false
          name                         = "first"
          placementProperties = {
          }
          vmInstanceCount = 3
        },
      ]
      reliabilityLevel = "Bronze"
      upgradeMode      = "Automatic"
      vmImage          = "Windows"
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}