Share via


Microsoft.ServiceFabric managedClusters

Bicep 리소스 정의

managedClusters 리소스 종류는 다음을 대상으로 하는 작업으로 배포할 수 있습니다.

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

리소스 형식

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

resource symbolicname 'Microsoft.ServiceFabric/managedClusters@2024-04-01' = {
  name: 'string'
  location: 'string'
  tags: {
    tagName1: 'tagValue1'
    tagName2: 'tagValue2'
  }
  sku: {
    name: 'string'
  }
  properties: {
    addonFeatures: [
      'string'
    ]
    adminPassword: 'string'
    adminUserName: 'string'
    allowRdpAccess: bool
    applicationTypeVersionsCleanupPolicy: {
      maxUnusedVersionsToKeep: int
    }
    auxiliarySubnets: [
      {
        enableIpv6: bool
        name: 'string'
        networkSecurityGroupId: 'string'
        privateEndpointNetworkPolicies: 'string'
        privateLinkServiceNetworkPolicies: 'string'
      }
    ]
    azureActiveDirectory: {
      clientApplication: 'string'
      clusterApplication: 'string'
      tenantId: 'string'
    }
    clientConnectionPort: int
    clients: [
      {
        commonName: 'string'
        isAdmin: bool
        issuerThumbprint: 'string'
        thumbprint: 'string'
      }
    ]
    clusterCodeVersion: 'string'
    clusterUpgradeCadence: 'string'
    clusterUpgradeMode: 'string'
    ddosProtectionPlanId: 'string'
    dnsName: 'string'
    enableAutoOSUpgrade: bool
    enableHttpGatewayExclusiveAuthMode: bool
    enableIpv6: bool
    enableServicePublicIP: bool
    fabricSettings: [
      {
        name: 'string'
        parameters: [
          {
            name: 'string'
            value: 'string'
          }
        ]
      }
    ]
    httpGatewayConnectionPort: int
    httpGatewayTokenAuthConnectionPort: int
    ipTags: [
      {
        ipTagType: 'string'
        tag: 'string'
      }
    ]
    loadBalancingRules: [
      {
        backendPort: int
        frontendPort: int
        loadDistribution: 'string'
        probePort: int
        probeProtocol: 'string'
        probeRequestPath: 'string'
        protocol: 'string'
      }
    ]
    networkSecurityRules: [
      {
        access: 'string'
        description: 'string'
        destinationAddressPrefix: 'string'
        destinationAddressPrefixes: [
          'string'
        ]
        destinationPortRange: 'string'
        destinationPortRanges: [
          'string'
        ]
        direction: 'string'
        name: 'string'
        priority: int
        protocol: 'string'
        sourceAddressPrefix: 'string'
        sourceAddressPrefixes: [
          'string'
        ]
        sourcePortRange: 'string'
        sourcePortRanges: [
          'string'
        ]
      }
    ]
    publicIPPrefixId: 'string'
    publicIPv6PrefixId: 'string'
    serviceEndpoints: [
      {
        locations: [
          'string'
        ]
        service: 'string'
      }
    ]
    subnetId: 'string'
    upgradeDescription: {
      deltaHealthPolicy: {
        maxPercentDeltaUnhealthyApplications: int
        maxPercentDeltaUnhealthyNodes: int
        maxPercentUpgradeDomainDeltaUnhealthyNodes: int
      }
      forceRestart: bool
      healthPolicy: {
        maxPercentUnhealthyApplications: int
        maxPercentUnhealthyNodes: int
      }
      monitoringPolicy: {
        healthCheckRetryTimeout: 'string'
        healthCheckStableDuration: 'string'
        healthCheckWaitDuration: 'string'
        upgradeDomainTimeout: 'string'
        upgradeTimeout: 'string'
      }
      upgradeReplicaSetCheckTimeout: 'string'
    }
    useCustomVnet: bool
    zonalResiliency: bool
    zonalUpdateMode: 'string'
  }
}

속성 값

managedClusters

Name Description
name 리소스 이름 string(필수)
위치 Azure 리소스 위치. string(필수)
tags Azure 리소스 태그. 태그 이름 및 값의 사전입니다. 템플릿의 태그를 참조하세요.
sku 관리형 클러스터의 sku Sku (필수)
properties 관리형 클러스터 리소스 속성 ManagedClusterProperties

ManagedClusterProperties

Name Description
addonFeatures 클러스터에서 사용하도록 설정할 추가 기능 목록입니다. 다음 중 어느 것을 포함하는 문자열 배열:
'BackupRestoreService'
'DnsService'
'ResourceMonitorService'
adminPassword VM 관리자 사용자 암호입니다. string

제약 조건:
중요한 값입니다. 보안 매개 변수로 전달합니다.
adminUserName VM 관리자 사용자 이름입니다. string(필수)
allowRdpAccess 이를 true로 설정하면 VM에 대한 RDP 액세스가 가능합니다. 기본 NSG 규칙은 사용자 지정 네트워크 보안 규칙으로 재정의할 수 있는 인터넷으로 RDP 포트를 엽니다. 이 설정의 기본값은 false입니다. bool
applicationTypeVersionsCleanupPolicy 사용되지 않는 버전을 클린 데 사용되는 정책입니다. ApplicationTypeVersionsCleanupPolicy
auxiliarySubnets 클러스터에 대한 보조 서브넷입니다. 서브넷[]
azureActiveDirectory 클러스터의 AAD 인증 설정입니다. AzureActiveDirectory
clientConnectionPort 클러스터에 대한 클라이언트 연결에 사용되는 포트입니다. int
클라이언트 클러스터를 관리할 수 있는 클라이언트 인증서입니다. ClientCertificate[]
clusterCodeVersion 클러스터의 Service Fabric 런타임 버전입니다. clusterUpgradeMode가 'Manual'으로 설정된 경우 이 속성이 필요합니다. 새 클러스터에 사용 가능한 Service Fabric 버전 목록을 얻으려면 ClusterVersion API를 사용합니다. 기존 클러스터에 사용 가능한 버전 목록을 얻으려면 availableClusterVersions를 사용합니다. string
clusterUpgradeCadence 새 클러스터 런타임 버전 업그레이드가 릴리스된 후 적용되는 시기를 나타냅니다. 기본적으로 Wave0입니다. clusterUpgradeMode가 'Automatic'으로 설정된 경우에만 적용됩니다. 'Wave0'
'Wave1'
'Wave2'
clusterUpgradeMode 새 Service Fabric 런타임 버전을 사용할 수 있는 경우 클러스터의 업그레이드 모드입니다. 'Automatic'
'수동'
ddosProtectionPlanId 클러스터의 가상 네트워크와 연결될 DDoS 네트워크 보호 계획의 리소스 ID를 지정합니다. string
dnsName 클러스터 dns 이름입니다. string(필수)
enableAutoOSUpgrade 이를 true로 설정하면 버전이 'latest'인 모든 플랫폼 OS 이미지를 사용하여 만든 노드 유형에 대해 자동 OS 업그레이드가 가능합니다. 이 설정의 기본값은 false입니다. bool
enableHttpGatewayExclusiveAuthMode true이면 HttpGatewayEndpoint에서 토큰 기반 인증이 허용되지 않습니다. 이는 TLS 버전 1.3 이상을 지원하는 데 필요합니다. 토큰 기반 인증을 사용하는 경우 HttpGatewayTokenAuthConnectionPort를 정의해야 합니다. bool
enableIpv6 이를 true로 설정하면 클러스터에서 사용하는 기본 VNet에 대한 IPv6 주소 공간이 만들어집니다. 클러스터를 만든 후에는 이 설정을 변경할 수 없습니다. 이 설정의 기본값은 false입니다. bool
enableServicePublicIP 이를 true로 설정하면 IPv4 주소가 IPv6 주소의 ServicePublicIP로 연결됩니다. 클러스터에서 IPv6을 사용하도록 설정한 경우에만 True로 설정할 수 있습니다. bool
fabricSettings 클러스터를 구성할 사용자 지정 패브릭 설정 목록입니다. SettingsSectionDescription[]
httpGatewayConnectionPort 클러스터에 대한 HTTP 연결에 사용되는 포트입니다. int
httpGatewayTokenAuthConnectionPort 클러스터에 대한 토큰 인증 기반 HTTPS 연결에 사용되는 포트입니다. HttpGatewayEndpoint와 동일한 포트로 설정할 수 없습니다. int
ipTags 클러스터의 기본 공용 IP 주소와 연결된 IP 태그 목록입니다. IpTag[]
loadBalancingRules 클러스터의 공용 부하 분산 장치에 적용되는 부하 분산 규칙입니다. LoadBalancingRule[]
networkSecurityRules 클러스터의 Virtual Network 적용되는 사용자 지정 네트워크 보안 규칙입니다. NetworkSecurityRule[]
publicIPPrefixId 부하 분산 장치가 공용 IPv4 주소를 할당할 공용 IPv4 접두사 리소스 ID를 지정합니다. 클러스터를 만든 후에는 이 설정을 변경할 수 없습니다. string
publicIPv6PrefixId 부하 분산 장치가 공용 IPv6 주소를 할당할 공용 IPv6 접두사 리소스 ID를 지정합니다. 클러스터를 만든 후에는 이 설정을 변경할 수 없습니다. 문자열
serviceEndpoints 클러스터의 서브넷에 대한 서비스 엔드포인트입니다. ServiceEndpoint[]
subnetId 지정된 경우 클러스터의 노드 형식은 기본 VNet 대신 이 서브넷에 만들어집니다. 클러스터에 대해 지정된 networkSecurityRules 도 이 서브넷에 적용됩니다. 클러스터를 만든 후에는 이 설정을 변경할 수 없습니다. 문자열
upgradeDescription 클러스터를 업그레이드할 때 사용할 정책입니다. ClusterUpgradePolicy
useCustomVnet 새 클러스터의 경우 이 매개 변수는 Bring Your Own VNet을 사용하지만 서브넷은 노드 유형 수준에서 지정됨을 나타냅니다. 이러한 클러스터의 경우 노드 형식에 subnetId 속성이 필요합니다. bool
zonalResiliency 클러스터에 영역 복원력이 있는지를 나타냅니다. bool
zonalUpdateMode 교차 Az 클러스터의 업데이트 모드를 나타냅니다. 'Fast'
'표준'

ApplicationTypeVersionsCleanupPolicy

Name Description
maxUnusedVersionsToKeep 유지할 애플리케이션 유형당 사용되지 않는 버전 수입니다. int(필수)

제약 조건:
최소값 = 0

서브넷

Name Description
enableIpv6 Ipv6을 사용하도록 설정할 웨더를 나타냅니다. 제공되지 않으면 클러스터와 동일한 구성을 사용합니다. bool
name 서브넷 이름입니다. string(필수)
networkSecurityGroupId 네트워크 보안 그룹의 전체 리소스 ID입니다. 문자열
privateEndpointNetworkPolicies 서브넷의 프라이빗 엔드포인트에 네트워크 정책 적용을 사용하거나 사용하지 않도록 설정합니다. 'disabled'
'enabled'
privateLinkServiceNetworkPolicies 서브넷의 프라이빗 링크 서비스에 네트워크 정책 적용을 사용하거나 사용하지 않도록 설정합니다. 'disabled'
'enabled'

AzureActiveDirectory

Name Description
clientApplication Azure Active Directory 클라이언트 애플리케이션 ID입니다. 문자열
clusterApplication Azure Active Directory 클러스터 애플리케이션 ID입니다. 문자열
tenantId Azure Active Directory 테넌트 ID입니다. string

ClientCertificate

Name Description
commonName 인증서 일반 이름입니다. string
isAdmin 클라이언트 인증서에 클러스터에 대한 관리자 액세스 권한이 있는지를 나타냅니다. 관리자가 아닌 클라이언트는 클러스터에서 읽기 전용 작업만 수행할 수 있습니다. bool(필수)
issuerThumbprint 인증서에 대한 발급자 지문입니다. CommonName과 함께만 사용됩니다. string
thumbprint 인증서 지문입니다. string

SettingsSectionDescription

Name Description
name 패브릭 설정의 섹션 이름입니다. string(필수)
매개 변수 섹션의 매개 변수 컬렉션입니다. SettingsParameterDescription[] (필수)

SettingsParameterDescription

Name Description
name 패브릭 설정의 매개 변수 이름입니다. string(필수)
패브릭 설정의 매개 변수 값입니다. string(필수)

IpTag

Name Description
ipTagType IP 태그 유형입니다. 예: FirstPartyUsage. string(필수)
태그 공용 IP와 연결된 IP 태그입니다. 예: SQL, 스토리지 등 string(필수)

LoadBalancingRule

Name Description
backendPort 엔드포인트의 내부 연결에 사용되는 포트입니다. 허용되는 값은 1에서 65535 사이입니다. int(필수)

제약 조건:
최소값 = 1
최대값 = 65534
frontendPort 외부 엔드포인트에 대한 포트입니다. 각 규칙의 포트 번호는 Load Balancer 내에서 고유해야 합니다. 허용되는 값은 1에서 65534 사이입니다. int(필수)

제약 조건:
최소값 = 1
최대값 = 65534
loadDistribution 이 규칙에 대한 부하 분산 정책입니다. string
probePort 부하 분산 규칙에 사용되는 프로브 포트입니다. 허용되는 값은 1에서 65535 사이입니다. int

제약 조건:
최소값 = 1
최대값 = 65534
probeProtocol 부하 분산 규칙에서 사용하는 부하 분산 장치 프로브에 대한 참조입니다. 'http'
'https'
'tcp'(필수)
probeRequestPath 프로브 요청 경로입니다. HTTP/HTTPS 프로브에 대해서만 지원됩니다. 문자열
protocol 부하 분산 규칙에서 사용하는 전송 프로토콜에 대한 참조입니다. 'tcp'
'udp'(필수)

NetworkSecurityRule

Name Description
access 네트워크 트래픽이 허용되거나 거부됩니다. 'allow'
'deny'(필수)
description 네트워크 보안 규칙 설명입니다. 문자열
destinationAddressPrefix 대상 주소 접두사입니다. CIDR 또는 대상 IP 범위입니다. 모든 원본 IP가 일치하도록 별표(‘*’)를 사용할 수도 있습니다. 'VirtualNetwork', 'AzureLoadBalancer' 및 'Internet'과 같은 기본 태그도 사용할 수 있습니다. 문자열
destinationAddressPrefixes 대상 주소 접두사입니다. CIDR 또는 대상 IP 범위. string[]
destinationPortRange 대상 포트 또는 범위입니다. 정수 또는 범위는 0에서 65535 사이입니다. 별표 '*'를 사용하여 모든 포트를 일치시킬 수도 있습니다. 문자열
destinationPortRanges 대상 포트 범위입니다. string[]
direction 네트워크 보안 규칙 방향. '인바운드'
'아웃바운드'(필수)
name 네트워크 보안 규칙 이름입니다. string(필수)
priority 규칙의 우선 순위입니다. 값은 1000~3000 범위일 수 있습니다. 이 범위를 벗어난 값은 Service Fabric ManagerCluster 리소스 공급자용으로 예약됩니다. 우선 순위 번호는 컬렉션의 각 규칙에 대해 고유해야 합니다. 우선 순위 번호가 낮을수록 규칙의 우선 순위가 높습니다. int(필수)

제약 조건:
최소값 = 1000
최대값 = 3000
protocol 이 규칙이 적용되는 네트워크 프로토콜입니다. '아'
'esp'
'http'
'https'
'icmp'
'tcp'
'udp'(필수)
sourceAddressPrefix CIDR 또는 원본 IP 범위입니다. 모든 원본 IP가 일치하도록 별표(‘*’)를 사용할 수도 있습니다. 'VirtualNetwork', 'AzureLoadBalancer' 및 'Internet'과 같은 기본 태그도 사용할 수 있습니다. 수신 규칙인 경우 네트워크 트래픽이 시작되는 위치를 지정합니다. 문자열
sourceAddressPrefixes CIDR 또는 원본 IP 범위입니다. string[]
sourcePortRange 원본 포트 또는 범위입니다. 정수 또는 범위는 0에서 65535 사이입니다. 별표 '*'를 사용하여 모든 포트를 일치시킬 수도 있습니다. 문자열
sourcePortRanges 원본 포트 범위입니다. string[]

ServiceEndpoint

Name Description
위치 위치 목록입니다. string[]
서비스 엔드포인트 서비스의 형식입니다. string(필수)

ClusterUpgradePolicy

Name Description
deltaHealthPolicy 클러스터 델타 상태 정책은 클러스터 업그레이드 중에 클러스터의 상태를 평가하는 데 사용되는 상태 정책을 정의합니다. ClusterUpgradeDeltaHealthPolicy
forceRestart true이면 코드 버전이 변경되지 않은 경우에도 업그레이드 중에 프로세스가 강제로 다시 시작됩니다(업그레이드는 구성 또는 데이터만 변경됨). bool
healthPolicy 클러스터 상태 정책은 클러스터 업그레이드 중에 클러스터의 상태를 평가하는 데 사용되는 상태 정책을 정의합니다. ClusterHealthPolicy
monitoringPolicy 클러스터 모니터링 정책은 모니터링 모드에서 업그레이드를 모니터링하기 위한 매개 변수를 설명합니다. ClusterMonitoringPolicy
upgradeReplicaSetCheckTimeout 예기치 않은 문제가 있을 때 업그레이드 도메인의 처리를 차단하고 가용성의 손실을 방지하는 최대 시간입니다.
이 시간 제한이 만료되면 가용성 손실 문제와 상관없이 업그레이드 도메인 처리가 진행됩니다.
시간 제한은 각 업그레이드 도메인의 시작 시 다시 설정됩니다. 시간 제한은 hh:mm:ss 또는 d.hh:mm:ss.ms 형식일 수 있습니다.
이 값은 00:00:00에서 49710.06:28:15 사이여야 합니다(부호 없는 32비트 정수(초))
string

ClusterUpgradeDeltaHealthPolicy

Name Description
maxPercentDeltaUnhealthyApplications 클러스터 업그레이드 중에 허용되는 최대 애플리케이션 상태 저하 비율입니다.
델타는 업그레이드 시작 시 애플리케이션의 상태와 상태 평가 시 애플리케이션의 상태 간에 측정됩니다.
클러스터의 전역 상태를 허용 한도 내로 유지하기 위해 업그레이드 도메인 업그레이드가 완료될 때마다 검사가 수행됩니다. 시스템 서비스는 이에 포함되지 않습니다.
참고: 이 값은 속성에 지정된 값을 덮어씁니다. UpgradeDescription.HealthPolicy.MaxPercentUnhealthyApplications
int

제약 조건:
최소값 = 0
최대값 = 100
maxPercentDeltaUnhealthyNodes 클러스터를 업그레이드하는 동안 허용되는 노드 상태 저하의 최대 비율입니다.
델타는 업그레이드 시작 시 노드 상태와 상태 평가 시 노드 상태 간에 측정됩니다.
클러스터의 전역 상태를 허용 한도 내로 유지하기 위해 업그레이드 도메인 업그레이드가 완료될 때마다 검사가 수행됩니다.
int(필수)

제약 조건:
최소값 = 0
최대값 = 100
maxPercentUpgradeDomainDeltaUnhealthyNodes 클러스터를 업그레이드하는 동안 허용되는 업그레이드 도메인 노드 상태 저하의 최대 비율입니다.
델타는 업그레이드 시작 시 업그레이드 도메인 노드 상태와 상태 평가 시 업그레이드 도메인 노드 상태 간에 측정됩니다.
클러스터의 전역 상태를 허용 한도 내로 유지하기 위해 업그레이드 도메인 업그레이드가 완료될 때마다 완료된 업그레이드 도메인에 대한 검사가 수행됩니다.
int

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

ClusterHealthPolicy

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

비율은 클러스터에서 오류로 처리하기 전에 비정상 상태로 있을 수 있는 애플리케이션의 최대 허용 비율을 나타냅니다.
비율은 지켜지나 비정상 애플리케이션이 적어도 하나 있다면 상태는 경고로 평가됩니다.
이 값은 클러스터에 있는 애플리케이션 인스턴스의 총 수를 비정상 애플리케이션의 수로 나눠 계산합니다. 이 때 ApplicationTypeHealthPolicyMap에 포함된 애플리케이션 형식의 애플리케이션은 제외합니다.
계산값은 적은 수의 애플리케이션에서 오류 하나를 허용할 수 있도록 반올림됩니다. 기본 비율은 0입니다.
int(필수)

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

비율은 클러스터에서 오류로 처리하기 전에 비정상 상태로 있을 수 있는 노드의 최대 허용 비율을 나타냅니다.
비율은 지켜지나 비정상 노드가 적어도 하나 있다면 상태는 경고로 평가됩니다.
이 백분율은 클러스터에 있는 노드 총 수를 비정상 노드 수로 나눠 계산합니다.
계산값은 적은 수의 노드에서 오류 하나를 허용할 수 있도록 반올림됩니다. 기본 비율은 0입니다.

대형 클러스터에는 항상 복구를 위해 다운되거나 중단되는 노드가 있으므로 이를 감안하여 이 비율을 구성해야 합니다.
int(필수)

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

ClusterMonitoringPolicy

Name Description
healthCheckRetryTimeout 업그레이드가 롤백되기 전에 애플리케이션 또는 클러스터가 비정상일 때 상태 평가를 다시 시도하는 시간입니다. 시간 제한은 hh:mm:ss 또는 d.hh:mm:ss.ms 형식일 수 있습니다. string(필수)
healthCheckStableDuration 업그레이드가 다음 업그레이드 도메인으로 진행되기 전에 애플리케이션 또는 클러스터가 정상 상태로 유지되어야 하는 시간입니다. 기간은 hh:mm:ss 또는 d.hh:mm:ss.ms 형식일 수 있습니다. string(필수)
healthCheckWaitDuration 상태 검사를 수행하기 전에 업그레이드 도메인을 완료한 후 대기할 시간입니다. 기간은 hh:mm:ss 또는 d.hh:mm:ss.ms 형식일 수 있습니다. string(필수)
upgradeDomainTimeout 업그레이드가 롤백되기 전에 각 업그레이드 도메인을 완료해야 하는 시간입니다. 시간 제한은 hh:mm:ss 또는 d.hh:mm:ss.ms 형식일 수 있습니다. string(필수)
upgradeTimeout 업그레이드가 롤백되기 전에 전체 업그레이드를 완료해야 하는 시간입니다. 시간 제한은 hh:mm:ss 또는 d.hh:mm:ss.ms 형식일 수 있습니다. string(필수)

SKU

Name Description
name Sku 이름입니다. 'Basic'
'Standard'(필수)

ARM 템플릿 리소스 정의

managedClusters 리소스 종류는 다음을 대상으로 하는 작업으로 배포할 수 있습니다.

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

리소스 형식

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

{
  "type": "Microsoft.ServiceFabric/managedClusters",
  "apiVersion": "2024-04-01",
  "name": "string",
  "location": "string",
  "tags": {
    "tagName1": "tagValue1",
    "tagName2": "tagValue2"
  },
  "sku": {
    "name": "string"
  },
  "properties": {
    "addonFeatures": [ "string" ],
    "adminPassword": "string",
    "adminUserName": "string",
    "allowRdpAccess": "bool",
    "applicationTypeVersionsCleanupPolicy": {
      "maxUnusedVersionsToKeep": "int"
    },
    "auxiliarySubnets": [
      {
        "enableIpv6": "bool",
        "name": "string",
        "networkSecurityGroupId": "string",
        "privateEndpointNetworkPolicies": "string",
        "privateLinkServiceNetworkPolicies": "string"
      }
    ],
    "azureActiveDirectory": {
      "clientApplication": "string",
      "clusterApplication": "string",
      "tenantId": "string"
    },
    "clientConnectionPort": "int",
    "clients": [
      {
        "commonName": "string",
        "isAdmin": "bool",
        "issuerThumbprint": "string",
        "thumbprint": "string"
      }
    ],
    "clusterCodeVersion": "string",
    "clusterUpgradeCadence": "string",
    "clusterUpgradeMode": "string",
    "ddosProtectionPlanId": "string",
    "dnsName": "string",
    "enableAutoOSUpgrade": "bool",
    "enableHttpGatewayExclusiveAuthMode": "bool",
    "enableIpv6": "bool",
    "enableServicePublicIP": "bool",
    "fabricSettings": [
      {
        "name": "string",
        "parameters": [
          {
            "name": "string",
            "value": "string"
          }
        ]
      }
    ],
    "httpGatewayConnectionPort": "int",
    "httpGatewayTokenAuthConnectionPort": "int",
    "ipTags": [
      {
        "ipTagType": "string",
        "tag": "string"
      }
    ],
    "loadBalancingRules": [
      {
        "backendPort": "int",
        "frontendPort": "int",
        "loadDistribution": "string",
        "probePort": "int",
        "probeProtocol": "string",
        "probeRequestPath": "string",
        "protocol": "string"
      }
    ],
    "networkSecurityRules": [
      {
        "access": "string",
        "description": "string",
        "destinationAddressPrefix": "string",
        "destinationAddressPrefixes": [ "string" ],
        "destinationPortRange": "string",
        "destinationPortRanges": [ "string" ],
        "direction": "string",
        "name": "string",
        "priority": "int",
        "protocol": "string",
        "sourceAddressPrefix": "string",
        "sourceAddressPrefixes": [ "string" ],
        "sourcePortRange": "string",
        "sourcePortRanges": [ "string" ]
      }
    ],
    "publicIPPrefixId": "string",
    "publicIPv6PrefixId": "string",
    "serviceEndpoints": [
      {
        "locations": [ "string" ],
        "service": "string"
      }
    ],
    "subnetId": "string",
    "upgradeDescription": {
      "deltaHealthPolicy": {
        "maxPercentDeltaUnhealthyApplications": "int",
        "maxPercentDeltaUnhealthyNodes": "int",
        "maxPercentUpgradeDomainDeltaUnhealthyNodes": "int"
      },
      "forceRestart": "bool",
      "healthPolicy": {
        "maxPercentUnhealthyApplications": "int",
        "maxPercentUnhealthyNodes": "int"
      },
      "monitoringPolicy": {
        "healthCheckRetryTimeout": "string",
        "healthCheckStableDuration": "string",
        "healthCheckWaitDuration": "string",
        "upgradeDomainTimeout": "string",
        "upgradeTimeout": "string"
      },
      "upgradeReplicaSetCheckTimeout": "string"
    },
    "useCustomVnet": "bool",
    "zonalResiliency": "bool",
    "zonalUpdateMode": "string"
  }
}

속성 값

managedClusters

Name Description
형식 리소스 종류 'Microsoft.ServiceFabric/managedClusters'
apiVersion 리소스 api 버전 '2024-04-01'
name 리소스 이름 string(필수)
위치 Azure 리소스 위치. string(필수)
tags Azure 리소스 태그. 태그 이름 및 값의 사전입니다. 템플릿의 태그를 참조하세요.
sku 관리형 클러스터의 sku Sku (필수)
properties 관리형 클러스터 리소스 속성 ManagedClusterProperties

ManagedClusterProperties

Name Description
addonFeatures 클러스터에서 사용하도록 설정할 추가 기능 목록입니다. 다음 중 어느 것을 포함하는 문자열 배열:
'BackupRestoreService'
'DnsService'
'ResourceMonitorService'
adminPassword VM 관리자 사용자 암호입니다. 문자열

제약 조건:
중요한 값입니다. 보안 매개 변수로 전달합니다.
adminUserName VM 관리자 사용자 이름입니다. string(필수)
allowRdpAccess 이를 true로 설정하면 VM에 대한 RDP 액세스를 사용할 수 있습니다. 기본 NSG 규칙은 사용자 지정 네트워크 보안 규칙으로 재정의할 수 있는 인터넷으로 RDP 포트를 엽니다. 이 설정의 기본값은 false입니다. bool
applicationTypeVersionsCleanupPolicy 사용되지 않는 버전을 클린 데 사용되는 정책입니다. ApplicationTypeVersionsCleanupPolicy
auxiliarySubnets 클러스터에 대한 보조 서브넷입니다. 서브넷[]
azureActiveDirectory 클러스터의 AAD 인증 설정입니다. AzureActiveDirectory
clientConnectionPort 클러스터에 대한 클라이언트 연결에 사용되는 포트입니다. int
클라이언트 클러스터를 관리할 수 있는 클라이언트 인증서입니다. ClientCertificate[]
clusterCodeVersion 클러스터의 Service Fabric 런타임 버전입니다. clusterUpgradeMode가 '수동'으로 설정된 경우 이 속성이 필요합니다. 새 클러스터에 사용 가능한 Service Fabric 버전 목록을 얻으려면 ClusterVersion API를 사용합니다. 기존 클러스터에 사용 가능한 버전 목록을 얻으려면 availableClusterVersions를 사용합니다. 문자열
clusterUpgradeCadence 새 클러스터 런타임 버전 업그레이드가 릴리스된 후 적용되는 시기를 나타냅니다. 기본적으로 Wave0입니다. clusterUpgradeMode가 '자동'으로 설정된 경우에만 적용됩니다. 'Wave0'
'Wave1'
'Wave2'
clusterUpgradeMode 새 Service Fabric 런타임 버전을 사용할 수 있는 경우 클러스터의 업그레이드 모드입니다. 'Automatic'
'수동'
ddosProtectionPlanId 클러스터의 가상 네트워크와 연결될 DDoS 네트워크 보호 계획의 리소스 ID를 지정합니다. string
dnsName 클러스터 dns 이름입니다. string(필수)
enableAutoOSUpgrade 이를 true로 설정하면 버전이 'latest'인 플랫폼 OS 이미지를 사용하여 만든 노드 유형에 대한 자동 OS 업그레이드가 가능합니다. 이 설정의 기본값은 false입니다. bool
enableHttpGatewayExclusiveAuthMode true이면 HttpGatewayEndpoint에서 토큰 기반 인증이 허용되지 않습니다. 이는 TLS 버전 1.3 이상을 지원하는 데 필요합니다. 토큰 기반 인증을 사용하는 경우 HttpGatewayTokenAuthConnectionPort를 정의해야 합니다. bool
enableIpv6 이를 true로 설정하면 클러스터에서 사용하는 기본 VNet에 대한 IPv6 주소 공간이 만들어집니다. 클러스터를 만든 후에는 이 설정을 변경할 수 없습니다. 이 설정의 기본값은 false입니다. bool
enableServicePublicIP 이를 true로 설정하면 IPv4 주소가 IPv6 주소의 ServicePublicIP로 연결됩니다. 클러스터에서 IPv6을 사용하도록 설정한 경우에만 True로 설정할 수 있습니다. bool
fabricSettings 클러스터를 구성할 사용자 지정 패브릭 설정 목록입니다. SettingsSectionDescription[]
httpGatewayConnectionPort 클러스터에 대한 HTTP 연결에 사용되는 포트입니다. int
httpGatewayTokenAuthConnectionPort 클러스터에 대한 토큰 인증 기반 HTTPS 연결에 사용되는 포트입니다. HttpGatewayEndpoint와 동일한 포트로 설정할 수 없습니다. int
ipTags 클러스터의 기본 공용 IP 주소와 연결된 IP 태그 목록입니다. IpTag[]
loadBalancingRules 클러스터의 공용 부하 분산 장치에 적용되는 부하 분산 규칙입니다. LoadBalancingRule[]
networkSecurityRules 클러스터의 Virtual Network 적용되는 사용자 지정 네트워크 보안 규칙입니다. NetworkSecurityRule[]
publicIPPrefixId 부하 분산 장치가 공용 IPv4 주소를 할당할 공용 IPv4 접두사에 대한 리소스 ID를 지정합니다. 클러스터를 만든 후에는 이 설정을 변경할 수 없습니다. string
publicIPv6PrefixId 부하 분산 장치가 공용 IPv6 주소를 할당할 공용 IPv6 접두사에 대한 리소스 ID를 지정합니다. 클러스터를 만든 후에는 이 설정을 변경할 수 없습니다. 문자열
serviceEndpoints 클러스터의 서브넷에 대한 서비스 엔드포인트입니다. ServiceEndpoint[]
subnetId 지정된 경우 클러스터의 노드 형식은 기본 VNet 대신 이 서브넷에 만들어집니다. 클러스터에 지정된 networkSecurityRules 도 이 서브넷에 적용됩니다. 클러스터를 만든 후에는 이 설정을 변경할 수 없습니다. 문자열
upgradeDescription 클러스터를 업그레이드할 때 사용할 정책입니다. ClusterUpgradePolicy
useCustomVnet 새 클러스터의 경우 이 매개 변수는 Bring Your Own VNet을 사용하지만 서브넷은 노드 유형 수준에서 지정됨을 나타냅니다. 이러한 클러스터의 경우 노드 형식에 subnetId 속성이 필요합니다. bool
zonalResiliency 클러스터에 영역 복원력이 있는지를 나타냅니다. bool
zonalUpdateMode 교차 Az 클러스터의 업데이트 모드를 나타냅니다. 'Fast'
'Standard'

ApplicationTypeVersionsCleanupPolicy

Name Description
maxUnusedVersionsToKeep 유지할 애플리케이션 유형당 사용되지 않는 버전 수입니다. int(필수)

제약 조건:
최소값 = 0

서브넷

Name Description
enableIpv6 Ipv6을 사용하도록 설정할지 여부를 나타냅니다. 제공되지 않으면 클러스터와 동일한 구성을 사용합니다. bool
name 서브넷 이름입니다. string(필수)
networkSecurityGroupId 네트워크 보안 그룹의 전체 리소스 ID입니다. string
privateEndpointNetworkPolicies 서브넷의 프라이빗 엔드포인트에 네트워크 정책 적용을 사용하거나 사용하지 않도록 설정합니다. 'disabled'
'enabled'
privateLinkServiceNetworkPolicies 서브넷의 프라이빗 링크 서비스에 네트워크 정책 적용을 사용하거나 사용하지 않도록 설정합니다. 'disabled'
'enabled'

AzureActiveDirectory

Name Description
clientApplication Azure Active Directory 클라이언트 애플리케이션 ID입니다. 문자열
clusterApplication Azure Active Directory 클러스터 애플리케이션 ID입니다. string
tenantId Azure Active Directory 테넌트 ID입니다. 문자열

ClientCertificate

Name Description
commonName 인증서 일반 이름입니다. string
isAdmin 클라이언트 인증서에 클러스터에 대한 관리자 액세스 권한이 있는지를 나타냅니다. 관리자가 아닌 클라이언트는 클러스터에서 읽기 전용 작업만 수행할 수 있습니다. bool(필수)
issuerThumbprint 인증서에 대한 발급자 지문입니다. CommonName과 함께만 사용됩니다. 문자열
thumbprint 인증서 지문입니다. string

SettingsSectionDescription

Name Description
name 패브릭 설정의 섹션 이름입니다. string(필수)
매개 변수 섹션의 매개 변수 컬렉션입니다. SettingsParameterDescription[] (필수)

SettingsParameterDescription

Name Description
name 패브릭 설정의 매개 변수 이름입니다. string(필수)
패브릭 설정의 매개 변수 값입니다. string(필수)

IpTag

Name Description
ipTagType IP 태그 유형입니다. 예: FirstPartyUsage. string(필수)
태그 공용 IP와 연결된 IP 태그입니다. 예: SQL, 스토리지 등 string(필수)

LoadBalancingRule

Name Description
backendPort 엔드포인트의 내부 연결에 사용되는 포트입니다. 허용되는 값은 1에서 65535 사이입니다. int(필수)

제약 조건:
최소값 = 1
최대값 = 65534
frontendPort 외부 엔드포인트에 대한 포트입니다. 각 규칙의 포트 번호는 Load Balancer 내에서 고유해야 합니다. 허용되는 값은 1에서 65534 사이입니다. int(필수)

제약 조건:
최소값 = 1
최대값 = 65534
loadDistribution 이 규칙에 대한 부하 분산 정책입니다. string
probePort 부하 분산 규칙에 사용되는 프로브 포트입니다. 허용되는 값은 1에서 65535 사이입니다. int

제약 조건:
최소값 = 1
최대값 = 65534
probeProtocol 부하 분산 규칙에서 사용하는 부하 분산 장치 프로브에 대한 참조입니다. 'http'
'https'
'tcp'(필수)
probeRequestPath 프로브 요청 경로입니다. HTTP/HTTPS 프로브에 대해서만 지원됩니다. string
protocol 부하 분산 규칙에서 사용하는 전송 프로토콜에 대한 참조입니다. 'tcp'
'udp'(필수)

NetworkSecurityRule

Name Description
access 네트워크 트래픽이 허용되거나 거부됩니다. 'allow'
'deny'(필수)
description 네트워크 보안 규칙 설명입니다. string
destinationAddressPrefix 대상 주소 접두사입니다. CIDR 또는 대상 IP 범위입니다. 모든 원본 IP가 일치하도록 별표(‘*’)를 사용할 수도 있습니다. 'VirtualNetwork', 'AzureLoadBalancer' 및 'Internet'과 같은 기본 태그도 사용할 수 있습니다. string
destinationAddressPrefixes 대상 주소 접두사입니다. CIDR 또는 대상 IP 범위. string[]
destinationPortRange 대상 포트 또는 범위입니다. 0에서 65535 사이의 정수 또는 범위입니다. 별표 '*'를 사용하여 모든 포트를 일치시킬 수도 있습니다. string
destinationPortRanges 대상 포트 범위입니다. string[]
direction 네트워크 보안 규칙 방향. '인바운드'
'아웃바운드'(필수)
name 네트워크 보안 규칙 이름입니다. string(필수)
priority 규칙의 우선 순위입니다. 값은 1000~3000 범위에 있을 수 있습니다. 이 범위를 벗어난 값은 Service Fabric ManagerCluster 리소스 공급자용으로 예약됩니다. 우선 순위 번호는 컬렉션의 각 규칙에 대해 고유해야 합니다. 우선 순위 번호가 낮을수록 규칙의 우선 순위가 높습니다. int(필수)

제약 조건:
최소값 = 1000
최대값 = 3000
protocol 이 규칙이 적용되는 네트워크 프로토콜입니다. '아'
'esp'
'http'
'https'
'icmp'
'tcp'
'udp'(필수)
sourceAddressPrefix CIDR 또는 원본 IP 범위입니다. 모든 원본 IP가 일치하도록 별표(‘*’)를 사용할 수도 있습니다. 'VirtualNetwork', 'AzureLoadBalancer' 및 'Internet'과 같은 기본 태그도 사용할 수 있습니다. 수신 규칙인 경우 네트워크 트래픽이 시작되는 위치를 지정합니다. string
sourceAddressPrefixes CIDR 또는 원본 IP 범위입니다. string[]
sourcePortRange 원본 포트 또는 범위입니다. 0에서 65535 사이의 정수 또는 범위입니다. 별표 '*'를 사용하여 모든 포트를 일치시킬 수도 있습니다. string
sourcePortRanges 원본 포트 범위입니다. string[]

ServiceEndpoint

Name Description
위치 위치 목록입니다. string[]
서비스 엔드포인트 서비스의 형식입니다. string(필수)

ClusterUpgradePolicy

Name Description
deltaHealthPolicy 클러스터 델타 상태 정책은 클러스터 업그레이드 중에 클러스터의 상태를 평가하는 데 사용되는 상태 정책을 정의합니다. ClusterUpgradeDeltaHealthPolicy
forceRestart true이면 코드 버전이 변경되지 않은 경우에도 업그레이드 중에 프로세스가 강제로 다시 시작됩니다(업그레이드는 구성 또는 데이터만 변경됨). bool
healthPolicy 클러스터 상태 정책은 클러스터 업그레이드 중에 클러스터의 상태를 평가하는 데 사용되는 상태 정책을 정의합니다. ClusterHealthPolicy
monitoringPolicy 클러스터 모니터링 정책은 모니터링 모드에서 업그레이드를 모니터링하기 위한 매개 변수를 설명합니다. ClusterMonitoringPolicy
upgradeReplicaSetCheckTimeout 예기치 않은 문제가 있을 때 업그레이드 도메인의 처리를 차단하고 가용성의 손실을 방지하는 최대 시간입니다.
이 시간 제한이 만료되면 가용성 손실 문제와 상관없이 업그레이드 도메인 처리가 진행됩니다.
시간 제한은 각 업그레이드 도메인의 시작 시 다시 설정됩니다. 시간 제한은 hh:mm:ss 또는 d.hh:mm:ss.ms 형식일 수 있습니다.
이 값은 00:00:00에서 49710.06:28:15 사이여야 합니다(부호 없는 32비트 정수(초))
문자열

ClusterUpgradeDeltaHealthPolicy

Name Description
maxPercentDeltaUnhealthyApplications 클러스터 업그레이드 중에 허용되는 최대 애플리케이션 상태 저하 비율입니다.
델타는 업그레이드 시작 시 애플리케이션의 상태와 상태 평가 시 애플리케이션의 상태 간에 측정됩니다.
클러스터의 전역 상태를 허용 한도 내로 유지하기 위해 업그레이드 도메인 업그레이드가 완료될 때마다 검사가 수행됩니다. 시스템 서비스는 이에 포함되지 않습니다.
참고: 이 값은 속성에 지정된 값을 덮어씁니다. UpgradeDescription.HealthPolicy.MaxPercentUnhealthyApplications
int

제약 조건:
최소값 = 0
최대값 = 100
maxPercentDeltaUnhealthyNodes 클러스터를 업그레이드하는 동안 허용되는 노드 상태 저하의 최대 비율입니다.
델타는 업그레이드 시작 시 노드 상태와 상태 평가 시 노드 상태 간에 측정됩니다.
클러스터의 전역 상태를 허용 한도 내로 유지하기 위해 업그레이드 도메인 업그레이드가 완료될 때마다 검사가 수행됩니다.
int(필수)

제약 조건:
최소값 = 0
최대값 = 100
maxPercentUpgradeDomainDeltaUnhealthyNodes 클러스터를 업그레이드하는 동안 허용되는 업그레이드 도메인 노드 상태 저하의 최대 비율입니다.
델타는 업그레이드 시작 시 업그레이드 도메인 노드 상태와 상태 평가 시 업그레이드 도메인 노드 상태 간에 측정됩니다.
클러스터의 전역 상태를 허용 한도 내로 유지하기 위해 업그레이드 도메인 업그레이드가 완료될 때마다 완료된 업그레이드 도메인에 대한 검사가 수행됩니다.
int

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

ClusterHealthPolicy

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

비율은 클러스터에서 오류로 처리하기 전에 비정상 상태로 있을 수 있는 애플리케이션의 최대 허용 비율을 나타냅니다.
비율은 지켜지나 비정상 애플리케이션이 적어도 하나 있다면 상태는 경고로 평가됩니다.
이 값은 클러스터에 있는 애플리케이션 인스턴스의 총 수를 비정상 애플리케이션의 수로 나눠 계산합니다. 이 때 ApplicationTypeHealthPolicyMap에 포함된 애플리케이션 형식의 애플리케이션은 제외합니다.
계산값은 적은 수의 애플리케이션에서 오류 하나를 허용할 수 있도록 반올림됩니다. 기본 비율은 0입니다.
int(필수)

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

비율은 클러스터에서 오류로 처리하기 전에 비정상 상태로 있을 수 있는 노드의 최대 허용 비율을 나타냅니다.
비율은 지켜지나 비정상 노드가 적어도 하나 있다면 상태는 경고로 평가됩니다.
이 백분율은 클러스터에 있는 노드 총 수를 비정상 노드 수로 나눠 계산합니다.
계산값은 적은 수의 노드에서 오류 하나를 허용할 수 있도록 반올림됩니다. 기본 비율은 0입니다.

대형 클러스터에는 항상 복구를 위해 다운되거나 중단되는 노드가 있으므로 이를 감안하여 이 비율을 구성해야 합니다.
int(필수)

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

ClusterMonitoringPolicy

Name Description
healthCheckRetryTimeout 업그레이드가 롤백되기 전에 애플리케이션 또는 클러스터가 비정상일 때 상태 평가를 다시 시도하는 시간입니다. 시간 제한은 hh:mm:ss 또는 d.hh:mm:ss.ms 형식일 수 있습니다. string(필수)
healthCheckStableDuration 업그레이드가 다음 업그레이드 도메인으로 진행되기 전에 애플리케이션 또는 클러스터가 정상 상태로 유지되어야 하는 시간입니다. 기간은 hh:mm:ss 또는 d.hh:mm:ss.ms 형식일 수 있습니다. string(필수)
healthCheckWaitDuration 상태 검사를 수행하기 전에 업그레이드 도메인을 완료한 후 대기할 시간입니다. 기간은 hh:mm:ss 또는 d.hh:mm:ss.ms 형식일 수 있습니다. string(필수)
upgradeDomainTimeout 업그레이드가 롤백되기 전에 각 업그레이드 도메인을 완료해야 하는 시간입니다. 시간 제한은 hh:mm:ss 또는 d.hh:mm:ss.ms 형식일 수 있습니다. string(필수)
upgradeTimeout 업그레이드가 롤백되기 전에 전체 업그레이드를 완료해야 하는 시간입니다. 시간 제한은 hh:mm:ss 또는 d.hh:mm:ss.ms 형식일 수 있습니다. string(필수)

SKU

Name Description
name Sku 이름입니다. 'Basic'
'Standard'(필수)

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

managedClusters 리소스 종류는 다음을 대상으로 하는 작업으로 배포할 수 있습니다.

  • 리소스 그룹

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

리소스 형식

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

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.ServiceFabric/managedClusters@2024-04-01"
  name = "string"
  location = "string"
  parent_id = "string"
  tags = {
    tagName1 = "tagValue1"
    tagName2 = "tagValue2"
  }
  body = jsonencode({
    properties = {
      addonFeatures = [
        "string"
      ]
      adminPassword = "string"
      adminUserName = "string"
      allowRdpAccess = bool
      applicationTypeVersionsCleanupPolicy = {
        maxUnusedVersionsToKeep = int
      }
      auxiliarySubnets = [
        {
          enableIpv6 = bool
          name = "string"
          networkSecurityGroupId = "string"
          privateEndpointNetworkPolicies = "string"
          privateLinkServiceNetworkPolicies = "string"
        }
      ]
      azureActiveDirectory = {
        clientApplication = "string"
        clusterApplication = "string"
        tenantId = "string"
      }
      clientConnectionPort = int
      clients = [
        {
          commonName = "string"
          isAdmin = bool
          issuerThumbprint = "string"
          thumbprint = "string"
        }
      ]
      clusterCodeVersion = "string"
      clusterUpgradeCadence = "string"
      clusterUpgradeMode = "string"
      ddosProtectionPlanId = "string"
      dnsName = "string"
      enableAutoOSUpgrade = bool
      enableHttpGatewayExclusiveAuthMode = bool
      enableIpv6 = bool
      enableServicePublicIP = bool
      fabricSettings = [
        {
          name = "string"
          parameters = [
            {
              name = "string"
              value = "string"
            }
          ]
        }
      ]
      httpGatewayConnectionPort = int
      httpGatewayTokenAuthConnectionPort = int
      ipTags = [
        {
          ipTagType = "string"
          tag = "string"
        }
      ]
      loadBalancingRules = [
        {
          backendPort = int
          frontendPort = int
          loadDistribution = "string"
          probePort = int
          probeProtocol = "string"
          probeRequestPath = "string"
          protocol = "string"
        }
      ]
      networkSecurityRules = [
        {
          access = "string"
          description = "string"
          destinationAddressPrefix = "string"
          destinationAddressPrefixes = [
            "string"
          ]
          destinationPortRange = "string"
          destinationPortRanges = [
            "string"
          ]
          direction = "string"
          name = "string"
          priority = int
          protocol = "string"
          sourceAddressPrefix = "string"
          sourceAddressPrefixes = [
            "string"
          ]
          sourcePortRange = "string"
          sourcePortRanges = [
            "string"
          ]
        }
      ]
      publicIPPrefixId = "string"
      publicIPv6PrefixId = "string"
      serviceEndpoints = [
        {
          locations = [
            "string"
          ]
          service = "string"
        }
      ]
      subnetId = "string"
      upgradeDescription = {
        deltaHealthPolicy = {
          maxPercentDeltaUnhealthyApplications = int
          maxPercentDeltaUnhealthyNodes = int
          maxPercentUpgradeDomainDeltaUnhealthyNodes = int
        }
        forceRestart = bool
        healthPolicy = {
          maxPercentUnhealthyApplications = int
          maxPercentUnhealthyNodes = int
        }
        monitoringPolicy = {
          healthCheckRetryTimeout = "string"
          healthCheckStableDuration = "string"
          healthCheckWaitDuration = "string"
          upgradeDomainTimeout = "string"
          upgradeTimeout = "string"
        }
        upgradeReplicaSetCheckTimeout = "string"
      }
      useCustomVnet = bool
      zonalResiliency = bool
      zonalUpdateMode = "string"
    }
    sku = {
      name = "string"
    }
  })
}

속성 값

managedClusters

Name Description
형식 리소스 종류 "Microsoft.ServiceFabric/managedClusters@2024-04-01"
name 리소스 이름 string(필수)
위치 Azure 리소스 위치. string(필수)
parent_id 리소스 그룹에 배포하려면 해당 리소스 그룹의 ID를 사용합니다. string(필수)
tags Azure 리소스 태그. 태그 이름 및 값의 사전입니다.
sku 관리형 클러스터의 sku Sku (필수)
properties 관리형 클러스터 리소스 속성 ManagedClusterProperties

ManagedClusterProperties

Name Description
addonFeatures 클러스터에서 사용하도록 설정할 추가 기능 목록입니다. 다음 중 어느 것을 포함하는 문자열 배열:
"BackupRestoreService"
"DnsService"
"ResourceMonitorService"
adminPassword VM 관리자 사용자 암호입니다. 문자열

제약 조건:
중요한 값입니다. 보안 매개 변수로 전달합니다.
adminUserName VM 관리자 사용자 이름입니다. string(필수)
allowRdpAccess 이를 true로 설정하면 VM에 대한 RDP 액세스가 가능합니다. 기본 NSG 규칙은 사용자 지정 네트워크 보안 규칙으로 재정의할 수 있는 인터넷으로 RDP 포트를 엽니다. 이 설정의 기본값은 false입니다. bool
applicationTypeVersionsCleanupPolicy 사용되지 않는 버전을 클린 데 사용되는 정책입니다. ApplicationTypeVersionsCleanupPolicy
auxiliarySubnets 클러스터에 대한 보조 서브넷입니다. 서브넷[]
azureActiveDirectory 클러스터의 AAD 인증 설정입니다. AzureActiveDirectory
clientConnectionPort 클러스터에 대한 클라이언트 연결에 사용되는 포트입니다. int
클라이언트 클러스터를 관리할 수 있는 클라이언트 인증서입니다. ClientCertificate[]
clusterCodeVersion 클러스터의 Service Fabric 런타임 버전입니다. clusterUpgradeMode가 'Manual'으로 설정된 경우 이 속성이 필요합니다. 새 클러스터에 사용 가능한 Service Fabric 버전 목록을 얻으려면 ClusterVersion API를 사용합니다. 기존 클러스터에 사용 가능한 버전 목록을 얻으려면 availableClusterVersions를 사용합니다. string
clusterUpgradeCadence 새 클러스터 런타임 버전 업그레이드가 릴리스된 후 적용되는 시기를 나타냅니다. 기본적으로 Wave0입니다. clusterUpgradeMode가 'Automatic'으로 설정된 경우에만 적용됩니다. "Wave0"
"Wave1"
"Wave2"
clusterUpgradeMode 새 Service Fabric 런타임 버전을 사용할 수 있는 경우 클러스터의 업그레이드 모드입니다. "자동"
"수동"
ddosProtectionPlanId 클러스터의 가상 네트워크와 연결될 DDoS 네트워크 보호 계획의 리소스 ID를 지정합니다. string
dnsName 클러스터 dns 이름입니다. string(필수)
enableAutoOSUpgrade 이를 true로 설정하면 버전이 'latest'인 모든 플랫폼 OS 이미지를 사용하여 만든 노드 유형에 대해 자동 OS 업그레이드가 가능합니다. 이 설정의 기본값은 false입니다. bool
enableHttpGatewayExclusiveAuthMode true이면 HttpGatewayEndpoint에서 토큰 기반 인증이 허용되지 않습니다. 이는 TLS 버전 1.3 이상을 지원하는 데 필요합니다. 토큰 기반 인증을 사용하는 경우 HttpGatewayTokenAuthConnectionPort를 정의해야 합니다. bool
enableIpv6 이를 true로 설정하면 클러스터에서 사용하는 기본 VNet에 대한 IPv6 주소 공간이 만들어집니다. 클러스터를 만든 후에는 이 설정을 변경할 수 없습니다. 이 설정의 기본값은 false입니다. bool
enableServicePublicIP 이를 true로 설정하면 IPv4 주소가 IPv6 주소의 ServicePublicIP로 연결됩니다. 클러스터에서 IPv6을 사용하도록 설정한 경우에만 True로 설정할 수 있습니다. bool
fabricSettings 클러스터를 구성할 사용자 지정 패브릭 설정 목록입니다. SettingsSectionDescription[]
httpGatewayConnectionPort 클러스터에 대한 HTTP 연결에 사용되는 포트입니다. int
httpGatewayTokenAuthConnectionPort 클러스터에 대한 토큰 인증 기반 HTTPS 연결에 사용되는 포트입니다. HttpGatewayEndpoint와 동일한 포트로 설정할 수 없습니다. int
ipTags 클러스터의 기본 공용 IP 주소와 연결된 IP 태그 목록입니다. IpTag[]
loadBalancingRules 클러스터의 공용 부하 분산 장치에 적용되는 부하 분산 규칙입니다. LoadBalancingRule[]
networkSecurityRules 클러스터의 Virtual Network 적용되는 사용자 지정 네트워크 보안 규칙입니다. NetworkSecurityRule[]
publicIPPrefixId 부하 분산 장치가 공용 IPv4 주소를 할당할 공용 IPv4 접두사에 대한 리소스 ID를 지정합니다. 클러스터를 만든 후에는 이 설정을 변경할 수 없습니다. string
publicIPv6PrefixId 부하 분산 장치가 공용 IPv6 주소를 할당할 공용 IPv6 접두사에 대한 리소스 ID를 지정합니다. 클러스터를 만든 후에는 이 설정을 변경할 수 없습니다. 문자열
serviceEndpoints 클러스터의 서브넷에 대한 서비스 엔드포인트입니다. ServiceEndpoint[]
subnetId 지정된 경우 클러스터의 노드 형식은 기본 VNet 대신 이 서브넷에 만들어집니다. 클러스터에 지정된 networkSecurityRules 도 이 서브넷에 적용됩니다. 클러스터를 만든 후에는 이 설정을 변경할 수 없습니다. string
upgradeDescription 클러스터를 업그레이드할 때 사용할 정책입니다. ClusterUpgradePolicy
useCustomVnet 새 클러스터의 경우 이 매개 변수는 Bring Your Own VNet을 사용하지만 서브넷은 노드 유형 수준에서 지정됨을 나타냅니다. 이러한 클러스터의 경우 노드 형식에 subnetId 속성이 필요합니다. bool
zonalResiliency 클러스터에 영역 복원력이 있는지를 나타냅니다. bool
zonalUpdateMode 교차 Az 클러스터의 업데이트 모드를 나타냅니다. "빠른"
"표준"

ApplicationTypeVersionsCleanupPolicy

Name Description
maxUnusedVersionsToKeep 유지할 애플리케이션 유형당 사용되지 않는 버전 수입니다. int(필수)

제약 조건:
최소값 = 0

서브넷

Name Description
enableIpv6 Ipv6을 사용하도록 설정할지 여부를 나타냅니다. 제공되지 않으면 클러스터와 동일한 구성을 사용합니다. bool
name 서브넷 이름입니다. string(필수)
networkSecurityGroupId 네트워크 보안 그룹의 전체 리소스 ID입니다. string
privateEndpointNetworkPolicies 서브넷의 프라이빗 엔드포인트에 네트워크 정책 적용을 사용하거나 사용하지 않도록 설정합니다. "disabled"
"enabled"
privateLinkServiceNetworkPolicies 서브넷의 프라이빗 링크 서비스에 네트워크 정책 적용을 사용하거나 사용하지 않도록 설정합니다. "disabled"
"enabled"

AzureActiveDirectory

Name Description
clientApplication Azure Active Directory 클라이언트 애플리케이션 ID입니다. 문자열
clusterApplication Azure Active Directory 클러스터 애플리케이션 ID입니다. 문자열
tenantId Azure Active Directory 테넌트 ID입니다. 문자열

ClientCertificate

Name Description
commonName 인증서 일반 이름입니다. 문자열
isAdmin 클라이언트 인증서에 클러스터에 대한 관리자 액세스 권한이 있는지를 나타냅니다. 관리자가 아닌 클라이언트는 클러스터에서 읽기 전용 작업만 수행할 수 있습니다. bool(필수)
issuerThumbprint 인증서에 대한 발급자 지문입니다. CommonName과 함께만 사용됩니다. 문자열
thumbprint 인증서 지문입니다. 문자열

SettingsSectionDescription

Name Description
name 패브릭 설정의 섹션 이름입니다. string(필수)
매개 변수 섹션의 매개 변수 컬렉션입니다. SettingsParameterDescription[] (필수)

SettingsParameterDescription

Name Description
name 패브릭 설정의 매개 변수 이름입니다. string(필수)
패브릭 설정의 매개 변수 값입니다. string(필수)

IpTag

Name Description
ipTagType IP 태그 유형입니다. 예: FirstPartyUsage. string(필수)
태그 공용 IP와 연결된 IP 태그입니다. 예: SQL, 스토리지 등 string(필수)

LoadBalancingRule

Name Description
backendPort 엔드포인트의 내부 연결에 사용되는 포트입니다. 허용되는 값은 1에서 65535 사이입니다. int(필수)

제약 조건:
최소값 = 1
최대값 = 65534
frontendPort 외부 엔드포인트에 대한 포트입니다. 각 규칙의 포트 번호는 Load Balancer 내에서 고유해야 합니다. 허용되는 값은 1에서 65534 사이입니다. int(필수)

제약 조건:
최소값 = 1
최대값 = 65534
loadDistribution 이 규칙에 대한 부하 분산 정책입니다. 문자열
probePort 부하 분산 규칙에 사용되는 프로브 포트입니다. 허용되는 값은 1에서 65535 사이입니다. int

제약 조건:
최소값 = 1
최대값 = 65534
probeProtocol 부하 분산 규칙에서 사용하는 부하 분산 장치 프로브에 대한 참조입니다. "http"
"https"
"tcp"(필수)
probeRequestPath 프로브 요청 경로입니다. HTTP/HTTPS 프로브에 대해서만 지원됩니다. 문자열
protocol 부하 분산 규칙에서 사용하는 전송 프로토콜에 대한 참조입니다. "tcp"
"udp"(필수)

NetworkSecurityRule

Name Description
access 네트워크 트래픽이 허용되거나 거부됩니다. "allow"
"deny"(필수)
description 네트워크 보안 규칙 설명입니다. string
destinationAddressPrefix 대상 주소 접두사입니다. CIDR 또는 대상 IP 범위입니다. 모든 원본 IP가 일치하도록 별표(‘*’)를 사용할 수도 있습니다. 'VirtualNetwork', 'AzureLoadBalancer' 및 'Internet'과 같은 기본 태그도 사용할 수 있습니다. string
destinationAddressPrefixes 대상 주소 접두사입니다. CIDR 또는 대상 IP 범위. string[]
destinationPortRange 대상 포트 또는 범위입니다. 0에서 65535 사이의 정수 또는 범위입니다. 별표 '*'를 사용하여 모든 포트를 일치시킬 수도 있습니다. string
destinationPortRanges 대상 포트 범위입니다. string[]
direction 네트워크 보안 규칙 방향. "인바운드"
"아웃바운드"(필수)
name 네트워크 보안 규칙 이름입니다. string(필수)
priority 규칙의 우선 순위입니다. 값은 1000~3000 범위에 있을 수 있습니다. 이 범위를 벗어난 값은 Service Fabric ManagerCluster 리소스 공급자용으로 예약됩니다. 우선 순위 번호는 컬렉션의 각 규칙에 대해 고유해야 합니다. 우선 순위 번호가 낮을수록 규칙의 우선 순위가 높습니다. int(필수)

제약 조건:
최소값 = 1000
최대값 = 3000
protocol 이 규칙이 적용되는 네트워크 프로토콜입니다. "아"
"esp"
"http"
"https"
"icmp"
"tcp"
"udp"(필수)
sourceAddressPrefix CIDR 또는 원본 IP 범위입니다. 모든 원본 IP가 일치하도록 별표(‘*’)를 사용할 수도 있습니다. 'VirtualNetwork', 'AzureLoadBalancer' 및 'Internet'과 같은 기본 태그도 사용할 수 있습니다. 수신 규칙인 경우 네트워크 트래픽이 시작되는 위치를 지정합니다. string
sourceAddressPrefixes CIDR 또는 원본 IP 범위입니다. string[]
sourcePortRange 원본 포트 또는 범위입니다. 0에서 65535 사이의 정수 또는 범위입니다. 별표 '*'를 사용하여 모든 포트를 일치시킬 수도 있습니다. string
sourcePortRanges 원본 포트 범위입니다. string[]

ServiceEndpoint

Name Description
위치 위치 목록입니다. string[]
서비스 엔드포인트 서비스의 형식입니다. string(필수)

ClusterUpgradePolicy

Name Description
deltaHealthPolicy 클러스터 델타 상태 정책은 클러스터 업그레이드 중에 클러스터의 상태를 평가하는 데 사용되는 상태 정책을 정의합니다. ClusterUpgradeDeltaHealthPolicy
forceRestart true이면 코드 버전이 변경되지 않은 경우에도 업그레이드 중에 프로세스가 강제로 다시 시작됩니다(업그레이드는 구성 또는 데이터만 변경됨). bool
healthPolicy 클러스터 상태 정책은 클러스터 업그레이드 중에 클러스터의 상태를 평가하는 데 사용되는 상태 정책을 정의합니다. ClusterHealthPolicy
monitoringPolicy 클러스터 모니터링 정책은 모니터링 모드에서 업그레이드를 모니터링하기 위한 매개 변수를 설명합니다. ClusterMonitoringPolicy
upgradeReplicaSetCheckTimeout 예기치 않은 문제가 있을 때 업그레이드 도메인의 처리를 차단하고 가용성의 손실을 방지하는 최대 시간입니다.
이 시간 제한이 만료되면 가용성 손실 문제와 상관없이 업그레이드 도메인 처리가 진행됩니다.
시간 제한은 각 업그레이드 도메인의 시작 시 다시 설정됩니다. 시간 제한은 hh:mm:ss 또는 d.hh:mm:ss.ms 형식일 수 있습니다.
이 값은 00:00:00에서 49710.06:28:15 사이여야 합니다(부호 없는 32비트 정수(초)
문자열

ClusterUpgradeDeltaHealthPolicy

Name Description
maxPercentDeltaUnhealthyApplications 클러스터 업그레이드 중에 허용되는 최대 애플리케이션 상태 저하 비율입니다.
델타는 업그레이드 시작 시 애플리케이션의 상태와 상태 평가 시 애플리케이션 상태 간에 측정됩니다.
클러스터의 전역 상태를 허용 한도 내로 유지하기 위해 업그레이드 도메인 업그레이드가 완료될 때마다 검사가 수행됩니다. 시스템 서비스는 이에 포함되지 않습니다.
참고: 이 값은 속성에 지정된 값을 덮어씁니다. UpgradeDescription.HealthPolicy.MaxPercentUnhealthyApplications
int

제약 조건:
최소값 = 0
최대값 = 100
maxPercentDeltaUnhealthyNodes 클러스터를 업그레이드하는 동안 허용되는 노드 상태 저하의 최대 비율입니다.
델타는 업그레이드 시작 시 노드 상태와 상태 평가 시 노드 상태 간에 측정됩니다.
클러스터의 전역 상태를 허용 한도 내로 유지하기 위해 업그레이드 도메인 업그레이드가 완료될 때마다 검사가 수행됩니다.
int(필수)

제약 조건:
최소값 = 0
최대값 = 100
maxPercentUpgradeDomainDeltaUnhealthyNodes 클러스터를 업그레이드하는 동안 허용되는 업그레이드 도메인 노드 상태 저하의 최대 비율입니다.
델타는 업그레이드 시작 시 업그레이드 도메인 노드 상태와 상태 평가 시 업그레이드 도메인 노드 상태 간에 측정됩니다.
클러스터의 전역 상태를 허용 한도 내로 유지하기 위해 업그레이드 도메인 업그레이드가 완료될 때마다 완료된 업그레이드 도메인에 대한 검사가 수행됩니다.
int

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

ClusterHealthPolicy

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

비율은 클러스터에서 오류로 처리하기 전에 비정상 상태로 있을 수 있는 애플리케이션의 최대 허용 비율을 나타냅니다.
비율은 지켜지나 비정상 애플리케이션이 적어도 하나 있다면 상태는 경고로 평가됩니다.
이 값은 클러스터에 있는 애플리케이션 인스턴스의 총 수를 비정상 애플리케이션의 수로 나눠 계산합니다. 이 때 ApplicationTypeHealthPolicyMap에 포함된 애플리케이션 형식의 애플리케이션은 제외합니다.
계산값은 적은 수의 애플리케이션에서 오류 하나를 허용할 수 있도록 반올림됩니다. 기본 비율은 0입니다.
int(필수)

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

비율은 클러스터에서 오류로 처리하기 전에 비정상 상태로 있을 수 있는 노드의 최대 허용 비율을 나타냅니다.
비율은 지켜지나 비정상 노드가 적어도 하나 있다면 상태는 경고로 평가됩니다.
이 백분율은 클러스터에 있는 노드 총 수를 비정상 노드 수로 나눠 계산합니다.
계산값은 적은 수의 노드에서 오류 하나를 허용할 수 있도록 반올림됩니다. 기본 비율은 0입니다.

대형 클러스터에는 항상 복구를 위해 다운되거나 중단되는 노드가 있으므로 이를 감안하여 이 비율을 구성해야 합니다.
int(필수)

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

ClusterMonitoringPolicy

Name Description
healthCheckRetryTimeout 업그레이드가 롤백되기 전에 애플리케이션 또는 클러스터가 비정상일 때 상태 평가를 다시 시도하는 시간입니다. 시간 제한은 hh:mm:ss 또는 d.hh:mm:ss.ms 형식일 수 있습니다. string(필수)
healthCheckStableDuration 업그레이드가 다음 업그레이드 도메인으로 진행되기 전에 애플리케이션 또는 클러스터가 정상 상태로 유지되어야 하는 시간입니다. 기간은 hh:mm:ss 또는 d.hh:mm:ss.ms 형식일 수 있습니다. string(필수)
healthCheckWaitDuration 상태 검사를 수행하기 전에 업그레이드 도메인을 완료한 후 대기할 시간입니다. 기간은 hh:mm:ss 또는 d.hh:mm:ss.ms 형식일 수 있습니다. string(필수)
upgradeDomainTimeout 업그레이드가 롤백되기 전에 각 업그레이드 도메인을 완료해야 하는 시간입니다. 시간 제한은 hh:mm:ss 또는 d.hh:mm:ss.ms 형식일 수 있습니다. string(필수)
upgradeTimeout 업그레이드가 롤백되기 전에 전체 업그레이드를 완료해야 하는 시간입니다. 시간 제한은 hh:mm:ss 또는 d.hh:mm:ss.ms 형식일 수 있습니다. string(필수)

SKU

Name Description
name Sku 이름입니다. "Basic"
"표준"(필수)