Share via


Clusters Microsoft.ServiceFabric 2019-11-01-preview

Definição de recurso do Bicep

O tipo de recurso de clusters pode ser implementado com operações que visam:

Para obter uma lista de propriedades alteradas em cada versão da API, veja registo de alterações.

Formato do recurso

Para criar um recurso Microsoft.ServiceFabric/clusters, adicione o seguinte Bicep ao seu modelo.

resource symbolicname 'Microsoft.ServiceFabric/clusters@2019-11-01-preview' = {
  name: 'string'
  location: 'string'
  tags: {
    tagName1: 'tagValue1'
    tagName2: 'tagValue2'
  }
  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'
    }
    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'
  }
}

Valores de propriedade

clusters

Nome Descrição Valor
name O nome do recurso cadeia (obrigatório)

Limite de carateres: 4-23

Carateres válidos:
Letras minúsculas, números e hífenes.

Comece com letras minúsculas. Termine com letra ou número em minúsculas.
localização Localização dos recursos do Azure. cadeia (obrigatório)
etiquetas Etiquetas de recursos do Azure. Dicionário de nomes e valores de etiquetas. Ver Etiquetas em modelos
propriedades As propriedades do recurso do cluster ClusterProperties

ClusterProperties

Nome Descrição Valor
addOnFeatures A lista de funcionalidades de suplementos a ativar no cluster. Matriz de cadeias que contém qualquer um dos seguintes:
"BackupRestoreService"
"DnsService"
"RepairManager"
"ResourceMonitorService"
applicationTypeVersionsCleanupPolicy A política utilizada para limpar versões não utilizadas. ApplicationTypeVersionsCleanupPolicy
azureActiveDirectory As definições de autenticação do AAD do cluster. AzureActiveDirectory
certificado O certificado a utilizar para proteger o cluster. O certificado fornecido será utilizado para a segurança do nó no nó no cluster, o certificado SSL para o ponto final de gestão do cluster e o cliente de administração predefinido. CertificateDescription
certificateCommonNames Descreve uma lista de certificados de servidor referenciados pelo nome comum que são utilizados para proteger o cluster. ServerCertificateCommonNames
clientCertificateCommonNames A lista de certificados de cliente referenciados pelo nome comum que têm permissão para gerir o cluster. ClientCertificateCommonName[]
clientCertificateThumbprints A lista de certificados de cliente referenciados por thumbprint que têm permissão para gerir o cluster. ClientCertificateThumbprint[]
clusterCodeVersion A versão de runtime do Service Fabric do cluster. Esta propriedade só pode definir o utilizador quando upgradeMode está definido como "Manual". Para obter uma lista das versões disponíveis do Service Fabric para novos clusters, utilize a API ClusterVersion. Para obter a lista de versões disponíveis para clusters existentes, utilize availableClusterVersions. string
diagnosticsStorageAccountConfig As informações da conta de armazenamento para armazenar registos de diagnóstico do Service Fabric. DiagnosticsStorageAccountConfig
eventStoreServiceEnabled Indica se o serviço de arquivo de eventos está ativado. bool
recursos de infraestruturaDefinições A lista de definições de recursos de infraestrutura personalizados para configurar o cluster. SettingsSectionDescription[]
managementEndpoint O ponto final de gestão http do cluster. cadeia (obrigatório)
nodeTypes A lista de tipos de nós no cluster. NodeTypeDescription[] (obrigatório)
fiabilidadeLevel O nível de fiabilidade define o tamanho do conjunto de réplicas dos serviços do sistema. Saiba mais sobre a FiabilidadeLevel.

- Nenhum - Execute os serviços do Sistema com uma contagem de conjuntos de réplicas de destino de 1. Esta ação só deve ser utilizada para clusters de teste.
- Bronze - Execute os serviços do Sistema com uma contagem de 3 conjuntos de réplicas de destino. Esta ação só deve ser utilizada para clusters de teste.
- Prata – execute os serviços do Sistema com uma contagem de 5 conjuntos de réplicas de destino.
- Gold - Execute os serviços do Sistema com uma contagem de conjuntos de réplicas de destino de 7.
- Platinum – execute os serviços do Sistema com uma contagem de 9 conjuntos de réplicas de destino.
'Bronze'
'Gold'
"Nenhum"
'Platinum'
'Prata'
reverseProxyCertificate O certificado de servidor utilizado pelo proxy inverso. CertificateDescription
reverseProxyCertificateCommonNames Descreve uma lista de certificados de servidor referenciados pelo nome comum que são utilizados para proteger o cluster. ServerCertificateCommonNames
upgradeDescription A política a utilizar ao atualizar o cluster. ClusterUpgradePolicy
upgradeMode O modo de atualização do cluster quando está disponível a nova versão de runtime do Service Fabric.

- Automático - O cluster será atualizado automaticamente para a versão de runtime mais recente do Service Fabric assim que estiver disponível.
- Manual – o cluster não será atualizado automaticamente para a versão de runtime mais recente do Service Fabric. O cluster é atualizado ao definir a propriedade clusterCodeVersion no recurso do cluster.
"Automático"
"Manual"
vmImage A VMSS da imagem de VM foi configurada com. Podem ser utilizados nomes genéricos, como Windows ou Linux. string

ApplicationTypeVersionsCleanupPolicy

Nome Descrição Valor
maxUnusedVersionsToKeep Número de versões não utilizadas por tipo de aplicação a manter. int (obrigatório)

Restrições:
Valor mínimo = 0

AzureActiveDirectory

Nome Descrição Valor
clientApplication ID da aplicação cliente do Azure Active Directory. string
clusterApplication ID da aplicação do cluster do Azure Active Directory. string
tenantId ID do inquilino do Azure Active Directory. string

CertificateDescription

Nome Descrição Valor
thumbprint Thumbprint do certificado primário. cadeia (obrigatório)
thumbprintSecondary Thumbprint do certificado secundário. string
x509StoreName A localização do arquivo de certificados local. "AddressBook"
'AuthRoot'
"CertificateAuthority"
"Não permitido"
'O Meu'
"Raiz"
"TrustedPeople"
"TrustedPublisher"

ServerCertificateCommonNames

Nome Descrição Valor
commonNames A lista de certificados de servidor referenciados pelo nome comum que são utilizados para proteger o cluster. ServerCertificateCommonName[]
x509StoreName A localização do arquivo de certificados local. "AddressBook"
'AuthRoot'
"CertificateAuthority"
"Não permitido"
'O Meu'
"Raiz"
"TrustedPeople"
"TrustedPublisher"

ServerCertificateCommonName

Nome Descrição Valor
certificateCommonName O nome comum do certificado de servidor. cadeia (obrigatório)
certificateIssuerThumbprint O thumbprint do emissor do certificado do servidor. cadeia (obrigatório)

ClientCertificateCommonName

Nome Descrição Valor
certificateCommonName O nome comum do certificado de cliente. cadeia (obrigatório)
certificateIssuerThumbprint O thumbprint do emissor do certificado de cliente. cadeia (obrigatório)
isAdmin Indica se o certificado de cliente tem acesso de administrador ao cluster. Os clientes não administradores só podem realizar operações só de leitura no cluster. bool (obrigatório)

ClientCertificateThumbprint

Nome Descrição Valor
certificateThumbprint O thumbprint do certificado de cliente. cadeia (obrigatório)
isAdmin Indica se o certificado de cliente tem acesso de administrador ao cluster. Os clientes não administradores só podem realizar operações só de leitura no cluster. bool (obrigatório)

DiagnosticsStorageAccountConfig

Nome Descrição Valor
blobEndpoint O ponto final do blob da conta de armazenamento do Azure. cadeia (obrigatório)
protectedAccountKeyName O nome da chave de armazenamento de diagnóstico protegido. cadeia (obrigatório)
protectedAccountKeyName2 O nome da chave de armazenamento de diagnóstico protegida secundária. Se uma das chaves da conta de armazenamento for rodada, o cluster reverterá para a utilização da outra. string
queueEndpoint O ponto final da fila da conta de armazenamento do Azure. cadeia (obrigatório)
storageAccountName O nome da conta de armazenamento do Azure. cadeia (obrigatório)
tableEndpoint O ponto final da tabela da conta de armazenamento do Azure. cadeia (obrigatório)

SettingsSectionDescription

Nome Descrição Valor
name O nome da secção das definições de recursos de infraestrutura. cadeia (obrigatório)
parâmetros A coleção de parâmetros na secção . SettingsParameterDescription[] (obrigatório)

DefiniçõesParameterDescription

Nome Descrição Valor
name O nome do parâmetro da definição de recursos de infraestrutura. cadeia (obrigatório)
valor O valor do parâmetro da definição de recursos de infraestrutura. cadeia (obrigatório)

NodeTypeDescription

Nome Descrição Valor
applicationPorts O intervalo de portas a partir das quais o cluster atribuiu a porta às aplicações do Service Fabric. EndpointRangeDescription
capacidades As etiquetas de capacidade aplicadas aos nós no tipo de nó, o gestor de recursos do cluster utiliza estas etiquetas para compreender a quantidade de recursos que um nó tem. NodeTypeDescriptionCapacities
clientConnectionEndpointPort A porta de ponto final de gestão do cluster TCP. int (obrigatório)
durabilityLevel O nível de durabilidade do tipo de nó. Saiba mais sobre DurabilityLevel.

- Bronze - Sem privilégios. Esta é a predefinição.
- Prata - As tarefas de infraestrutura podem ser colocadas em pausa durante 10 minutos por UD.
- Ouro - As tarefas de infraestrutura podem ser colocadas em pausa durante 2 horas por UD. A durabilidade gold só pode ser ativada em skUs de VM de nó completos, como D15_V2, G5, etc.
'Bronze'
'Gold'
'Prata'
efémerosPorts O intervalo de portas efémeras com que os nós neste tipo de nó devem ser configurados. EndpointRangeDescription
httpGatewayEndpointPort A porta de ponto final de gestão do cluster HTTP. int (obrigatório)
isPrimary O tipo de nó no qual os serviços de sistema serão executados. Apenas um tipo de nó deve ser marcado como primário. Não é possível eliminar ou alterar o tipo de nó principal para clusters existentes. bool (obrigatório)
name O nome do tipo de nó. cadeia (obrigatório)
placementProperties As etiquetas de colocação aplicadas aos nós no tipo de nó, que podem ser utilizadas para indicar onde determinados serviços (carga de trabalho) devem ser executados. NodeTypeDescriptionPlacementProperties
reverseProxyEndpointPort O ponto final utilizado pelo proxy inverso. int
vmInstanceCount O número de nós no tipo de nó. Esta contagem deve corresponder à propriedade de capacidade no recurso VirtualMachineScaleSet correspondente. int (obrigatório)

Restrições:
Valor mínimo = 1
Valor máximo = 2147483647

EndpointRangeDescription

Nome Descrição Valor
endPort Porta de fim de um intervalo de portas int (obrigatório)
startPort Porta inicial de um intervalo de portas int (obrigatório)

NodeTypeDescriptionCapacities

Nome Descrição Valor
{customized property} string

NodeTypeDescriptionPlacementProperties

Nome Descrição Valor
{customized property} string

ClusterUpgradePolicy

Nome Descrição Valor
deltaHealthPolicy A política de estado de funcionamento delta do cluster utilizada ao atualizar o cluster. ClusterUpgradeDeltaHealthPolicy
forceRestart Se for verdadeiro, os processos são reiniciados com força durante a atualização, mesmo quando a versão do código não foi alterada (a atualização só altera a configuração ou os dados). bool
healthCheckRetryTimeout A quantidade de tempo para repetir a avaliação do estado de funcionamento quando a aplicação ou o cluster está em mau estado de funcionamento antes da atualização ser revertida. O tempo limite pode estar no formato hh:mm:ss ou no formato d.hh:mm:ss.ms. cadeia (obrigatório)
healthCheckStableDuration O período de tempo durante o qual a aplicação ou cluster tem de permanecer em bom estado de funcionamento antes de a atualização avançar para o domínio de atualização seguinte. A duração pode estar no formato hh:mm:ss ou no formato d.hh:mm:ss.ms. cadeia (obrigatório)
healthCheckWaitDuration O período de tempo a aguardar depois de concluir um domínio de atualização antes de efetuar verificações de estado de funcionamento. A duração pode estar no formato hh:mm:ss ou no formato d.hh:mm:ss.ms. cadeia (obrigatório)
healthPolicy A política de estado de funcionamento do cluster utilizada ao atualizar o cluster. ClusterHealthPolicy (obrigatório)
upgradeDomainTimeout A quantidade de tempo que cada domínio de atualização tem de ser concluído antes de a atualização ser revertida. O tempo limite pode estar no formato hh:mm:ss ou no formato d.hh:mm:ss.ms. cadeia (obrigatório)
upgradeReplicaSetCheckTimeout A quantidade máxima de tempo para bloquear o processamento de um domínio de atualização e evitar a perda de disponibilidade quando existem problemas inesperados. Quando este tempo limite expirar, o processamento do domínio de atualização irá prosseguir independentemente dos problemas de perda de disponibilidade. O tempo limite é reposto no início de cada domínio de atualização. O tempo limite pode estar no formato hh:mm:ss ou no formato d.hh:mm:ss.ms. cadeia (obrigatório)
upgradeTimeout A quantidade de tempo que a atualização geral tem de ser concluída antes de a atualização ser revertida. O tempo limite pode estar no formato hh:mm:ss ou no formato d.hh:mm:ss.ms. cadeia (obrigatório)

ClusterUpgradeDeltaHealthPolicy

Nome Descrição Valor
applicationDeltaHealthPolicies Define o mapa da política de estado de funcionamento delta da aplicação utilizado para avaliar o estado de funcionamento de uma aplicação ou de uma das entidades subordinadas ao atualizar o cluster. ApplicationDeltaHealthPolicyMap
maxPercentDeltaUnhealthyApplications A percentagem máxima permitida de degradação do estado de funcionamento das aplicações permitida durante as atualizações do cluster.
O delta é medido entre o estado das aplicações no início da atualização e o estado das aplicações no momento da avaliação do estado de funcionamento.
A verificação é efetuada após cada conclusão de atualização de domínio de atualização para garantir que o estado global do cluster está dentro dos limites tolerados. Os serviços de sistema não estão incluídos neste.
int (obrigatório)

Restrições:
Valor mínimo = 0
Valor máximo = 100
maxPercentDeltaUnhealthyNodes A percentagem máxima permitida de degradação do estado de funcionamento dos nós permitida durante as atualizações do cluster.
O delta é medido entre o estado dos nós no início da atualização e o estado dos nós no momento da avaliação do estado de funcionamento.
A verificação é efetuada após cada conclusão de atualização de domínio de atualização para garantir que o estado global do cluster está dentro dos limites tolerados.
int (obrigatório)

Restrições:
Valor mínimo = 0
Valor máximo = 100
maxPercentUpgradeDomainDeltaUnhealthyNodes A percentagem máxima permitida de degradação do estado de funcionamento dos nós de domínio de atualização permitida durante as atualizações do cluster.
O delta é medido entre o estado dos nós de domínio de atualização no início da atualização e o estado dos nós de domínio de atualização no momento da avaliação do estado de funcionamento.
A verificação é efetuada após cada conclusão de atualização de domínio de atualização para todos os domínios de atualização concluídos para garantir que o estado dos domínios de atualização está dentro dos limites tolerados.
int (obrigatório)

Restrições:
Valor mínimo = 0
Valor máximo = 100

ApplicationDeltaHealthPolicyMap

Nome Descrição Valor
{customized property} ApplicationDeltaHealthPolicy

ApplicationDeltaHealthPolicy

Nome Descrição Valor
defaultServiceTypeDeltaHealthPolicy A política de estado de funcionamento delta utilizada por predefinição para avaliar o estado de funcionamento de um tipo de serviço ao atualizar o cluster. ServiceTypeDeltaHealthPolicy
serviceTypeDeltaHealthPolicies O mapa com o tipo de serviço delta política de estado de funcionamento por nome do tipo de serviço. O mapa está vazio por predefinição. ServiceTypeDeltaHealthPolicyMap

ServiceTypeDeltaHealthPolicy

Nome Descrição Valor
maxPercentDeltaUnhealthyServices A percentagem máxima permitida de degradação do estado de funcionamento dos serviços permitida durante as atualizações do cluster.
O delta é medido entre o estado dos serviços no início da atualização e o estado dos serviços no momento da avaliação do estado de funcionamento.
A verificação é efetuada após cada conclusão de atualização de domínio de atualização para garantir que o estado global do cluster está dentro dos limites tolerados.
int

Restrições:
Valor mínimo = 0
Valor máximo = 100

ServiceTypeDeltaHealthPolicyMap

Nome Descrição Valor
{customized property} ServiceTypeDeltaHealthPolicy

ClusterHealthPolicy

Nome Descrição Valor
applicationHealthPolicies Define o mapa da política de estado de funcionamento da aplicação utilizado para avaliar o estado de funcionamento de uma aplicação ou de uma das entidades subordinadas. ApplicationHealthPolicyMap
maxPercentUnhealthyApplications A percentagem máxima permitida de aplicações em mau estado de funcionamento antes de comunicar um erro. Por exemplo, para permitir que 10% das aplicações estejam em mau estado de funcionamento, este valor seria 10.

A percentagem representa a percentagem máxima tolerada de aplicações que podem estar em mau estado de funcionamento antes de o cluster ser considerado como erro.
Se a percentagem for respeitada, mas existir pelo menos uma aplicação em mau estado de funcionamento, o estado de funcionamento é avaliado como Aviso.
Isto é calculado ao dividir o número de aplicações em mau estado de funcionamento em relação ao número total de instâncias de aplicação no cluster, excluindo aplicações de tipos de aplicações que estão incluídas no ApplicationTypeHealthPolicyMap.
O cálculo arredonda para tolerar uma falha num pequeno número de aplicações. A percentagem predefinida é zero.
int

Restrições:
Valor mínimo = 0
Valor máximo = 100
maxPercentUnhealthyNodes A percentagem máxima permitida de nós em mau estado de funcionamento antes de comunicar um erro. Por exemplo, para permitir que 10% dos nós estejam em mau estado de funcionamento, este valor seria 10.

A percentagem representa a percentagem máxima tolerada de nós que podem estar em mau estado de funcionamento antes de o cluster ser considerado como erro.
Se a percentagem for respeitada, mas existir pelo menos um nó em mau estado de funcionamento, o estado de funcionamento é avaliado como Aviso.
A percentagem é calculada ao dividir o número de nós em mau estado de funcionamento em relação ao número total de nós no cluster.
O cálculo arredonda para tolerar uma falha num pequeno número de nós. A percentagem predefinida é zero.

Em clusters grandes, alguns nós estarão sempre inativos ou sem reparações, pelo que esta percentagem deve ser configurada para tolerar isso.
int

Restrições:
Valor mínimo = 0
Valor máximo = 100

ApplicationHealthPolicyMap

Nome Descrição Valor
{customized property} ApplicationHealthPolicy

ApplicationHealthPolicy

Nome Descrição Valor
defaultServiceTypeHealthPolicy A política de estado de funcionamento utilizada por predefinição para avaliar o estado de funcionamento de um tipo de serviço. ServiceTypeHealthPolicy
serviceTypeHealthPolicies O mapa com o tipo de serviço política de estado de funcionamento por nome do tipo de serviço. O mapa está vazio por predefinição. ServiceTypeHealthPolicyMap

ServiceTypeHealthPolicy

Nome Descrição Valor
maxPercentUnhealthyServices A percentagem máxima de serviços autorizados a estar em mau estado de funcionamento antes de a sua aplicação ser considerada como erro. int

Restrições:
Valor mínimo = 0
Valor máximo = 100

ServiceTypeHealthPolicyMap

Nome Descrição Valor
{customized property} ServiceTypeHealthPolicy

Modelos de início rápido

Os seguintes modelos de início rápido implementam este tipo de recurso.

Modelo Description
Implementar um Cluster do Service Fabric do Ubuntu de 5 Nós

Implementar no Azure
Este modelo permite-lhe implementar um Cluster do Service Fabric de 5 nós seguro com o Ubuntu num VMSS de Tamanho Standard_D2_V2.
Implementar um Cluster Seguro de 5 Nós

Implementar no Azure
Este modelo permite-lhe implementar um Cluster do Service Fabric de 5 nós seguro com o Windows Server 2019 Datacenter num VMSS de Tamanho Standard_D2_v2.
Implementar um Cluster Seguro de 3 Nós com NSGs ativados

Implementar no Azure
Este modelo permite-lhe implementar um Cluster de Recursos de Infraestrutura de Serviço de 3 nós seguro com o Datacenter do Windows Server 2016 numa VM de Tamanho Standard_D2. Utilizar este modelo permite-lhe controlar o tráfego de rede de entrada e saída através de Grupos de Segurança de Rede.

Definição de recurso do modelo arm

O tipo de recurso dos clusters pode ser implementado com operações que visam:

Para obter uma lista das propriedades alteradas em cada versão da API, veja Registo de alterações.

Formato do recurso

Para criar um recurso Microsoft.ServiceFabric/clusters, adicione o seguinte JSON ao seu modelo.

{
  "type": "Microsoft.ServiceFabric/clusters",
  "apiVersion": "2019-11-01-preview",
  "name": "string",
  "location": "string",
  "tags": {
    "tagName1": "tagValue1",
    "tagName2": "tagValue2"
  },
  "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"
    },
    "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"
  }
}

Valores de propriedade

clusters

Nome Descrição Valor
tipo O tipo de recurso "Microsoft.ServiceFabric/clusters"
apiVersion A versão da API de recursos '2019-11-01-preview'
name O nome do recurso cadeia (obrigatório)

Limite de carateres: 4-23

Carateres válidos:
Letras minúsculas, números e hífenes.

Comece com letras minúsculas. Termine com letra minúscula ou número.
localização Localização dos recursos do Azure. cadeia (obrigatório)
etiquetas Etiquetas de recursos do Azure. Dicionário de nomes e valores de etiquetas. Ver Etiquetas em modelos
propriedades As propriedades do recurso do cluster ClusterProperties

ClusterProperties

Nome Descrição Valor
addOnFeatures A lista de funcionalidades de suplemento a ativar no cluster. Matriz de cadeia que contém qualquer um dos seguintes:
"BackupRestoreService"
"DnsService"
"RepairManager"
"ResourceMonitorService"
applicationTypeVersionsCleanupPolicy A política utilizada para limpar versões não utilizadas. ApplicationTypeVersionsCleanupPolicy
azureActiveDirectory As definições de autenticação do AAD do cluster. AzureActiveDirectory
certificado O certificado a utilizar para proteger o cluster. O certificado fornecido será utilizado para a segurança do nó no nó no cluster, o certificado SSL para o ponto final de gestão do cluster e o cliente de administração predefinido. CertificateDescription
certificateCommonNames Descreve uma lista de certificados de servidor referenciados pelo nome comum que são utilizados para proteger o cluster. ServerCertificateCommonNames
clientCertificateCommonNames A lista de certificados de cliente referenciados pelo nome comum que têm permissão para gerir o cluster. ClientCertificateCommonName[]
clientCertificateThumbprints A lista de certificados de cliente referenciados pelo thumbprint que têm permissão para gerir o cluster. ClientCertificateThumbprint[]
clusterCodeVersion A versão de runtime do Service Fabric do cluster. Esta propriedade só pode ser definida pelo utilizador quando upgradeMode está definido como "Manual". Para obter uma lista das versões disponíveis do Service Fabric para novos clusters, utilize a API ClusterVersion. Para obter a lista de versões disponíveis para clusters existentes, utilize availableClusterVersions. string
diagnosticsStorageAccountConfig As informações da conta de armazenamento para armazenar registos de diagnóstico do Service Fabric. DiagnosticsStorageAccountConfig
eventStoreServiceEnabled Indica se o serviço de arquivo de eventos está ativado. bool
recursos de infraestruturaDefinições A lista de definições de recursos de infraestrutura personalizados para configurar o cluster. SettingsSectionDescription[]
managementEndpoint O ponto final de gestão http do cluster. cadeia (obrigatório)
nodeTypes A lista de tipos de nós no cluster. NodeTypeDescription[] (obrigatório)
fiabilidadeLevel O nível de fiabilidade define o tamanho do conjunto de réplicas dos serviços do sistema. Saiba mais sobre a FiabilidadeLevel.

- Nenhum - Execute os serviços do Sistema com uma contagem de conjuntos de réplicas de destino de 1. Esta ação só deve ser utilizada para clusters de teste.
- Bronze - Execute os serviços do Sistema com uma contagem de 3 conjuntos de réplicas de destino. Esta ação só deve ser utilizada para clusters de teste.
- Prata – execute os serviços do Sistema com uma contagem de 5 conjuntos de réplicas de destino.
- Gold - Execute os serviços do Sistema com uma contagem de conjuntos de réplicas de destino de 7.
- Platinum – execute os serviços do Sistema com uma contagem de 9 conjuntos de réplicas de destino.
'Bronze'
'Gold'
"Nenhum"
'Platinum'
'Prata'
reverseProxyCertificate O certificado de servidor utilizado pelo proxy inverso. CertificateDescription
reverseProxyCertificateCommonNames Descreve uma lista de certificados de servidor referenciados pelo nome comum que são utilizados para proteger o cluster. ServerCertificateCommonNames
upgradeDescription A política a utilizar ao atualizar o cluster. ClusterUpgradePolicy
upgradeMode O modo de atualização do cluster quando está disponível a nova versão de runtime do Service Fabric.

- Automático - O cluster será atualizado automaticamente para a versão de runtime mais recente do Service Fabric assim que estiver disponível.
- Manual – o cluster não será atualizado automaticamente para a versão de runtime mais recente do Service Fabric. O cluster é atualizado ao definir a propriedade clusterCodeVersion no recurso do cluster.
"Automático"
"Manual"
vmImage A VMSS da imagem de VM foi configurada com. Podem ser utilizados nomes genéricos, como Windows ou Linux. string

ApplicationTypeVersionsCleanupPolicy

Nome Descrição Valor
maxUnusedVersionsToKeep Número de versões não utilizadas por tipo de aplicação a manter. int (obrigatório)

Restrições:
Valor mínimo = 0

AzureActiveDirectory

Nome Descrição Valor
clientApplication ID da aplicação cliente do Azure Active Directory. string
clusterApplication ID da aplicação do cluster do Azure Active Directory. string
tenantId ID do inquilino do Azure Active Directory. string

CertificateDescription

Nome Descrição Valor
thumbprint Thumbprint do certificado primário. cadeia (obrigatório)
thumbprintSecondary Thumbprint do certificado secundário. string
x509StoreName A localização do arquivo de certificados local. "AddressBook"
'AuthRoot'
"CertificateAuthority"
"Não permitido"
'O Meu'
"Raiz"
"TrustedPeople"
"TrustedPublisher"

ServerCertificateCommonNames

Nome Descrição Valor
commonNames A lista de certificados de servidor referenciados pelo nome comum que são utilizados para proteger o cluster. ServerCertificateCommonName[]
x509StoreName A localização do arquivo de certificados local. "AddressBook"
'AuthRoot'
"CertificateAuthority"
"Não permitido"
'O Meu'
"Raiz"
"TrustedPeople"
"TrustedPublisher"

ServerCertificateCommonName

Nome Descrição Valor
certificateCommonName O nome comum do certificado de servidor. cadeia (obrigatório)
certificateIssuerThumbprint O thumbprint do emissor do certificado do servidor. cadeia (obrigatório)

ClientCertificateCommonName

Nome Descrição Valor
certificateCommonName O nome comum do certificado de cliente. cadeia (obrigatório)
certificateIssuerThumbprint O thumbprint do emissor do certificado de cliente. cadeia (obrigatório)
isAdmin Indica se o certificado de cliente tem acesso de administrador ao cluster. Os clientes não administradores só podem realizar operações só de leitura no cluster. bool (obrigatório)

ClientCertificateThumbprint

Nome Descrição Valor
certificateThumbprint O thumbprint do certificado de cliente. cadeia (obrigatório)
isAdmin Indica se o certificado de cliente tem acesso de administrador ao cluster. Os clientes não administradores só podem realizar operações só de leitura no cluster. bool (obrigatório)

DiagnosticsStorageAccountConfig

Nome Descrição Valor
blobEndpoint O ponto final do blob da conta de armazenamento do Azure. cadeia (obrigatório)
protectedAccountKeyName O nome da chave de armazenamento de diagnóstico protegido. cadeia (obrigatório)
protectedAccountKeyName2 O nome da chave de armazenamento de diagnósticos protegido secundário. Se uma das chaves da conta de armazenamento for rodada, o cluster reverterá para a utilização da outra. string
queueEndpoint O ponto final da fila da conta de armazenamento do Azure. cadeia (obrigatório)
storageAccountName O nome da conta de armazenamento do Azure. cadeia (obrigatório)
tableEndpoint O ponto final da tabela da conta de armazenamento do Azure. cadeia (obrigatório)

SettingsSectionDescription

Nome Descrição Valor
name O nome da secção das definições de recursos de infraestrutura. cadeia (obrigatório)
parâmetros A coleção de parâmetros na secção. SettingsParameterDescription[] (obrigatório)

DefiniçõesParameterDescription

Nome Descrição Valor
name O nome do parâmetro da definição de recursos de infraestrutura. cadeia (obrigatório)
valor O valor do parâmetro da definição de recursos de infraestrutura. cadeia (obrigatório)

NodeTypeDescription

Nome Descrição Valor
applicationPorts O intervalo de portas a partir do qual o cluster atribuiu a porta às aplicações do Service Fabric. EndpointRangeDescription
capacidades As etiquetas de capacidade aplicadas aos nós no tipo de nó, o gestor de recursos do cluster utiliza estas etiquetas para compreender a quantidade de recursos que um nó tem. NodeTypeDescriptionCapacities
clientConnectionEndpointPort A porta de ponto final de gestão do cluster TCP. int (obrigatório)
durabilityLevel O nível de durabilidade do tipo de nó. Saiba mais sobre DurabilityLevel.

- Bronze - Sem privilégios. Esta é a predefinição.
- Prata - As tarefas de infraestrutura podem ser colocadas em pausa durante 10 minutos por UD.
- Ouro - As tarefas de infraestrutura podem ser colocadas em pausa durante 2 horas por UD. A durabilidade gold só pode ser ativada em skUs de VM de nó completos, como D15_V2, G5, etc.
'Bronze'
'Gold'
'Prata'
efémerosPorts O intervalo de portas efémeras com que os nós neste tipo de nó devem ser configurados. EndpointRangeDescription
httpGatewayEndpointPort A porta de ponto final de gestão do cluster HTTP. int (obrigatório)
isPrimary O tipo de nó no qual os serviços de sistema serão executados. Apenas um tipo de nó deve ser marcado como primário. Não é possível eliminar ou alterar o tipo de nó principal para clusters existentes. bool (obrigatório)
name O nome do tipo de nó. cadeia (obrigatório)
placementProperties As etiquetas de colocação aplicadas aos nós no tipo de nó, que podem ser utilizadas para indicar onde determinados serviços (carga de trabalho) devem ser executados. NodeTypeDescriptionPlacementProperties
reverseProxyEndpointPort O ponto final utilizado pelo proxy inverso. int
vmInstanceCount O número de nós no tipo de nó. Esta contagem deve corresponder à propriedade de capacidade no recurso VirtualMachineScaleSet correspondente. int (obrigatório)

Restrições:
Valor mínimo = 1
Valor máximo = 2147483647

EndpointRangeDescription

Nome Descrição Valor
endPort Porta de fim de um intervalo de portas int (obrigatório)
startPort Porta inicial de um intervalo de portas int (obrigatório)

NodeTypeDescriptionCapacities

Nome Descrição Valor
{customized property} string

NodeTypeDescriptionPlacementProperties

Nome Descrição Valor
{customized property} string

ClusterUpgradePolicy

Nome Descrição Valor
deltaHealthPolicy A política de estado de funcionamento delta do cluster utilizada ao atualizar o cluster. ClusterUpgradeDeltaHealthPolicy
forceRestart Se for verdadeiro, os processos são reiniciados com força durante a atualização, mesmo quando a versão do código não foi alterada (a atualização só altera a configuração ou os dados). bool
healthCheckRetryTimeout A quantidade de tempo para repetir a avaliação do estado de funcionamento quando a aplicação ou o cluster está em mau estado de funcionamento antes da atualização ser revertida. O tempo limite pode estar no formato hh:mm:ss ou no formato d.hh:mm:ss.ms. cadeia (obrigatório)
healthCheckStableDuration O período de tempo durante o qual a aplicação ou cluster tem de permanecer em bom estado de funcionamento antes de a atualização avançar para o domínio de atualização seguinte. A duração pode estar no formato hh:mm:ss ou no formato d.hh:mm:ss.ms. cadeia (obrigatório)
healthCheckWaitDuration O período de tempo a aguardar depois de concluir um domínio de atualização antes de efetuar verificações de estado de funcionamento. A duração pode estar no formato hh:mm:ss ou no formato d.hh:mm:ss.ms. cadeia (obrigatório)
healthPolicy A política de estado de funcionamento do cluster utilizada ao atualizar o cluster. ClusterHealthPolicy (obrigatório)
upgradeDomainTimeout A quantidade de tempo que cada domínio de atualização tem de ser concluído antes de a atualização ser revertida. O tempo limite pode estar no formato hh:mm:ss ou no formato d.hh:mm:ss.ms. cadeia (obrigatório)
upgradeReplicaSetCheckTimeout A quantidade máxima de tempo para bloquear o processamento de um domínio de atualização e evitar a perda de disponibilidade quando existem problemas inesperados. Quando este tempo limite expirar, o processamento do domínio de atualização irá prosseguir independentemente dos problemas de perda de disponibilidade. O tempo limite é reposto no início de cada domínio de atualização. O tempo limite pode estar no formato hh:mm:ss ou no formato d.hh:mm:ss.ms. cadeia (obrigatório)
upgradeTimeout A quantidade de tempo que a atualização geral tem de ser concluída antes de a atualização ser revertida. O tempo limite pode estar no formato hh:mm:ss ou no formato d.hh:mm:ss.ms. cadeia (obrigatório)

ClusterUpgradeDeltaHealthPolicy

Nome Descrição Valor
applicationDeltaHealthPolicies Define o mapa da política de estado de funcionamento delta da aplicação utilizado para avaliar o estado de funcionamento de uma aplicação ou de uma das entidades subordinadas ao atualizar o cluster. ApplicationDeltaHealthPolicyMap
maxPercentDeltaUnhealthyApplications A percentagem máxima permitida de degradação do estado de funcionamento das aplicações permitida durante as atualizações do cluster.
O delta é medido entre o estado das aplicações no início da atualização e o estado das aplicações no momento da avaliação do estado de funcionamento.
A verificação é efetuada após cada conclusão de atualização de domínio de atualização para garantir que o estado global do cluster está dentro dos limites tolerados. Os serviços de sistema não estão incluídos neste.
int (obrigatório)

Restrições:
Valor mínimo = 0
Valor máximo = 100
maxPercentDeltaUnhealthyNodes A percentagem máxima permitida de degradação do estado de funcionamento dos nós permitida durante as atualizações do cluster.
O delta é medido entre o estado dos nós no início da atualização e o estado dos nós no momento da avaliação do estado de funcionamento.
A verificação é efetuada após cada conclusão de atualização de domínio de atualização para garantir que o estado global do cluster está dentro dos limites tolerados.
int (obrigatório)

Restrições:
Valor mínimo = 0
Valor máximo = 100
maxPercentUpgradeDomainDeltaUnhealthyNodes A percentagem máxima permitida de degradação do estado de funcionamento dos nós de domínio de atualização permitida durante as atualizações do cluster.
O delta é medido entre o estado dos nós de domínio de atualização no início da atualização e o estado dos nós de domínio de atualização no momento da avaliação do estado de funcionamento.
A verificação é efetuada após cada conclusão de atualização de domínio de atualização para todos os domínios de atualização concluídos para garantir que o estado dos domínios de atualização está dentro dos limites tolerados.
int (obrigatório)

Restrições:
Valor mínimo = 0
Valor máximo = 100

ApplicationDeltaHealthPolicyMap

Nome Descrição Valor
{customized property} ApplicationDeltaHealthPolicy

ApplicationDeltaHealthPolicy

Nome Descrição Valor
defaultServiceTypeDeltaHealthPolicy A política de estado de funcionamento delta utilizada por predefinição para avaliar o estado de funcionamento de um tipo de serviço ao atualizar o cluster. ServiceTypeDeltaHealthPolicy
serviceTypeDeltaHealthPolicies O mapa com o tipo de serviço delta política de estado de funcionamento por nome do tipo de serviço. O mapa está vazio por predefinição. ServiceTypeDeltaHealthPolicyMap

ServiceTypeDeltaHealthPolicy

Nome Descrição Valor
maxPercentDeltaUnhealthyServices A percentagem máxima permitida de degradação do estado de funcionamento dos serviços permitida durante as atualizações do cluster.
O delta é medido entre o estado dos serviços no início da atualização e o estado dos serviços no momento da avaliação do estado de funcionamento.
A verificação é efetuada após cada conclusão de atualização de domínio de atualização para garantir que o estado global do cluster está dentro dos limites tolerados.
int

Restrições:
Valor mínimo = 0
Valor máximo = 100

ServiceTypeDeltaHealthPolicyMap

Nome Descrição Valor
{customized property} ServiceTypeDeltaHealthPolicy

ClusterHealthPolicy

Nome Descrição Valor
applicationHealthPolicies Define o mapa da política de estado de funcionamento da aplicação utilizado para avaliar o estado de funcionamento de uma aplicação ou de uma das entidades subordinadas. ApplicationHealthPolicyMap
maxPercentUnhealthyApplications A percentagem máxima permitida de aplicações em mau estado de funcionamento antes de comunicar um erro. Por exemplo, para permitir que 10% das aplicações estejam em mau estado de funcionamento, este valor seria 10.

A percentagem representa a percentagem máxima tolerada de aplicações que podem estar em mau estado de funcionamento antes de o cluster ser considerado como erro.
Se a percentagem for respeitada, mas existir pelo menos uma aplicação em mau estado de funcionamento, o estado de funcionamento é avaliado como Aviso.
Isto é calculado ao dividir o número de aplicações em mau estado de funcionamento em relação ao número total de instâncias de aplicação no cluster, excluindo aplicações de tipos de aplicações que estão incluídas no ApplicationTypeHealthPolicyMap.
O cálculo arredonda para tolerar uma falha num pequeno número de aplicações. A percentagem predefinida é zero.
int

Restrições:
Valor mínimo = 0
Valor máximo = 100
maxPercentUnhealthyNodes A percentagem máxima permitida de nós em mau estado de funcionamento antes de comunicar um erro. Por exemplo, para permitir que 10% dos nós estejam em mau estado de funcionamento, este valor seria 10.

A percentagem representa a percentagem máxima tolerada de nós que podem estar em mau estado de funcionamento antes de o cluster ser considerado como erro.
Se a percentagem for respeitada, mas existir pelo menos um nó em mau estado de funcionamento, o estado de funcionamento é avaliado como Aviso.
A percentagem é calculada ao dividir o número de nós em mau estado de funcionamento em relação ao número total de nós no cluster.
O cálculo arredonda para tolerar uma falha num pequeno número de nós. A percentagem predefinida é zero.

Em clusters grandes, alguns nós estarão sempre inativos ou sem reparações, pelo que esta percentagem deve ser configurada para tolerar isso.
int

Restrições:
Valor mínimo = 0
Valor máximo = 100

ApplicationHealthPolicyMap

Nome Descrição Valor
{customized property} ApplicationHealthPolicy

ApplicationHealthPolicy

Nome Descrição Valor
defaultServiceTypeHealthPolicy A política de estado de funcionamento utilizada por predefinição para avaliar o estado de funcionamento de um tipo de serviço. ServiceTypeHealthPolicy
serviceTypeHealthPolicies O mapa com o tipo de serviço política de estado de funcionamento por nome do tipo de serviço. O mapa está vazio por predefinição. ServiceTypeHealthPolicyMap

ServiceTypeHealthPolicy

Nome Descrição Valor
maxPercentUnhealthyServices A percentagem máxima de serviços autorizados a estar em mau estado de funcionamento antes de a sua aplicação ser considerada como erro. int

Restrições:
Valor mínimo = 0
Valor máximo = 100

ServiceTypeHealthPolicyMap

Nome Descrição Valor
{customized property} ServiceTypeHealthPolicy

Modelos de início rápido

Os seguintes modelos de início rápido implementam este tipo de recurso.

Modelo Description
Implementar um Cluster do Service Fabric do Ubuntu de 5 Nós

Implementar no Azure
Este modelo permite-lhe implementar um Cluster do Service Fabric de 5 nós seguro com o Ubuntu numa VMSS de Tamanho Standard_D2_V2.
Implementar um Cluster Seguro de 5 Nós

Implementar no Azure
Este modelo permite-lhe implementar um Cluster do Service Fabric de 5 nós seguro com o Windows Server 2019 Datacenter num VMSS de Tamanho Standard_D2_v2.
Implementar um Cluster Seguro de 3 Nós com NSGs ativados

Implementar no Azure
Este modelo permite-lhe implementar um Cluster de Recursos de Infraestrutura de Serviço de 3 nós seguro com o Centro de Dados do Windows Server 2016 num Standard_D2 Size VMs. Utilizar este modelo permite-lhe controlar o tráfego de rede de entrada e saída através de Grupos de Segurança de Rede.

Definição de recurso do Terraform (fornecedor AzAPI)

O tipo de recurso de clusters pode ser implementado com operações que visam:

  • Grupos de recursos

Para obter uma lista de propriedades alteradas em cada versão da API, veja registo de alterações.

Formato do recurso

Para criar um recurso Microsoft.ServiceFabric/clusters, adicione o seguinte Terraform ao seu modelo.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.ServiceFabric/clusters@2019-11-01-preview"
  name = "string"
  location = "string"
  parent_id = "string"
  tags = {
    tagName1 = "tagValue1"
    tagName2 = "tagValue2"
  }
  body = jsonencode({
    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"
      }
      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"
    }
  })
}

Valores de propriedade

clusters

Nome Descrição Valor
tipo O tipo de recurso "Microsoft.ServiceFabric/clusters@2019-11-01-preview"
name O nome do recurso cadeia (obrigatório)

Limite de carateres: 4-23

Carateres válidos:
Letras minúsculas, números e hífenes.

Comece com letras minúsculas. Termine com letra ou número em minúsculas.
localização Localização dos recursos do Azure. cadeia (obrigatório)
parent_id Para implementar num grupo de recursos, utilize o ID desse grupo de recursos. cadeia (obrigatório)
etiquetas Etiquetas de recursos do Azure. Dicionário de nomes e valores de etiquetas.
propriedades As propriedades do recurso do cluster ClusterProperties

ClusterProperties

Nome Descrição Valor
addOnFeatures A lista de funcionalidades de suplementos a ativar no cluster. Matriz de cadeias que contém qualquer um dos seguintes:
"BackupRestoreService"
"DnsService"
"RepairManager"
"ResourceMonitorService"
applicationTypeVersionsCleanupPolicy A política utilizada para limpar versões não utilizadas. ApplicationTypeVersionsCleanupPolicy
azureActiveDirectory As definições de autenticação do AAD do cluster. AzureActiveDirectory
certificado O certificado a utilizar para proteger o cluster. O certificado fornecido será utilizado para a segurança do nó no nó no cluster, o certificado SSL para o ponto final de gestão do cluster e o cliente de administração predefinido. CertificateDescription
certificateCommonNames Descreve uma lista de certificados de servidor referenciados pelo nome comum que são utilizados para proteger o cluster. ServerCertificateCommonNames
clientCertificateCommonNames A lista de certificados de cliente referenciados pelo nome comum que têm permissão para gerir o cluster. ClientCertificateCommonName[]
clientCertificateThumbprints A lista de certificados de cliente referenciados pelo thumbprint que têm permissão para gerir o cluster. ClientCertificateThumbprint[]
clusterCodeVersion A versão de runtime do Service Fabric do cluster. Esta propriedade só pode ser definida pelo utilizador quando upgradeMode está definido como "Manual". Para obter uma lista das versões disponíveis do Service Fabric para novos clusters, utilize a API ClusterVersion. Para obter a lista de versões disponíveis para clusters existentes, utilize availableClusterVersions. string
diagnosticsStorageAccountConfig As informações da conta de armazenamento para armazenar registos de diagnóstico do Service Fabric. DiagnosticsStorageAccountConfig
eventStoreServiceEnabled Indica se o serviço de arquivo de eventos está ativado. bool
recursos de infraestruturaDefinições A lista de definições de recursos de infraestrutura personalizados para configurar o cluster. SettingsSectionDescription[]
managementEndpoint O ponto final de gestão http do cluster. cadeia (obrigatório)
nodeTypes A lista de tipos de nós no cluster. NodeTypeDescription[] (obrigatório)
fiabilidadeLevel O nível de fiabilidade define o tamanho do conjunto de réplicas dos serviços do sistema. Saiba mais sobre o Nível de Fiabilidade.

- Nenhum - Execute os serviços do Sistema com uma contagem de conjuntos de réplicas de destino de 1. Esta ação só deve ser utilizada para clusters de teste.
- Bronze - Execute os serviços do Sistema com uma contagem de 3 conjuntos de réplicas de destino. Esta ação só deve ser utilizada para clusters de teste.
- Prata - Execute os serviços do Sistema com uma contagem de conjuntos de réplicas de destino de 5.
- Gold - Execute os serviços do Sistema com uma contagem de 7 conjuntos de réplicas de destino.
- Platinum - Execute os serviços do Sistema com uma contagem de conjuntos de réplicas de destino de 9.
"Bronze"
"Ouro"
"Nenhum"
"Platina"
"Prata"
reverseProxyCertificate O certificado de servidor utilizado pelo proxy inverso. CertificateDescription
reverseProxyCertificateCommonNames Descreve uma lista de certificados de servidor referenciados pelo nome comum que são utilizados para proteger o cluster. ServerCertificateCommonNames
upgradeDescription A política a utilizar ao atualizar o cluster. ClusterUpgradePolicy
upgradeMode O modo de atualização do cluster quando está disponível a nova versão do runtime do Service Fabric.

- Automático - O cluster será atualizado automaticamente para a versão de runtime mais recente do Service Fabric assim que estiver disponível.
- Manual - O cluster não será atualizado automaticamente para a versão mais recente do runtime do Service Fabric. O cluster é atualizado ao definir a propriedade clusterCodeVersion no recurso do cluster.
"Automático"
"Manual"
vmImage A imagem de VM VMSS foi configurada com. Podem ser utilizados nomes genéricos, como Windows ou Linux. string

ApplicationTypeVersionsCleanupPolicy

Nome Descrição Valor
maxUnusedVersionsToKeep Número de versões não utilizadas por tipo de aplicação a manter. int (obrigatório)

Restrições:
Valor mínimo = 0

AzureActiveDirectory

Nome Descrição Valor
clientApplication ID da aplicação cliente do Azure Active Directory. string
clusterApplication ID da aplicação de cluster do Azure Active Directory. string
tenantId ID de inquilino do Azure Active Directory. string

CertificateDescription

Nome Descrição Valor
thumbprint Thumbprint do certificado primário. cadeia (obrigatório)
thumbprintSecondary Thumbprint do certificado secundário. string
x509StoreName A localização do arquivo de certificados local. "AddressBook"
"AuthRoot"
"CertificateAuthority"
"Não permitido"
"O Meu"
"Raiz"
"TrustedPeople"
"TrustedPublisher"

ServerCertificateCommonNames

Nome Descrição Valor
commonNames A lista de certificados de servidor referenciados pelo nome comum que são utilizados para proteger o cluster. ServerCertificateCommonName[]
x509StoreName A localização do arquivo de certificados local. "AddressBook"
"AuthRoot"
"CertificateAuthority"
"Não permitido"
"O Meu"
"Raiz"
"TrustedPeople"
"TrustedPublisher"

ServerCertificateCommonName

Nome Descrição Valor
certificateCommonName O nome comum do certificado de servidor. cadeia (obrigatório)
certificateIssuerThumbprint O thumbprint do emissor do certificado do servidor. cadeia (obrigatório)

ClientCertificateCommonName

Nome Descrição Valor
certificateCommonName O nome comum do certificado de cliente. cadeia (obrigatório)
certificateIssuerThumbprint O thumbprint do emissor do certificado de cliente. cadeia (obrigatório)
isAdmin Indica se o certificado de cliente tem acesso de administrador ao cluster. Os clientes não administradores só podem realizar operações só de leitura no cluster. bool (obrigatório)

ClientCertificateThumbprint

Nome Descrição Valor
certificateThumbprint O thumbprint do certificado de cliente. cadeia (obrigatório)
isAdmin Indica se o certificado de cliente tem acesso de administrador ao cluster. Os clientes não administradores só podem realizar operações só de leitura no cluster. bool (obrigatório)

DiagnosticsStorageAccountConfig

Nome Descrição Valor
blobEndpoint O ponto final do blob da conta de armazenamento do Azure. cadeia (obrigatório)
protectedAccountKeyName O nome da chave de armazenamento de diagnóstico protegido. cadeia (obrigatório)
protectedAccountKeyName2 O nome da chave de armazenamento de diagnósticos protegido secundário. Se uma das chaves da conta de armazenamento for rodada, o cluster reverterá para a utilização da outra. string
queueEndpoint O ponto final da fila da conta de armazenamento do Azure. cadeia (obrigatório)
storageAccountName O nome da conta de armazenamento do Azure. cadeia (obrigatório)
tableEndpoint O ponto final da tabela da conta de armazenamento do Azure. cadeia (obrigatório)

SettingsSectionDescription

Nome Descrição Valor
name O nome da secção das definições de recursos de infraestrutura. cadeia (obrigatório)
parâmetros A coleção de parâmetros na secção. SettingsParameterDescription[] (obrigatório)

DefiniçõesParameterDescription

Nome Descrição Valor
name O nome do parâmetro da definição de recursos de infraestrutura. cadeia (obrigatório)
valor O valor do parâmetro da definição de recursos de infraestrutura. cadeia (obrigatório)

NodeTypeDescription

Nome Descrição Valor
applicationPorts O intervalo de portas a partir do qual o cluster atribuiu a porta às aplicações do Service Fabric. EndpointRangeDescription
capacidades As etiquetas de capacidade aplicadas aos nós no tipo de nó, o gestor de recursos do cluster utiliza estas etiquetas para compreender a quantidade de recursos que um nó tem. NodeTypeDescriptionCapacities
clientConnectionEndpointPort A porta de ponto final de gestão do cluster TCP. int (obrigatório)
durabilityLevel O nível de durabilidade do tipo de nó. Saiba mais sobre DurabilityLevel.

- Bronze - Sem privilégios. Esta é a predefinição.
- Prata – as tarefas de infraestrutura podem ser colocadas em pausa durante 10 minutos por UD.
- Gold – as tarefas de infraestrutura podem ser colocadas em pausa durante 2 horas por UD. A durabilidade dourada só pode ser ativada em SKUs de VM de nós completos, como D15_V2, G5, etc.
"Bronze"
"Dourado"
"Prata"
efémerosPorts O intervalo de portas efémeras com que os nós neste tipo de nó devem ser configurados. EndpointRangeDescription
httpGatewayEndpointPort A porta de ponto final de gestão do cluster HTTP. int (obrigatório)
isPrimary O tipo de nó no qual os serviços de sistema serão executados. Apenas um tipo de nó deve ser marcado como primário. Não é possível eliminar ou alterar o tipo de nó principal para clusters existentes. bool (obrigatório)
name O nome do tipo de nó. cadeia (obrigatório)
placementProperties As etiquetas de colocação aplicadas aos nós no tipo de nó, que podem ser utilizadas para indicar onde determinados serviços (carga de trabalho) devem ser executados. NodeTypeDescriptionPlacementProperties
reverseProxyEndpointPort O ponto final utilizado pelo proxy inverso. int
vmInstanceCount O número de nós no tipo de nó. Esta contagem deve corresponder à propriedade de capacidade no recurso VirtualMachineScaleSet correspondente. int (obrigatório)

Restrições:
Valor mínimo = 1
Valor máximo = 2147483647

EndpointRangeDescription

Nome Descrição Valor
endPort Porta de fim de um intervalo de portas int (obrigatório)
startPort Porta de início de um intervalo de portas int (obrigatório)

NodeTypeDescriptionCapacities

Nome Descrição Valor
{customized property} string

NodeTypeDescriptionPlacementProperties

Nome Descrição Valor
{customized property} string

ClusterUpgradePolicy

Nome Descrição Valor
deltaHealthPolicy A política de estado de funcionamento delta do cluster utilizada ao atualizar o cluster. ClusterUpgradeDeltaHealthPolicy
forceRestart Se for verdadeiro, os processos são reiniciados com força durante a atualização, mesmo quando a versão do código não foi alterada (a atualização só altera a configuração ou os dados). bool
healthCheckRetryTimeout A quantidade de tempo para repetir a avaliação do estado de funcionamento quando a aplicação ou o cluster está em mau estado de funcionamento antes de a atualização ser revertida. O tempo limite pode estar no formato hh:mm:ss ou no formato d.hh:mm:ss.ms. cadeia (obrigatório)
healthCheckStableDuration O período de tempo durante o qual a aplicação ou cluster tem de permanecer em bom estado de funcionamento antes de a atualização avançar para o domínio de atualização seguinte. A duração pode estar no formato hh:mm:ss ou no formato d.hh:mm:ss.ms. cadeia (obrigatório)
healthCheckWaitDuration O período de tempo a aguardar depois de concluir um domínio de atualização antes de efetuar verificações de estado de funcionamento. A duração pode estar no formato hh:mm:ss ou no formato d.hh:mm:ss.ms. cadeia (obrigatório)
healthPolicy A política de estado de funcionamento do cluster utilizada ao atualizar o cluster. ClusterHealthPolicy (obrigatório)
upgradeDomainTimeout A quantidade de tempo que cada domínio de atualização tem de concluir antes de a atualização ser revertido. O tempo limite pode estar no formato hh:mm:ss ou no formato d.hh:mm:ss.ms. cadeia (obrigatório)
upgradeReplicaSetCheckTimeout A quantidade máxima de tempo para bloquear o processamento de um domínio de atualização e evitar a perda de disponibilidade quando existem problemas inesperados. Quando este tempo limite expirar, o processamento do domínio de atualização irá prosseguir independentemente dos problemas de perda de disponibilidade. O tempo limite é reposto no início de cada domínio de atualização. O tempo limite pode estar no formato hh:mm:ss ou no formato d.hh:mm:ss.ms. cadeia (obrigatório)
upgradeTimeout A quantidade de tempo que a atualização geral tem de ser concluída antes de a atualização ser revertida. O tempo limite pode estar no formato hh:mm:ss ou no formato d.hh:mm:ss.ms. cadeia (obrigatório)

ClusterUpgradeDeltaHealthPolicy

Nome Descrição Valor
applicationDeltaHealthPolicies Define o mapa da política de estado de funcionamento delta da aplicação utilizado para avaliar o estado de funcionamento de uma aplicação ou de uma das entidades subordinadas ao atualizar o cluster. ApplicationDeltaHealthPolicyMap
maxPercentDeltaUnhealthyApplications A percentagem máxima permitida de degradação do estado de funcionamento das aplicações permitida durante as atualizações do cluster.
O delta é medido entre o estado das aplicações no início da atualização e o estado das aplicações no momento da avaliação do estado de funcionamento.
A verificação é efetuada após cada conclusão de atualização de domínio de atualização para garantir que o estado global do cluster está dentro dos limites tolerados. Os serviços de sistema não estão incluídos neste.
int (obrigatório)

Restrições:
Valor mínimo = 0
Valor máximo = 100
maxPercentDeltaUnhealthyNodes A percentagem máxima permitida de degradação do estado de funcionamento dos nós permitida durante as atualizações do cluster.
O delta é medido entre o estado dos nós no início da atualização e o estado dos nós no momento da avaliação do estado de funcionamento.
A verificação é efetuada após cada conclusão de atualização de domínio de atualização para garantir que o estado global do cluster está dentro dos limites tolerados.
int (obrigatório)

Restrições:
Valor mínimo = 0
Valor máximo = 100
maxPercentUpgradeDomainDeltaUnhealthyNodes A percentagem máxima permitida de degradação do estado de funcionamento dos nós de domínio de atualização permitida durante as atualizações do cluster.
O delta é medido entre o estado dos nós de domínio de atualização no início da atualização e o estado dos nós de domínio de atualização no momento da avaliação do estado de funcionamento.
A verificação é efetuada após cada conclusão de atualização de domínio de atualização para todos os domínios de atualização concluídos para garantir que o estado dos domínios de atualização está dentro dos limites tolerados.
int (obrigatório)

Restrições:
Valor mínimo = 0
Valor máximo = 100

ApplicationDeltaHealthPolicyMap

Nome Descrição Valor
{customized property} ApplicationDeltaHealthPolicy

ApplicationDeltaHealthPolicy

Nome Descrição Valor
defaultServiceTypeDeltaHealthPolicy A política de estado de funcionamento delta utilizada por predefinição para avaliar o estado de funcionamento de um tipo de serviço ao atualizar o cluster. ServiceTypeDeltaHealthPolicy
serviceTypeDeltaHealthPolicies O mapa com o tipo de serviço delta política de estado de funcionamento por nome do tipo de serviço. O mapa está vazio por predefinição. ServiceTypeDeltaHealthPolicyMap

ServiceTypeDeltaHealthPolicy

Nome Descrição Valor
maxPercentDeltaUnhealthyServices A percentagem máxima permitida de degradação do estado de funcionamento dos serviços permitida durante as atualizações do cluster.
O delta é medido entre o estado dos serviços no início da atualização e o estado dos serviços no momento da avaliação do estado de funcionamento.
A verificação é efetuada após cada conclusão de atualização de domínio de atualização para garantir que o estado global do cluster está dentro dos limites tolerados.
int

Restrições:
Valor mínimo = 0
Valor máximo = 100

ServiceTypeDeltaHealthPolicyMap

Nome Descrição Valor
{customized property} ServiceTypeDeltaHealthPolicy

ClusterHealthPolicy

Nome Descrição Valor
applicationHealthPolicies Define o mapa da política de estado de funcionamento da aplicação utilizado para avaliar o estado de funcionamento de uma aplicação ou de uma das entidades subordinadas. ApplicationHealthPolicyMap
maxPercentUnhealthyApplications A percentagem máxima permitida de aplicações em mau estado de funcionamento antes de comunicar um erro. Por exemplo, para permitir que 10% das aplicações estejam em mau estado de funcionamento, este valor seria 10.

A percentagem representa a percentagem máxima tolerada de aplicações que podem estar em mau estado de funcionamento antes de o cluster ser considerado como erro.
Se a percentagem for respeitada, mas existir pelo menos uma aplicação em mau estado de funcionamento, o estado de funcionamento é avaliado como Aviso.
Isto é calculado ao dividir o número de aplicações em mau estado de funcionamento em relação ao número total de instâncias de aplicação no cluster, excluindo aplicações de tipos de aplicações que estão incluídas no ApplicationTypeHealthPolicyMap.
O cálculo arredonda para tolerar uma falha num pequeno número de aplicações. A percentagem predefinida é zero.
int

Restrições:
Valor mínimo = 0
Valor máximo = 100
maxPercentUnhealthyNodes A percentagem máxima permitida de nós em mau estado de funcionamento antes de comunicar um erro. Por exemplo, para permitir que 10% dos nós estejam em mau estado de funcionamento, este valor seria 10.

A percentagem representa a percentagem máxima tolerada de nós que podem estar em mau estado de funcionamento antes de o cluster ser considerado como erro.
Se a percentagem for respeitada, mas existir pelo menos um nó em mau estado de funcionamento, o estado de funcionamento é avaliado como Aviso.
A percentagem é calculada ao dividir o número de nós em mau estado de funcionamento em relação ao número total de nós no cluster.
A computação arredonda para tolerar uma falha num pequeno número de nós. A percentagem predefinida é zero.

Em clusters grandes, alguns nós estarão sempre inativos ou desativados para reparações, pelo que esta percentagem deve ser configurada para tolerar isso.
int

Restrições:
Valor mínimo = 0
Valor máximo = 100

ApplicationHealthPolicyMap

Nome Descrição Valor
{customized property} ApplicationHealthPolicy

ApplicationHealthPolicy

Nome Descrição Valor
defaultServiceTypeHealthPolicy A política de estado de funcionamento utilizada por predefinição para avaliar o estado de funcionamento de um tipo de serviço. ServiceTypeHealthPolicy
serviceTypeHealthPolicies O mapa com o tipo de serviço política de estado de funcionamento por nome do tipo de serviço. O mapa está vazio por predefinição. ServiceTypeHealthPolicyMap

ServiceTypeHealthPolicy

Nome Descrição Valor
maxPercentUnhealthyServices A percentagem máxima de serviços autorizados a estar em mau estado de funcionamento antes de a sua aplicação ser considerada como erro. int

Restrições:
Valor mínimo = 0
Valor máximo = 100

ServiceTypeHealthPolicyMap

Nome Descrição Valor
{customized property} ServiceTypeHealthPolicy