다음을 통해 공유


Microsoft.ServiceFabric 클러스터 2016-09-01

Bicep 리소스 정의

다음을 대상으로 하는 작업을 사용하여 클러스터 리소스 유형을 배포할 수 있습니다.

각 API 버전에서 변경된 속성 목록은 변경 로그참조하세요.

리소스 형식

Microsoft.ServiceFabric/clusters 리소스를 만들려면 템플릿에 다음 Bicep을 추가합니다.

resource symbolicname 'Microsoft.ServiceFabric/clusters@2016-09-01' = {
  location: 'string'
  name: 'string'
  properties: {
    azureActiveDirectory: {
      clientApplication: 'string'
      clusterApplication: 'string'
      tenantId: 'string'
    }
    certificate: {
      thumbprint: 'string'
      thumbprintSecondary: 'string'
      x509StoreName: 'string'
    }
    clientCertificateCommonNames: [
      {
        certificateCommonName: 'string'
        certificateIssuerThumbprint: 'string'
        isAdmin: bool
      }
    ]
    clientCertificateThumbprints: [
      {
        certificateThumbprint: 'string'
        isAdmin: bool
      }
    ]
    clusterCodeVersion: 'string'
    diagnosticsStorageAccountConfig: {
      blobEndpoint: 'string'
      protectedAccountKeyName: 'string'
      queueEndpoint: 'string'
      storageAccountName: 'string'
      tableEndpoint: 'string'
    }
    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'
    }
    upgradeDescription: {
      deltaHealthPolicy: {
        maxPercentDeltaUnhealthyApplications: int
        maxPercentDeltaUnhealthyNodes: int
        maxPercentUpgradeDomainDeltaUnhealthyNodes: int
      }
      forceRestart: bool
      healthCheckRetryTimeout: 'string'
      healthCheckStableDuration: 'string'
      healthCheckWaitDuration: 'string'
      healthPolicy: {
        maxPercentUnhealthyApplications: int
        maxPercentUnhealthyNodes: int
      }
      overrideUserUpgradePolicy: bool
      upgradeDomainTimeout: 'string'
      upgradeReplicaSetCheckTimeout: 'string'
      upgradeTimeout: 'string'
    }
    upgradeMode: 'string'
    vmImage: 'string'
  }
  tags: {
    {customized property}: 'string'
  }
}

속성 값

AzureActiveDirectory

이름 묘사
clientApplication Azure Active Directory 클라이언트 애플리케이션 ID 문자열
clusterApplication Azure Active Directory 클러스터 애플리케이션 ID 문자열
tenantId Azure Active Directory 테넌트 ID 문자열

CertificateDescription

이름 묘사
지문 기본 인증서의 지문 string(필수)
thumbprintSecondary 보조 인증서의 지문 문자열
x509StoreName 로컬 인증서 저장소 위치 'AddressBook'
'AuthRoot'
'CertificateAuthority'
'허용되지 않음'
'My'
'Root'
'TrustedPeople'
'TrustedPublisher'

ClientCertificateCommonName

이름 묘사
certificateCommonName 액세스 권한을 부여할 인증서 일반 이름; 와일드카드 일반 이름을 사용하여 주의해야 합니다. string(필수)
certificateIssuerThumbprint 인증서 발급자 지문 string(필수)
isAdmin 이 인증서는 클라이언트의 관리자 액세스에 사용되며, false인 경우 액세스만 사용하거나 쿼리합니다. bool(필수)

ClientCertificateThumbprint

이름 묘사
certificateThumbprint 인증서 지문 string(필수)
isAdmin 이 인증서는 클라이언트의 관리자 액세스에 사용되며 false인 경우 사용되거나 액세스만 쿼리합니다. bool(필수)

ClusterHealthPolicy

이름 묘사
maxPercentUnhealthyApplications 오류를 보고하기 전에 허용되는 비정상 애플리케이션의 최대 백분율입니다. 예를 들어 10개% 애플리케이션이 비정상이 되도록 하려면 이 값은 10입니다. int

제약 조건:
최소값 = 0
최대값 = 100
maxPercentUnhealthyNodes 오류를 보고하기 전에 허용되는 비정상 노드의 최대 백분율입니다. 예를 들어 노드 10개% 비정상이 되도록 하려면 이 값은 10입니다. int

제약 조건:
최소값 = 0
최대값 = 100

ClusterProperties

이름 묘사
azureActiveDirectory 클러스터에서 AAD 인증을 사용하도록 설정하는 설정 AzureActiveDirectory
증명서 이 기본 인증서는 노드 보안에 대한 클러스터 노드, 클러스터 관리 엔드포인트용 SSL 인증서 및 기본 관리 클라이언트로 사용됩니다. CertificateDescription
clientCertificateCommonNames 일반 이름에 따라 신뢰할 클라이언트 인증서 목록 ClientCertificateCommonName[]
clientCertificateThumbprints 클라이언트 지문 세부 정보- 클러스터 작업에 대한 클라이언트 액세스에 사용됩니다. ClientCertificateThumbprint[]
clusterCodeVersion 클러스터에서 실행되는 ServiceFabric 코드 버전 문자열
diagnosticsStorageAccountConfig 스토리지 진단 계정 구성 세부 정보 DiagnosticsStorageAccountConfig
fabricSettings 클러스터를 구성할 사용자 지정 패브릭 설정 목록입니다. SettingsSectionDescription[]
managementEndpoint 클러스터의 http 관리 엔드포인트 string(필수)
nodeTypes 클러스터를 구성하는 노드 형식 목록 NodeTypeDescription[] (필수)
reliabilityLevel 클러스터 안정성 수준은 시스템 서비스의 복제본 집합 크기를 나타냅니다. '브론즈'
'골드'
'플래티넘'
'실버'
reverseProxyCertificate 역방향 프록시에서 사용하는 서버 인증서 CertificateDescription
upgradeDescription 클러스터를 업그레이드할 때 사용할 정책입니다. clusterUpgradePolicy
upgradeMode 클러스터 업그레이드 모드는 패브릭 업그레이드가 시스템에서 자동으로 시작되는지 여부를 나타냅니다. 'Automatic'
'수동'
vmImage VM 이미지 VMSS의 이름이 구성되었습니다. Windows 또는 Linux와 같은 제네릭 이름을 사용할 수 있습니다. 문자열

ClusterUpgradeDeltaHealthPolicy

이름 묘사
maxPercentDeltaUnhealthyApplications 추가 비정상 애플리케이션 비율 int

제약 조건:
최소값 = 0
최대값 = 100(필수)
maxPercentDeltaUnhealthyNodes 추가 비정상 노드 백분율 int

제약 조건:
최소값 = 0
최대값 = 100(필수)
maxPercentUpgradeDomainDeltaUnhealthyNodes 업그레이드 도메인당 추가 비정상 노드 백분율 int

제약 조건:
최소값 = 0
최대값 = 100(필수)

ClusterUpgradePolicy

이름 묘사
deltaHealthPolicy 델타 상태 정책 ClusterUpgradeDeltaHealthPolicy
forceRestart 노드를 강제로 다시 시작하거나 다시 시작하지 않음 bool
healthCheckRetryTimeout 상태 검사가 지속적으로 실패할 수 있는 기간입니다. .Net TimeSpan을 나타냅니다. string(필수)
healthCheckStableDuration 상태 검사가 지속적으로 통과해야 하는 기간이며 .Net TimeSpan을 나타냅니다. string(필수)
healthCheckWaitDuration 상태 검사를 수행하기 전에 업그레이드 도메인을 완료한 후 대기하는 기간이며 .Net TimeSpan을 나타냅니다. string(필수)
healthPolicy 클러스터 상태 정책 ClusterHealthPolicy(필수)
overrideUserUpgradePolicy 사용자 정의 업그레이드 정책 사용 여부 bool
upgradeDomainTimeout 업그레이드 도메인에 대한 시간 제한이며 .Net TimeSpan을 나타냅니다. string(필수)
upgradeReplicaSetCheckTimeout 복제본 집합 업그레이드가 완료되는 시간 제한입니다. .Net TimeSpan을 나타냅니다. string(필수)
upgradeTimeout 업그레이드 시간 제한은 .Net TimeSpan을 나타냅니다. string(필수)

DiagnosticsStorageAccountConfig

이름 묘사
blobEndpoint 진단 스토리지 계정 Blob 엔드포인트 string(필수)
protectedAccountKeyName 보호된 진단 스토리지 키 이름 string(필수)
queueEndpoint 진단 스토리지 계정 큐 엔드포인트 string(필수)
storageAccountName 진단 스토리지 계정 이름 string(필수)
tableEndpoint 진단 스토리지 계정 테이블 엔드포인트 string(필수)

EndpointRangeDescription

이름 묘사
endPort 포트 범위의 끝 포트 int(필수)
startPort 포트 범위의 시작 포트 int(필수)

Microsoft.ServiceFabric/clusters

이름 묘사
위치 리소스 위치입니다. string(필수)
이름 리소스 이름 string(필수)
속성 클러스터 리소스 속성 ClusterProperties
태그 리소스 태그 태그 이름 및 값의 사전입니다. 템플릿 태그를 참조하세요.

NodeTypeDescription

이름 묘사
applicationPorts 애플리케이션에서 사용하는 포트 EndpointRangeDescription
용량 노드 형식의 노드에 적용되는 용량 태그인 클러스터 리소스 관리자는 이러한 태그를 사용하여 노드에 있는 리소스의 양을 이해합니다. nodeTypeDescriptionCapacities
clientConnectionEndpointPort TCP 클러스터 관리 엔드포인트 포트 int(필수)
durabilityLevel 노드 형식 내구성 수준 '브론즈'
'골드'
'실버'
ephemeralPorts 시스템 할당 애플리케이션 포트 EndpointRangeDescription
httpGatewayEndpointPort HTTP 클러스터 관리 엔드포인트 포트 int(필수)
isPrimary 이를 주 노드 형식으로 표시 bool(필수)
이름 노드 형식의 이름 string(필수)
placementProperties 노드 형식의 노드에 적용되는 배치 태그로, 특정 서비스(워크로드)가 실행되어야 하는 위치를 나타내는 데 사용할 수 있습니다. NodeTypeDescriptionPlacementProperties
reverseProxyEndpointPort 역방향 프록시에서 사용하는 엔드포인트 int
vmInstanceCount 노드 형식의 노드 인스턴스 수 int

제약 조건:
최소값 = 1
최대값 = 2147483647(필수)

NodeTypeDescriptionCapacities

이름 묘사

NodeTypeDescriptionPlacementProperties

이름 묘사

ResourceTags

이름 묘사

SettingsParameterDescription

이름 묘사
이름 설정 속성의 이름 string(필수)
속성의 값입니다. string(필수)

SettingsSectionDescription

이름 묘사
이름 설정 섹션의 이름 string(필수)
매개 변수 섹션의 설정 컬렉션, 각 설정은 설정 이름 및 값으로 구성된 튜플입니다. SettingsParameterDescription[] (필수)

빠른 시작 샘플

다음 빠른 시작 샘플은 이 리소스 유형을 배포합니다.

Bicep 파일 묘사
5 노드 보안 클러스터 배포 이 템플릿을 사용하면 windows Server 2019 Datacenter를 실행하는 보안 5 노드 Service Fabric 클러스터를 Standard_D2_v2 크기 VMSS에 배포할 수 있습니다.

ARM 템플릿 리소스 정의

다음을 대상으로 하는 작업을 사용하여 클러스터 리소스 유형을 배포할 수 있습니다.

각 API 버전에서 변경된 속성 목록은 변경 로그참조하세요.

리소스 형식

Microsoft.ServiceFabric/clusters 리소스를 만들려면 템플릿에 다음 JSON을 추가합니다.

{
  "type": "Microsoft.ServiceFabric/clusters",
  "apiVersion": "2016-09-01",
  "name": "string",
  "location": "string",
  "properties": {
    "azureActiveDirectory": {
      "clientApplication": "string",
      "clusterApplication": "string",
      "tenantId": "string"
    },
    "certificate": {
      "thumbprint": "string",
      "thumbprintSecondary": "string",
      "x509StoreName": "string"
    },
    "clientCertificateCommonNames": [
      {
        "certificateCommonName": "string",
        "certificateIssuerThumbprint": "string",
        "isAdmin": "bool"
      }
    ],
    "clientCertificateThumbprints": [
      {
        "certificateThumbprint": "string",
        "isAdmin": "bool"
      }
    ],
    "clusterCodeVersion": "string",
    "diagnosticsStorageAccountConfig": {
      "blobEndpoint": "string",
      "protectedAccountKeyName": "string",
      "queueEndpoint": "string",
      "storageAccountName": "string",
      "tableEndpoint": "string"
    },
    "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"
    },
    "upgradeDescription": {
      "deltaHealthPolicy": {
        "maxPercentDeltaUnhealthyApplications": "int",
        "maxPercentDeltaUnhealthyNodes": "int",
        "maxPercentUpgradeDomainDeltaUnhealthyNodes": "int"
      },
      "forceRestart": "bool",
      "healthCheckRetryTimeout": "string",
      "healthCheckStableDuration": "string",
      "healthCheckWaitDuration": "string",
      "healthPolicy": {
        "maxPercentUnhealthyApplications": "int",
        "maxPercentUnhealthyNodes": "int"
      },
      "overrideUserUpgradePolicy": "bool",
      "upgradeDomainTimeout": "string",
      "upgradeReplicaSetCheckTimeout": "string",
      "upgradeTimeout": "string"
    },
    "upgradeMode": "string",
    "vmImage": "string"
  },
  "tags": {
    "{customized property}": "string"
  }
}

속성 값

AzureActiveDirectory

이름 묘사
clientApplication Azure Active Directory 클라이언트 애플리케이션 ID 문자열
clusterApplication Azure Active Directory 클러스터 애플리케이션 ID 문자열
tenantId Azure Active Directory 테넌트 ID 문자열

CertificateDescription

이름 묘사
지문 기본 인증서의 지문 string(필수)
thumbprintSecondary 보조 인증서의 지문 문자열
x509StoreName 로컬 인증서 저장소 위치 'AddressBook'
'AuthRoot'
'CertificateAuthority'
'허용되지 않음'
'My'
'Root'
'TrustedPeople'
'TrustedPublisher'

ClientCertificateCommonName

이름 묘사
certificateCommonName 액세스 권한을 부여할 인증서 일반 이름; 와일드카드 일반 이름을 사용하여 주의해야 합니다. string(필수)
certificateIssuerThumbprint 인증서 발급자 지문 string(필수)
isAdmin 이 인증서는 클라이언트의 관리자 액세스에 사용되며, false인 경우 액세스만 사용하거나 쿼리합니다. bool(필수)

ClientCertificateThumbprint

이름 묘사
certificateThumbprint 인증서 지문 string(필수)
isAdmin 이 인증서는 클라이언트의 관리자 액세스에 사용되며 false인 경우 사용되거나 액세스만 쿼리합니다. bool(필수)

ClusterHealthPolicy

이름 묘사
maxPercentUnhealthyApplications 오류를 보고하기 전에 허용되는 비정상 애플리케이션의 최대 백분율입니다. 예를 들어 10개% 애플리케이션이 비정상이 되도록 하려면 이 값은 10입니다. int

제약 조건:
최소값 = 0
최대값 = 100
maxPercentUnhealthyNodes 오류를 보고하기 전에 허용되는 비정상 노드의 최대 백분율입니다. 예를 들어 노드 10개% 비정상이 되도록 하려면 이 값은 10입니다. int

제약 조건:
최소값 = 0
최대값 = 100

ClusterProperties

이름 묘사
azureActiveDirectory 클러스터에서 AAD 인증을 사용하도록 설정하는 설정 AzureActiveDirectory
증명서 이 기본 인증서는 노드 보안에 대한 클러스터 노드, 클러스터 관리 엔드포인트용 SSL 인증서 및 기본 관리 클라이언트로 사용됩니다. CertificateDescription
clientCertificateCommonNames 일반 이름에 따라 신뢰할 클라이언트 인증서 목록 ClientCertificateCommonName[]
clientCertificateThumbprints 클라이언트 지문 세부 정보- 클러스터 작업에 대한 클라이언트 액세스에 사용됩니다. ClientCertificateThumbprint[]
clusterCodeVersion 클러스터에서 실행되는 ServiceFabric 코드 버전 문자열
diagnosticsStorageAccountConfig 스토리지 진단 계정 구성 세부 정보 DiagnosticsStorageAccountConfig
fabricSettings 클러스터를 구성할 사용자 지정 패브릭 설정 목록입니다. SettingsSectionDescription[]
managementEndpoint 클러스터의 http 관리 엔드포인트 string(필수)
nodeTypes 클러스터를 구성하는 노드 형식 목록 NodeTypeDescription[] (필수)
reliabilityLevel 클러스터 안정성 수준은 시스템 서비스의 복제본 집합 크기를 나타냅니다. '브론즈'
'골드'
'플래티넘'
'실버'
reverseProxyCertificate 역방향 프록시에서 사용하는 서버 인증서 CertificateDescription
upgradeDescription 클러스터를 업그레이드할 때 사용할 정책입니다. clusterUpgradePolicy
upgradeMode 클러스터 업그레이드 모드는 패브릭 업그레이드가 시스템에서 자동으로 시작되는지 여부를 나타냅니다. 'Automatic'
'수동'
vmImage VM 이미지 VMSS의 이름이 구성되었습니다. Windows 또는 Linux와 같은 제네릭 이름을 사용할 수 있습니다. 문자열

ClusterUpgradeDeltaHealthPolicy

이름 묘사
maxPercentDeltaUnhealthyApplications 추가 비정상 애플리케이션 비율 int

제약 조건:
최소값 = 0
최대값 = 100(필수)
maxPercentDeltaUnhealthyNodes 추가 비정상 노드 백분율 int

제약 조건:
최소값 = 0
최대값 = 100(필수)
maxPercentUpgradeDomainDeltaUnhealthyNodes 업그레이드 도메인당 추가 비정상 노드 백분율 int

제약 조건:
최소값 = 0
최대값 = 100(필수)

ClusterUpgradePolicy

이름 묘사
deltaHealthPolicy 델타 상태 정책 ClusterUpgradeDeltaHealthPolicy
forceRestart 노드를 강제로 다시 시작하거나 다시 시작하지 않음 bool
healthCheckRetryTimeout 상태 검사가 지속적으로 실패할 수 있는 기간입니다. .Net TimeSpan을 나타냅니다. string(필수)
healthCheckStableDuration 상태 검사가 지속적으로 통과해야 하는 기간이며 .Net TimeSpan을 나타냅니다. string(필수)
healthCheckWaitDuration 상태 검사를 수행하기 전에 업그레이드 도메인을 완료한 후 대기하는 기간이며 .Net TimeSpan을 나타냅니다. string(필수)
healthPolicy 클러스터 상태 정책 ClusterHealthPolicy(필수)
overrideUserUpgradePolicy 사용자 정의 업그레이드 정책 사용 여부 bool
upgradeDomainTimeout 업그레이드 도메인에 대한 시간 제한이며 .Net TimeSpan을 나타냅니다. string(필수)
upgradeReplicaSetCheckTimeout 복제본 집합 업그레이드가 완료되는 시간 제한입니다. .Net TimeSpan을 나타냅니다. string(필수)
upgradeTimeout 업그레이드 시간 제한은 .Net TimeSpan을 나타냅니다. string(필수)

DiagnosticsStorageAccountConfig

이름 묘사
blobEndpoint 진단 스토리지 계정 Blob 엔드포인트 string(필수)
protectedAccountKeyName 보호된 진단 스토리지 키 이름 string(필수)
queueEndpoint 진단 스토리지 계정 큐 엔드포인트 string(필수)
storageAccountName 진단 스토리지 계정 이름 string(필수)
tableEndpoint 진단 스토리지 계정 테이블 엔드포인트 string(필수)

EndpointRangeDescription

이름 묘사
endPort 포트 범위의 끝 포트 int(필수)
startPort 포트 범위의 시작 포트 int(필수)

Microsoft.ServiceFabric/clusters

이름 묘사
apiVersion api 버전 '2016-09-01'
위치 리소스 위치입니다. string(필수)
이름 리소스 이름 string(필수)
속성 클러스터 리소스 속성 ClusterProperties
태그 리소스 태그 태그 이름 및 값의 사전입니다. 템플릿 태그를 참조하세요.
리소스 종류 'Microsoft.ServiceFabric/clusters'

NodeTypeDescription

이름 묘사
applicationPorts 애플리케이션에서 사용하는 포트 EndpointRangeDescription
용량 노드 형식의 노드에 적용되는 용량 태그인 클러스터 리소스 관리자는 이러한 태그를 사용하여 노드에 있는 리소스의 양을 이해합니다. nodeTypeDescriptionCapacities
clientConnectionEndpointPort TCP 클러스터 관리 엔드포인트 포트 int(필수)
durabilityLevel 노드 형식 내구성 수준 '브론즈'
'골드'
'실버'
ephemeralPorts 시스템 할당 애플리케이션 포트 EndpointRangeDescription
httpGatewayEndpointPort HTTP 클러스터 관리 엔드포인트 포트 int(필수)
isPrimary 이를 주 노드 형식으로 표시 bool(필수)
이름 노드 형식의 이름 string(필수)
placementProperties 노드 형식의 노드에 적용되는 배치 태그로, 특정 서비스(워크로드)가 실행되어야 하는 위치를 나타내는 데 사용할 수 있습니다. NodeTypeDescriptionPlacementProperties
reverseProxyEndpointPort 역방향 프록시에서 사용하는 엔드포인트 int
vmInstanceCount 노드 형식의 노드 인스턴스 수 int

제약 조건:
최소값 = 1
최대값 = 2147483647(필수)

NodeTypeDescriptionCapacities

이름 묘사

NodeTypeDescriptionPlacementProperties

이름 묘사

ResourceTags

이름 묘사

SettingsParameterDescription

이름 묘사
이름 설정 속성의 이름 string(필수)
속성의 값입니다. string(필수)

SettingsSectionDescription

이름 묘사
이름 설정 섹션의 이름 string(필수)
매개 변수 섹션의 설정 컬렉션, 각 설정은 설정 이름 및 값으로 구성된 튜플입니다. SettingsParameterDescription[] (필수)

빠른 시작 템플릿

다음 빠른 시작 템플릿은 이 리소스 유형을 배포합니다.

템플렛 묘사
NSG를 사용하도록 설정된 3 Nodetype 보안 클러스터 배포

Azure 배포
이 템플릿을 사용하면 Standard_D2 크기 VM에서 Windows Server 2016 데이터 센터를 실행하는 안전한 3 nodetype Service Fabric 클러스터를 배포할 수 있습니다. 이 템플릿을 사용하면 네트워크 보안 그룹을 사용하여 인바운드 및 아웃바운드 네트워크 트래픽을 제어할 수 있습니다.
5 노드 보안 클러스터 배포

Azure 배포
이 템플릿을 사용하면 windows Server 2019 Datacenter를 실행하는 보안 5 노드 Service Fabric 클러스터를 Standard_D2_v2 크기 VMSS에 배포할 수 있습니다.
5 Node Ubuntu Service Fabric 클러스터 배포

Azure 배포
이 템플릿을 사용하면 Standard_D2_V2 크기 VMSS에서 Ubuntu를 실행하는 보안 5 노드 Service Fabric 클러스터를 배포할 수 있습니다.

Terraform(AzAPI 공급자) 리소스 정의

다음을 대상으로 하는 작업을 사용하여 클러스터 리소스 유형을 배포할 수 있습니다.

  • 리소스 그룹

각 API 버전에서 변경된 속성 목록은 변경 로그참조하세요.

리소스 형식

Microsoft.ServiceFabric/clusters 리소스를 만들려면 템플릿에 다음 Terraform을 추가합니다.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.ServiceFabric/clusters@2016-09-01"
  name = "string"
  location = "string"
  tags = {
    {customized property} = "string"
  }
  body = jsonencode({
    properties = {
      azureActiveDirectory = {
        clientApplication = "string"
        clusterApplication = "string"
        tenantId = "string"
      }
      certificate = {
        thumbprint = "string"
        thumbprintSecondary = "string"
        x509StoreName = "string"
      }
      clientCertificateCommonNames = [
        {
          certificateCommonName = "string"
          certificateIssuerThumbprint = "string"
          isAdmin = bool
        }
      ]
      clientCertificateThumbprints = [
        {
          certificateThumbprint = "string"
          isAdmin = bool
        }
      ]
      clusterCodeVersion = "string"
      diagnosticsStorageAccountConfig = {
        blobEndpoint = "string"
        protectedAccountKeyName = "string"
        queueEndpoint = "string"
        storageAccountName = "string"
        tableEndpoint = "string"
      }
      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"
      }
      upgradeDescription = {
        deltaHealthPolicy = {
          maxPercentDeltaUnhealthyApplications = int
          maxPercentDeltaUnhealthyNodes = int
          maxPercentUpgradeDomainDeltaUnhealthyNodes = int
        }
        forceRestart = bool
        healthCheckRetryTimeout = "string"
        healthCheckStableDuration = "string"
        healthCheckWaitDuration = "string"
        healthPolicy = {
          maxPercentUnhealthyApplications = int
          maxPercentUnhealthyNodes = int
        }
        overrideUserUpgradePolicy = bool
        upgradeDomainTimeout = "string"
        upgradeReplicaSetCheckTimeout = "string"
        upgradeTimeout = "string"
      }
      upgradeMode = "string"
      vmImage = "string"
    }
  })
}

속성 값

AzureActiveDirectory

이름 묘사
clientApplication Azure Active Directory 클라이언트 애플리케이션 ID 문자열
clusterApplication Azure Active Directory 클러스터 애플리케이션 ID 문자열
tenantId Azure Active Directory 테넌트 ID 문자열

CertificateDescription

이름 묘사
지문 기본 인증서의 지문 string(필수)
thumbprintSecondary 보조 인증서의 지문 문자열
x509StoreName 로컬 인증서 저장소 위치 'AddressBook'
'AuthRoot'
'CertificateAuthority'
'허용되지 않음'
'My'
'Root'
'TrustedPeople'
'TrustedPublisher'

ClientCertificateCommonName

이름 묘사
certificateCommonName 액세스 권한을 부여할 인증서 일반 이름; 와일드카드 일반 이름을 사용하여 주의해야 합니다. string(필수)
certificateIssuerThumbprint 인증서 발급자 지문 string(필수)
isAdmin 이 인증서는 클라이언트의 관리자 액세스에 사용되며, false인 경우 액세스만 사용하거나 쿼리합니다. bool(필수)

ClientCertificateThumbprint

이름 묘사
certificateThumbprint 인증서 지문 string(필수)
isAdmin 이 인증서는 클라이언트의 관리자 액세스에 사용되며 false인 경우 사용되거나 액세스만 쿼리합니다. bool(필수)

ClusterHealthPolicy

이름 묘사
maxPercentUnhealthyApplications 오류를 보고하기 전에 허용되는 비정상 애플리케이션의 최대 백분율입니다. 예를 들어 10개% 애플리케이션이 비정상이 되도록 하려면 이 값은 10입니다. int

제약 조건:
최소값 = 0
최대값 = 100
maxPercentUnhealthyNodes 오류를 보고하기 전에 허용되는 비정상 노드의 최대 백분율입니다. 예를 들어 노드 10개% 비정상이 되도록 하려면 이 값은 10입니다. int

제약 조건:
최소값 = 0
최대값 = 100

ClusterProperties

이름 묘사
azureActiveDirectory 클러스터에서 AAD 인증을 사용하도록 설정하는 설정 AzureActiveDirectory
증명서 이 기본 인증서는 노드 보안에 대한 클러스터 노드, 클러스터 관리 엔드포인트용 SSL 인증서 및 기본 관리 클라이언트로 사용됩니다. CertificateDescription
clientCertificateCommonNames 일반 이름에 따라 신뢰할 클라이언트 인증서 목록 ClientCertificateCommonName[]
clientCertificateThumbprints 클라이언트 지문 세부 정보- 클러스터 작업에 대한 클라이언트 액세스에 사용됩니다. ClientCertificateThumbprint[]
clusterCodeVersion 클러스터에서 실행되는 ServiceFabric 코드 버전 문자열
diagnosticsStorageAccountConfig 스토리지 진단 계정 구성 세부 정보 DiagnosticsStorageAccountConfig
fabricSettings 클러스터를 구성할 사용자 지정 패브릭 설정 목록입니다. SettingsSectionDescription[]
managementEndpoint 클러스터의 http 관리 엔드포인트 string(필수)
nodeTypes 클러스터를 구성하는 노드 형식 목록 NodeTypeDescription[] (필수)
reliabilityLevel 클러스터 안정성 수준은 시스템 서비스의 복제본 집합 크기를 나타냅니다. '브론즈'
'골드'
'플래티넘'
'실버'
reverseProxyCertificate 역방향 프록시에서 사용하는 서버 인증서 CertificateDescription
upgradeDescription 클러스터를 업그레이드할 때 사용할 정책입니다. clusterUpgradePolicy
upgradeMode 클러스터 업그레이드 모드는 패브릭 업그레이드가 시스템에서 자동으로 시작되는지 여부를 나타냅니다. 'Automatic'
'수동'
vmImage VM 이미지 VMSS의 이름이 구성되었습니다. Windows 또는 Linux와 같은 제네릭 이름을 사용할 수 있습니다. 문자열

ClusterUpgradeDeltaHealthPolicy

이름 묘사
maxPercentDeltaUnhealthyApplications 추가 비정상 애플리케이션 비율 int

제약 조건:
최소값 = 0
최대값 = 100(필수)
maxPercentDeltaUnhealthyNodes 추가 비정상 노드 백분율 int

제약 조건:
최소값 = 0
최대값 = 100(필수)
maxPercentUpgradeDomainDeltaUnhealthyNodes 업그레이드 도메인당 추가 비정상 노드 백분율 int

제약 조건:
최소값 = 0
최대값 = 100(필수)

ClusterUpgradePolicy

이름 묘사
deltaHealthPolicy 델타 상태 정책 ClusterUpgradeDeltaHealthPolicy
forceRestart 노드를 강제로 다시 시작하거나 다시 시작하지 않음 bool
healthCheckRetryTimeout 상태 검사가 지속적으로 실패할 수 있는 기간입니다. .Net TimeSpan을 나타냅니다. string(필수)
healthCheckStableDuration 상태 검사가 지속적으로 통과해야 하는 기간이며 .Net TimeSpan을 나타냅니다. string(필수)
healthCheckWaitDuration 상태 검사를 수행하기 전에 업그레이드 도메인을 완료한 후 대기하는 기간이며 .Net TimeSpan을 나타냅니다. string(필수)
healthPolicy 클러스터 상태 정책 ClusterHealthPolicy(필수)
overrideUserUpgradePolicy 사용자 정의 업그레이드 정책 사용 여부 bool
upgradeDomainTimeout 업그레이드 도메인에 대한 시간 제한이며 .Net TimeSpan을 나타냅니다. string(필수)
upgradeReplicaSetCheckTimeout 복제본 집합 업그레이드가 완료되는 시간 제한입니다. .Net TimeSpan을 나타냅니다. string(필수)
upgradeTimeout 업그레이드 시간 제한은 .Net TimeSpan을 나타냅니다. string(필수)

DiagnosticsStorageAccountConfig

이름 묘사
blobEndpoint 진단 스토리지 계정 Blob 엔드포인트 string(필수)
protectedAccountKeyName 보호된 진단 스토리지 키 이름 string(필수)
queueEndpoint 진단 스토리지 계정 큐 엔드포인트 string(필수)
storageAccountName 진단 스토리지 계정 이름 string(필수)
tableEndpoint 진단 스토리지 계정 테이블 엔드포인트 string(필수)

EndpointRangeDescription

이름 묘사
endPort 포트 범위의 끝 포트 int(필수)
startPort 포트 범위의 시작 포트 int(필수)

Microsoft.ServiceFabric/clusters

이름 묘사
위치 리소스 위치입니다. string(필수)
이름 리소스 이름 string(필수)
속성 클러스터 리소스 속성 ClusterProperties
태그 리소스 태그 태그 이름 및 값의 사전입니다.
리소스 종류 "Microsoft.ServiceFabric/clusters@2016-09-01"

NodeTypeDescription

이름 묘사
applicationPorts 애플리케이션에서 사용하는 포트 EndpointRangeDescription
용량 노드 형식의 노드에 적용되는 용량 태그인 클러스터 리소스 관리자는 이러한 태그를 사용하여 노드에 있는 리소스의 양을 이해합니다. nodeTypeDescriptionCapacities
clientConnectionEndpointPort TCP 클러스터 관리 엔드포인트 포트 int(필수)
durabilityLevel 노드 형식 내구성 수준 '브론즈'
'골드'
'실버'
ephemeralPorts 시스템 할당 애플리케이션 포트 EndpointRangeDescription
httpGatewayEndpointPort HTTP 클러스터 관리 엔드포인트 포트 int(필수)
isPrimary 이를 주 노드 형식으로 표시 bool(필수)
이름 노드 형식의 이름 string(필수)
placementProperties 노드 형식의 노드에 적용되는 배치 태그로, 특정 서비스(워크로드)가 실행되어야 하는 위치를 나타내는 데 사용할 수 있습니다. NodeTypeDescriptionPlacementProperties
reverseProxyEndpointPort 역방향 프록시에서 사용하는 엔드포인트 int
vmInstanceCount 노드 형식의 노드 인스턴스 수 int

제약 조건:
최소값 = 1
최대값 = 2147483647(필수)

NodeTypeDescriptionCapacities

이름 묘사

NodeTypeDescriptionPlacementProperties

이름 묘사

ResourceTags

이름 묘사

SettingsParameterDescription

이름 묘사
이름 설정 속성의 이름 string(필수)
속성의 값입니다. string(필수)

SettingsSectionDescription

이름 묘사
이름 설정 섹션의 이름 string(필수)
매개 변수 섹션의 설정 컬렉션, 각 설정은 설정 이름 및 값으로 구성된 튜플입니다. SettingsParameterDescription[] (필수)