다음을 통해 공유


Microsoft.HybridContainerService provisionedClusterInstances

Bicep 리소스 정의

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

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

리소스 형식

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

resource symbolicname 'Microsoft.HybridContainerService/provisionedClusterInstances@2024-01-01' = {
  scope: resourceSymbolicName or scope
  extendedLocation: {
    name: 'string'
    type: 'string'
  }
  name: 'default'
  properties: {
    agentPoolProfiles: [
      {
        count: int
        enableAutoScaling: bool
        maxCount: int
        maxPods: int
        minCount: int
        name: 'string'
        nodeLabels: {
          {customized property}: 'string'
        }
        nodeTaints: [
          'string'
        ]
        osSKU: 'string'
        osType: 'string'
        vmSize: 'string'
      }
    ]
    autoScalerProfile: {
      balance-similar-node-groups: 'string'
      expander: 'string'
      max-empty-bulk-delete: 'string'
      max-graceful-termination-sec: 'string'
      max-node-provision-time: 'string'
      max-total-unready-percentage: 'string'
      new-pod-scale-up-delay: 'string'
      ok-total-unready-count: 'string'
      scale-down-delay-after-add: 'string'
      scale-down-delay-after-delete: 'string'
      scale-down-delay-after-failure: 'string'
      scale-down-unneeded-time: 'string'
      scale-down-unready-time: 'string'
      scale-down-utilization-threshold: 'string'
      scan-interval: 'string'
      skip-nodes-with-local-storage: 'string'
      skip-nodes-with-system-pods: 'string'
    }
    cloudProviderProfile: {
      infraNetworkProfile: {
        vnetSubnetIds: [
          'string'
        ]
      }
    }
    clusterVMAccessProfile: {
      authorizedIPRanges: 'string'
    }
    controlPlane: {
      controlPlaneEndpoint: {
        hostIP: 'string'
      }
      count: int
      vmSize: 'string'
    }
    kubernetesVersion: 'string'
    licenseProfile: {
      azureHybridBenefit: 'string'
    }
    linuxProfile: {
      ssh: {
        publicKeys: [
          {
            keyData: 'string'
          }
        ]
      }
    }
    networkProfile: {
      loadBalancerProfile: {
        count: int
      }
      networkPolicy: 'string'
      podCidr: 'string'
    }
    storageProfile: {
      nfsCsiDriver: {
        enabled: bool
      }
      smbCsiDriver: {
        enabled: bool
      }
    }
  }
}

속성 값

AgentPoolProfileNodeLabels

이름 묘사

CloudProviderProfile

이름 묘사
infraNetworkProfile 프로비전된 클러스터에서 사용하는 인프라 네트워크에 대한 프로필 cloudProviderProfileInfraNetworkProfile

CloudProviderProfileInfraNetworkProfile

이름 묘사
vnetSubnetIds 인프라 네트워크 개체에 대한 ARM 리소스 ID(최대 1) 목록(예: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/logicalNetworks/{logicalNetworkName} string[]

ClusterVMAccessProfile

이름 묘사
authorizedIPRanges 프로비전된 클러스터의 VM에 대한 SSH 액세스를 위한 IP 주소 또는 CIDR 문자열

ControlPlaneProfile

이름 묘사
controlPlaneEndpoint Kubernetes API 서버의 IP 주소 controlPlaneProfileControlPlaneEndpoint
세다 컨트롤 플레인 노드 수입니다. 기본값은 1이고 개수는 홀수여야 합니다. int
vmSize 컨트롤 플레인 노드의 VM sku 크기 문자열

ControlPlaneProfileControlPlaneEndpoint

이름 묘사
hostIP Kubernetes API 서버의 IP 주소 문자열

ExtendedLocation

이름 묘사
이름 확장된 위치의 ARM ID입니다. 문자열
확장된 위치 유형입니다. 허용되는 값: 'CustomLocation' 'CustomLocation'

LinuxProfileProperties

이름 묘사
ssh 프로비전된 클러스터의 VM에 대한 SSH 구성입니다. LinuxProfilePropertiesSsh

LinuxProfilePropertiesSsh

이름 묘사
publicKeys VM으로 인증하는 데 사용되는 SSH 공개 키 목록입니다. 최대 1키를 지정할 수 있습니다. linuxProfilePropertiesSshPublicKeysItem[]

LinuxProfilePropertiesSshPublicKeysItem

이름 묘사
keyData SSH를 통해 VM으로 인증하는 데 사용되는 인증서 공개 키입니다. 인증서는 헤더가 있거나 없는 PEM 형식이어야 합니다. 문자열

Microsoft.HybridContainerService/provisionedClusterInstances

이름 묘사
extendedLocation 기본 인프라를 가리키는 확장된 위치 ExtendedLocation
이름 리소스 이름 'default'(필수)
속성 프로비전된 클러스터의 속성입니다. ProvisionedClusterProperties
범위 배포 범위와 다른 범위에서 리소스를 만들 때 사용합니다. 확장 리소스적용하려면 이 속성을 리소스의 기호 이름으로 설정합니다.

NamedAgentPoolProfile

이름 묘사
세다 에이전트 풀의 노드 수입니다. 기본값은 1입니다. int
enableAutoScaling 자동 크기 조정기를 사용하도록 설정할지 여부입니다. 기본값은 false입니다. bool
maxCount 자동 크기 조정을 위한 최대 노드 수 int
maxPods 노드에서 실행할 수 있는 최대 Pod 수입니다. int
minCount 자동 크기 조정을 위한 최소 노드 수 int
이름 프로비전된 클러스터의 컨텍스트에서 기본 에이전트 풀의 고유 이름입니다. 기본값은 <clusterName>-nodepool1입니다. 문자열
nodeLabels 에이전트 풀의 모든 노드에서 유지할 노드 레이블입니다. AgentPoolProfileNodeLabels
nodeTaints 노드 풀 만들기 및 크기 조정 중에 새 노드에 추가된 Taints입니다. 예를 들어 key=value:NoSchedule입니다. string[]
osSKU 에이전트 풀에서 사용하는 OS SKU를 지정합니다. OSType이 Linux인 경우 기본값은 CBLMariner입니다. OSType이 Windows인 경우 기본값은 Windows2019입니다. 'CBLMariner'
'Windows2019'
'Windows2022'
osType 특정 KubernetesVersion 이미지 OS 유형(Linux, Windows) 'Linux'
'Windows'
vmSize 에이전트 풀 노드 VM의 VM sku 크기입니다. 문자열

NetworkProfile

이름 묘사
loadBalancerProfile HA 프록시 부하 분산 장치의 프로필입니다. NetworkProfileLoadBalancerProfile
networkPolicy Kubernetes 네트워크를 빌드하는 데 사용되는 네트워크 정책입니다. 가능한 값은 'calico'입니다. '칼리코'
podCidr Pod IP를 할당할 CIDR 표기법 IP 주소 범위입니다. 문자열

NetworkProfileLoadBalancerProfile

이름 묘사
세다 HA 프록시 부하 분산 장치 VM 수입니다. 기본값은 0입니다. int

ProvisionedClusterLicenseProfile

이름 묘사
azureHybridBenefit Azure 하이브리드 혜택이 옵트인되는지 여부를 나타냅니다. 기본값은 false입니다. 'False'
'NotApplicable'
'True'

ProvisionedClusterProperties

이름 묘사
agentPoolProfiles 프로비전된 클러스터의 에이전트 풀 속성입니다. NamedAgentPoolProfile[]
autoScalerProfile 프로비전된 클러스터에 대해 자동 크기 조정을 사용하도록 설정할 때 클러스터 자동 크기 조정기에서 적용할 매개 변수입니다. ProvisionedClusterPropertiesAutoScalerProfile
cloudProviderProfile 프로비전된 클러스터에 대한 기본 클라우드 인프라 공급자에 대한 프로필입니다. cloudProviderProfile
clusterVMAccessProfile 프로비전된 클러스터의 VM에 대한 SSH 제한 액세스 프로필입니다. clusterVMAccessProfile
controlPlane 프로비전된 클러스터의 컨트롤 플레인에 대한 프로필입니다. controlPlaneProfile
kubernetesVersion 프로비전된 클러스터에서 사용 중인 Kubernetes 버전입니다. 문자열
licenseProfile 프로비전된 클러스터의 라이선스 프로필입니다. ProvisionedClusterLicenseProfile
linuxProfile 프로비전된 클러스터의 Linux VM에 대한 프로필입니다. LinuxProfileProperties
networkProfile 프로비전된 클러스터에 대한 네트워크 구성 프로필입니다. networkProfile
storageProfile 프로비전된 클러스터에 대한 스토리지 구성 프로필입니다. StorageProfile

ProvisionedClusterPropertiesAutoScalerProfile

이름 묘사
balance-similar-node-groups 유효한 값은 'true' 및 'false'입니다. 문자열
확장기 지정하지 않으면 기본값은 'random'입니다. 자세한 내용은 확장기 참조하세요. '최소 폐기물'
'대부분의 포드'
'priority'
'random'
max-empty-bulk-delete 기본값은 10입니다. 문자열
max-graceful-termination-sec 기본값은 600입니다. 문자열
max-node-provision-time 기본값은 '15m'입니다. 값은 정수 뒤에 'm'이어야 합니다. 분(m) 이외의 시간 단위는 지원되지 않습니다. 문자열
max-total-unready-percentage 기본값은 45입니다. 최대값은 100이고 최소값은 0입니다. 문자열
new-pod-scale-up-delay kubernetes 스케줄러가 모든 Pod를 예약하기 전에 CA가 작동하지 않도록 하는 버스트/일괄 처리 확장과 같은 시나리오의 경우 특정 기간이 되기 전에 예약되지 않은 Pod를 무시하도록 CA에 지시할 수 있습니다. 기본값은 '0s'입니다. 값은 정수 다음에 단위(초의 경우 's', 분은 'm', 시간 단위는 'h' 등)여야 합니다. 문자열
ok-total-unready-count 정수여야 합니다. 기본값은 3입니다. 문자열
scale-down-delay-after-add 기본값은 '10m'입니다. 값은 정수 뒤에 'm'이어야 합니다. 분(m) 이외의 시간 단위는 지원되지 않습니다. 문자열
삭제 후 스케일 다운 지연 기본값은 검색 간격입니다. 값은 정수 뒤에 'm'이어야 합니다. 분(m) 이외의 시간 단위는 지원되지 않습니다. 문자열
실패 후 스케일 다운 지연 기본값은 '3m'입니다. 값은 정수 뒤에 'm'이어야 합니다. 분(m) 이외의 시간 단위는 지원되지 않습니다. 문자열
규모 축소-불필요한 시간 기본값은 '10m'입니다. 값은 정수 뒤에 'm'이어야 합니다. 분(m) 이외의 시간 단위는 지원되지 않습니다. 문자열
스케일 다운-읽지 않은 시간 기본값은 '20m'입니다. 값은 정수 뒤에 'm'이어야 합니다. 분(m) 이외의 시간 단위는 지원되지 않습니다. 문자열
스케일 다운 사용률 임계값 기본값은 '0.5'입니다. 문자열
스캔 간격 기본값은 '10'입니다. 값은 정수(초)여야 합니다. 문자열
skip-nodes-with-local-storage 기본값은 true입니다. 문자열
skip-nodes-with-system-Pods 기본값은 true입니다. 문자열

StorageProfile

이름 묘사
nfsCsiDriver 스토리지 프로필에 대한 NFS CSI 드라이버 설정입니다. StorageProfileNfsCSIDriver
smbCsiDriver 스토리지 프로필에 대한 SMB CSI 드라이버 설정입니다. StorageProfileSmbCSIDriver

StorageProfileNfsCSIDriver

이름 묘사
사용 NFS CSI 드라이버를 사용하도록 설정할지 여부를 나타냅니다. 기본값은 true입니다. bool

StorageProfileSmbCSIDriver

이름 묘사
사용 SMB CSI 드라이버를 사용할지 여부를 나타냅니다. 기본값은 true입니다. bool

빠른 시작 샘플

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

Bicep 파일 묘사
Azure Stack HCI Kubernetes 클러스터 만들기 이 템플릿은 Azure Stack HCI 버전 23H2+에서 Kubernetes 클러스터를 만듭니다.

ARM 템플릿 리소스 정의

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

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

리소스 형식

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

{
  "type": "Microsoft.HybridContainerService/provisionedClusterInstances",
  "apiVersion": "2024-01-01",
  "name": "string",
  "extendedLocation": {
    "name": "string",
    "type": "string"
  },
  "properties": {
    "agentPoolProfiles": [
      {
        "count": "int",
        "enableAutoScaling": "bool",
        "maxCount": "int",
        "maxPods": "int",
        "minCount": "int",
        "name": "string",
        "nodeLabels": {
          "{customized property}": "string"
        },
        "nodeTaints": [ "string" ],
        "osSKU": "string",
        "osType": "string",
        "vmSize": "string"
      }
    ],
    "autoScalerProfile": {
      "balance-similar-node-groups": "string",
      "expander": "string",
      "max-empty-bulk-delete": "string",
      "max-graceful-termination-sec": "string",
      "max-node-provision-time": "string",
      "max-total-unready-percentage": "string",
      "new-pod-scale-up-delay": "string",
      "ok-total-unready-count": "string",
      "scale-down-delay-after-add": "string",
      "scale-down-delay-after-delete": "string",
      "scale-down-delay-after-failure": "string",
      "scale-down-unneeded-time": "string",
      "scale-down-unready-time": "string",
      "scale-down-utilization-threshold": "string",
      "scan-interval": "string",
      "skip-nodes-with-local-storage": "string",
      "skip-nodes-with-system-pods": "string"
    },
    "cloudProviderProfile": {
      "infraNetworkProfile": {
        "vnetSubnetIds": [ "string" ]
      }
    },
    "clusterVMAccessProfile": {
      "authorizedIPRanges": "string"
    },
    "controlPlane": {
      "controlPlaneEndpoint": {
        "hostIP": "string"
      },
      "count": "int",
      "vmSize": "string"
    },
    "kubernetesVersion": "string",
    "licenseProfile": {
      "azureHybridBenefit": "string"
    },
    "linuxProfile": {
      "ssh": {
        "publicKeys": [
          {
            "keyData": "string"
          }
        ]
      }
    },
    "networkProfile": {
      "loadBalancerProfile": {
        "count": "int"
      },
      "networkPolicy": "string",
      "podCidr": "string"
    },
    "storageProfile": {
      "nfsCsiDriver": {
        "enabled": "bool"
      },
      "smbCsiDriver": {
        "enabled": "bool"
      }
    }
  }
}

속성 값

AgentPoolProfileNodeLabels

이름 묘사

CloudProviderProfile

이름 묘사
infraNetworkProfile 프로비전된 클러스터에서 사용하는 인프라 네트워크에 대한 프로필 cloudProviderProfileInfraNetworkProfile

CloudProviderProfileInfraNetworkProfile

이름 묘사
vnetSubnetIds 인프라 네트워크 개체에 대한 ARM 리소스 ID(최대 1) 목록(예: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/logicalNetworks/{logicalNetworkName} string[]

ClusterVMAccessProfile

이름 묘사
authorizedIPRanges 프로비전된 클러스터의 VM에 대한 SSH 액세스를 위한 IP 주소 또는 CIDR 문자열

ControlPlaneProfile

이름 묘사
controlPlaneEndpoint Kubernetes API 서버의 IP 주소 controlPlaneProfileControlPlaneEndpoint
세다 컨트롤 플레인 노드 수입니다. 기본값은 1이고 개수는 홀수여야 합니다. int
vmSize 컨트롤 플레인 노드의 VM sku 크기 문자열

ControlPlaneProfileControlPlaneEndpoint

이름 묘사
hostIP Kubernetes API 서버의 IP 주소 문자열

ExtendedLocation

이름 묘사
이름 확장된 위치의 ARM ID입니다. 문자열
확장된 위치 유형입니다. 허용되는 값: 'CustomLocation' 'CustomLocation'

LinuxProfileProperties

이름 묘사
ssh 프로비전된 클러스터의 VM에 대한 SSH 구성입니다. LinuxProfilePropertiesSsh

LinuxProfilePropertiesSsh

이름 묘사
publicKeys VM으로 인증하는 데 사용되는 SSH 공개 키 목록입니다. 최대 1키를 지정할 수 있습니다. linuxProfilePropertiesSshPublicKeysItem[]

LinuxProfilePropertiesSshPublicKeysItem

이름 묘사
keyData SSH를 통해 VM으로 인증하는 데 사용되는 인증서 공개 키입니다. 인증서는 헤더가 있거나 없는 PEM 형식이어야 합니다. 문자열

Microsoft.HybridContainerService/provisionedClusterInstances

이름 묘사
apiVersion api 버전 '2024-01-01'
extendedLocation 기본 인프라를 가리키는 확장된 위치 ExtendedLocation
이름 리소스 이름 'default'(필수)
속성 프로비전된 클러스터의 속성입니다. ProvisionedClusterProperties
리소스 종류 'Microsoft.HybridContainerService/provisionedClusterInstances'

NamedAgentPoolProfile

이름 묘사
세다 에이전트 풀의 노드 수입니다. 기본값은 1입니다. int
enableAutoScaling 자동 크기 조정기를 사용하도록 설정할지 여부입니다. 기본값은 false입니다. bool
maxCount 자동 크기 조정을 위한 최대 노드 수 int
maxPods 노드에서 실행할 수 있는 최대 Pod 수입니다. int
minCount 자동 크기 조정을 위한 최소 노드 수 int
이름 프로비전된 클러스터의 컨텍스트에서 기본 에이전트 풀의 고유 이름입니다. 기본값은 <clusterName>-nodepool1입니다. 문자열
nodeLabels 에이전트 풀의 모든 노드에서 유지할 노드 레이블입니다. AgentPoolProfileNodeLabels
nodeTaints 노드 풀 만들기 및 크기 조정 중에 새 노드에 추가된 Taints입니다. 예를 들어 key=value:NoSchedule입니다. string[]
osSKU 에이전트 풀에서 사용하는 OS SKU를 지정합니다. OSType이 Linux인 경우 기본값은 CBLMariner입니다. OSType이 Windows인 경우 기본값은 Windows2019입니다. 'CBLMariner'
'Windows2019'
'Windows2022'
osType 특정 KubernetesVersion 이미지 OS 유형(Linux, Windows) 'Linux'
'Windows'
vmSize 에이전트 풀 노드 VM의 VM sku 크기입니다. 문자열

NetworkProfile

이름 묘사
loadBalancerProfile HA 프록시 부하 분산 장치의 프로필입니다. NetworkProfileLoadBalancerProfile
networkPolicy Kubernetes 네트워크를 빌드하는 데 사용되는 네트워크 정책입니다. 가능한 값은 'calico'입니다. '칼리코'
podCidr Pod IP를 할당할 CIDR 표기법 IP 주소 범위입니다. 문자열

NetworkProfileLoadBalancerProfile

이름 묘사
세다 HA 프록시 부하 분산 장치 VM 수입니다. 기본값은 0입니다. int

ProvisionedClusterLicenseProfile

이름 묘사
azureHybridBenefit Azure 하이브리드 혜택이 옵트인되는지 여부를 나타냅니다. 기본값은 false입니다. 'False'
'NotApplicable'
'True'

ProvisionedClusterProperties

이름 묘사
agentPoolProfiles 프로비전된 클러스터의 에이전트 풀 속성입니다. NamedAgentPoolProfile[]
autoScalerProfile 프로비전된 클러스터에 대해 자동 크기 조정을 사용하도록 설정할 때 클러스터 자동 크기 조정기에서 적용할 매개 변수입니다. ProvisionedClusterPropertiesAutoScalerProfile
cloudProviderProfile 프로비전된 클러스터에 대한 기본 클라우드 인프라 공급자에 대한 프로필입니다. cloudProviderProfile
clusterVMAccessProfile 프로비전된 클러스터의 VM에 대한 SSH 제한 액세스 프로필입니다. clusterVMAccessProfile
controlPlane 프로비전된 클러스터의 컨트롤 플레인에 대한 프로필입니다. controlPlaneProfile
kubernetesVersion 프로비전된 클러스터에서 사용 중인 Kubernetes 버전입니다. 문자열
licenseProfile 프로비전된 클러스터의 라이선스 프로필입니다. ProvisionedClusterLicenseProfile
linuxProfile 프로비전된 클러스터의 Linux VM에 대한 프로필입니다. LinuxProfileProperties
networkProfile 프로비전된 클러스터에 대한 네트워크 구성 프로필입니다. networkProfile
storageProfile 프로비전된 클러스터에 대한 스토리지 구성 프로필입니다. StorageProfile

ProvisionedClusterPropertiesAutoScalerProfile

이름 묘사
balance-similar-node-groups 유효한 값은 'true' 및 'false'입니다. 문자열
확장기 지정하지 않으면 기본값은 'random'입니다. 자세한 내용은 확장기 참조하세요. '최소 폐기물'
'대부분의 포드'
'priority'
'random'
max-empty-bulk-delete 기본값은 10입니다. 문자열
max-graceful-termination-sec 기본값은 600입니다. 문자열
max-node-provision-time 기본값은 '15m'입니다. 값은 정수 뒤에 'm'이어야 합니다. 분(m) 이외의 시간 단위는 지원되지 않습니다. 문자열
max-total-unready-percentage 기본값은 45입니다. 최대값은 100이고 최소값은 0입니다. 문자열
new-pod-scale-up-delay kubernetes 스케줄러가 모든 Pod를 예약하기 전에 CA가 작동하지 않도록 하는 버스트/일괄 처리 확장과 같은 시나리오의 경우 특정 기간이 되기 전에 예약되지 않은 Pod를 무시하도록 CA에 지시할 수 있습니다. 기본값은 '0s'입니다. 값은 정수 다음에 단위(초의 경우 's', 분은 'm', 시간 단위는 'h' 등)여야 합니다. 문자열
ok-total-unready-count 정수여야 합니다. 기본값은 3입니다. 문자열
scale-down-delay-after-add 기본값은 '10m'입니다. 값은 정수 뒤에 'm'이어야 합니다. 분(m) 이외의 시간 단위는 지원되지 않습니다. 문자열
삭제 후 스케일 다운 지연 기본값은 검색 간격입니다. 값은 정수 뒤에 'm'이어야 합니다. 분(m) 이외의 시간 단위는 지원되지 않습니다. 문자열
실패 후 스케일 다운 지연 기본값은 '3m'입니다. 값은 정수 뒤에 'm'이어야 합니다. 분(m) 이외의 시간 단위는 지원되지 않습니다. 문자열
규모 축소-불필요한 시간 기본값은 '10m'입니다. 값은 정수 뒤에 'm'이어야 합니다. 분(m) 이외의 시간 단위는 지원되지 않습니다. 문자열
스케일 다운-읽지 않은 시간 기본값은 '20m'입니다. 값은 정수 뒤에 'm'이어야 합니다. 분(m) 이외의 시간 단위는 지원되지 않습니다. 문자열
스케일 다운 사용률 임계값 기본값은 '0.5'입니다. 문자열
스캔 간격 기본값은 '10'입니다. 값은 정수(초)여야 합니다. 문자열
skip-nodes-with-local-storage 기본값은 true입니다. 문자열
skip-nodes-with-system-Pods 기본값은 true입니다. 문자열

StorageProfile

이름 묘사
nfsCsiDriver 스토리지 프로필에 대한 NFS CSI 드라이버 설정입니다. StorageProfileNfsCSIDriver
smbCsiDriver 스토리지 프로필에 대한 SMB CSI 드라이버 설정입니다. StorageProfileSmbCSIDriver

StorageProfileNfsCSIDriver

이름 묘사
사용 NFS CSI 드라이버를 사용하도록 설정할지 여부를 나타냅니다. 기본값은 true입니다. bool

StorageProfileSmbCSIDriver

이름 묘사
사용 SMB CSI 드라이버를 사용할지 여부를 나타냅니다. 기본값은 true입니다. bool

빠른 시작 템플릿

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

템플렛 묘사
Azure Stack HCI Kubernetes 클러스터 만들기

Azure 배포
이 템플릿은 Azure Stack HCI 버전 23H2+에서 Kubernetes 클러스터를 만듭니다.

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

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

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

리소스 형식

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

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.HybridContainerService/provisionedClusterInstances@2024-01-01"
  name = "string"
  parent_id = "string"
  body = jsonencode({
    extendedLocation = {
      name = "string"
      type = "string"
    }
    properties = {
      agentPoolProfiles = [
        {
          count = int
          enableAutoScaling = bool
          maxCount = int
          maxPods = int
          minCount = int
          name = "string"
          nodeLabels = {
            {customized property} = "string"
          }
          nodeTaints = [
            "string"
          ]
          osSKU = "string"
          osType = "string"
          vmSize = "string"
        }
      ]
      autoScalerProfile = {
        balance-similar-node-groups = "string"
        expander = "string"
        max-empty-bulk-delete = "string"
        max-graceful-termination-sec = "string"
        max-node-provision-time = "string"
        max-total-unready-percentage = "string"
        new-pod-scale-up-delay = "string"
        ok-total-unready-count = "string"
        scale-down-delay-after-add = "string"
        scale-down-delay-after-delete = "string"
        scale-down-delay-after-failure = "string"
        scale-down-unneeded-time = "string"
        scale-down-unready-time = "string"
        scale-down-utilization-threshold = "string"
        scan-interval = "string"
        skip-nodes-with-local-storage = "string"
        skip-nodes-with-system-pods = "string"
      }
      cloudProviderProfile = {
        infraNetworkProfile = {
          vnetSubnetIds = [
            "string"
          ]
        }
      }
      clusterVMAccessProfile = {
        authorizedIPRanges = "string"
      }
      controlPlane = {
        controlPlaneEndpoint = {
          hostIP = "string"
        }
        count = int
        vmSize = "string"
      }
      kubernetesVersion = "string"
      licenseProfile = {
        azureHybridBenefit = "string"
      }
      linuxProfile = {
        ssh = {
          publicKeys = [
            {
              keyData = "string"
            }
          ]
        }
      }
      networkProfile = {
        loadBalancerProfile = {
          count = int
        }
        networkPolicy = "string"
        podCidr = "string"
      }
      storageProfile = {
        nfsCsiDriver = {
          enabled = bool
        }
        smbCsiDriver = {
          enabled = bool
        }
      }
    }
  })
}

속성 값

AgentPoolProfileNodeLabels

이름 묘사

CloudProviderProfile

이름 묘사
infraNetworkProfile 프로비전된 클러스터에서 사용하는 인프라 네트워크에 대한 프로필 cloudProviderProfileInfraNetworkProfile

CloudProviderProfileInfraNetworkProfile

이름 묘사
vnetSubnetIds 인프라 네트워크 개체에 대한 ARM 리소스 ID(최대 1) 목록(예: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/logicalNetworks/{logicalNetworkName} string[]

ClusterVMAccessProfile

이름 묘사
authorizedIPRanges 프로비전된 클러스터의 VM에 대한 SSH 액세스를 위한 IP 주소 또는 CIDR 문자열

ControlPlaneProfile

이름 묘사
controlPlaneEndpoint Kubernetes API 서버의 IP 주소 controlPlaneProfileControlPlaneEndpoint
세다 컨트롤 플레인 노드 수입니다. 기본값은 1이고 개수는 홀수여야 합니다. int
vmSize 컨트롤 플레인 노드의 VM sku 크기 문자열

ControlPlaneProfileControlPlaneEndpoint

이름 묘사
hostIP Kubernetes API 서버의 IP 주소 문자열

ExtendedLocation

이름 묘사
이름 확장된 위치의 ARM ID입니다. 문자열
확장된 위치 유형입니다. 허용되는 값: 'CustomLocation' 'CustomLocation'

LinuxProfileProperties

이름 묘사
ssh 프로비전된 클러스터의 VM에 대한 SSH 구성입니다. LinuxProfilePropertiesSsh

LinuxProfilePropertiesSsh

이름 묘사
publicKeys VM으로 인증하는 데 사용되는 SSH 공개 키 목록입니다. 최대 1키를 지정할 수 있습니다. linuxProfilePropertiesSshPublicKeysItem[]

LinuxProfilePropertiesSshPublicKeysItem

이름 묘사
keyData SSH를 통해 VM으로 인증하는 데 사용되는 인증서 공개 키입니다. 인증서는 헤더가 있거나 없는 PEM 형식이어야 합니다. 문자열

Microsoft.HybridContainerService/provisionedClusterInstances

이름 묘사
extendedLocation 기본 인프라를 가리키는 확장된 위치 ExtendedLocation
이름 리소스 이름 'default'(필수)
parent_id 이 확장 리소스를 적용할 리소스의 ID입니다. string(필수)
속성 프로비전된 클러스터의 속성입니다. ProvisionedClusterProperties
리소스 종류 "Microsoft.HybridContainerService/provisionedClusterInstances@2024-01-01"

NamedAgentPoolProfile

이름 묘사
세다 에이전트 풀의 노드 수입니다. 기본값은 1입니다. int
enableAutoScaling 자동 크기 조정기를 사용하도록 설정할지 여부입니다. 기본값은 false입니다. bool
maxCount 자동 크기 조정을 위한 최대 노드 수 int
maxPods 노드에서 실행할 수 있는 최대 Pod 수입니다. int
minCount 자동 크기 조정을 위한 최소 노드 수 int
이름 프로비전된 클러스터의 컨텍스트에서 기본 에이전트 풀의 고유 이름입니다. 기본값은 <clusterName>-nodepool1입니다. 문자열
nodeLabels 에이전트 풀의 모든 노드에서 유지할 노드 레이블입니다. AgentPoolProfileNodeLabels
nodeTaints 노드 풀 만들기 및 크기 조정 중에 새 노드에 추가된 Taints입니다. 예를 들어 key=value:NoSchedule입니다. string[]
osSKU 에이전트 풀에서 사용하는 OS SKU를 지정합니다. OSType이 Linux인 경우 기본값은 CBLMariner입니다. OSType이 Windows인 경우 기본값은 Windows2019입니다. 'CBLMariner'
'Windows2019'
'Windows2022'
osType 특정 KubernetesVersion 이미지 OS 유형(Linux, Windows) 'Linux'
'Windows'
vmSize 에이전트 풀 노드 VM의 VM sku 크기입니다. 문자열

NetworkProfile

이름 묘사
loadBalancerProfile HA 프록시 부하 분산 장치의 프로필입니다. NetworkProfileLoadBalancerProfile
networkPolicy Kubernetes 네트워크를 빌드하는 데 사용되는 네트워크 정책입니다. 가능한 값은 'calico'입니다. '칼리코'
podCidr Pod IP를 할당할 CIDR 표기법 IP 주소 범위입니다. 문자열

NetworkProfileLoadBalancerProfile

이름 묘사
세다 HA 프록시 부하 분산 장치 VM 수입니다. 기본값은 0입니다. int

ProvisionedClusterLicenseProfile

이름 묘사
azureHybridBenefit Azure 하이브리드 혜택이 옵트인되는지 여부를 나타냅니다. 기본값은 false입니다. 'False'
'NotApplicable'
'True'

ProvisionedClusterProperties

이름 묘사
agentPoolProfiles 프로비전된 클러스터의 에이전트 풀 속성입니다. NamedAgentPoolProfile[]
autoScalerProfile 프로비전된 클러스터에 대해 자동 크기 조정을 사용하도록 설정할 때 클러스터 자동 크기 조정기에서 적용할 매개 변수입니다. ProvisionedClusterPropertiesAutoScalerProfile
cloudProviderProfile 프로비전된 클러스터에 대한 기본 클라우드 인프라 공급자에 대한 프로필입니다. cloudProviderProfile
clusterVMAccessProfile 프로비전된 클러스터의 VM에 대한 SSH 제한 액세스 프로필입니다. clusterVMAccessProfile
controlPlane 프로비전된 클러스터의 컨트롤 플레인에 대한 프로필입니다. controlPlaneProfile
kubernetesVersion 프로비전된 클러스터에서 사용 중인 Kubernetes 버전입니다. 문자열
licenseProfile 프로비전된 클러스터의 라이선스 프로필입니다. ProvisionedClusterLicenseProfile
linuxProfile 프로비전된 클러스터의 Linux VM에 대한 프로필입니다. LinuxProfileProperties
networkProfile 프로비전된 클러스터에 대한 네트워크 구성 프로필입니다. networkProfile
storageProfile 프로비전된 클러스터에 대한 스토리지 구성 프로필입니다. StorageProfile

ProvisionedClusterPropertiesAutoScalerProfile

이름 묘사
balance-similar-node-groups 유효한 값은 'true' 및 'false'입니다. 문자열
확장기 지정하지 않으면 기본값은 'random'입니다. 자세한 내용은 확장기 참조하세요. '최소 폐기물'
'대부분의 포드'
'priority'
'random'
max-empty-bulk-delete 기본값은 10입니다. 문자열
max-graceful-termination-sec 기본값은 600입니다. 문자열
max-node-provision-time 기본값은 '15m'입니다. 값은 정수 뒤에 'm'이어야 합니다. 분(m) 이외의 시간 단위는 지원되지 않습니다. 문자열
max-total-unready-percentage 기본값은 45입니다. 최대값은 100이고 최소값은 0입니다. 문자열
new-pod-scale-up-delay kubernetes 스케줄러가 모든 Pod를 예약하기 전에 CA가 작동하지 않도록 하는 버스트/일괄 처리 확장과 같은 시나리오의 경우 특정 기간이 되기 전에 예약되지 않은 Pod를 무시하도록 CA에 지시할 수 있습니다. 기본값은 '0s'입니다. 값은 정수 다음에 단위(초의 경우 's', 분은 'm', 시간 단위는 'h' 등)여야 합니다. 문자열
ok-total-unready-count 정수여야 합니다. 기본값은 3입니다. 문자열
scale-down-delay-after-add 기본값은 '10m'입니다. 값은 정수 뒤에 'm'이어야 합니다. 분(m) 이외의 시간 단위는 지원되지 않습니다. 문자열
삭제 후 스케일 다운 지연 기본값은 검색 간격입니다. 값은 정수 뒤에 'm'이어야 합니다. 분(m) 이외의 시간 단위는 지원되지 않습니다. 문자열
실패 후 스케일 다운 지연 기본값은 '3m'입니다. 값은 정수 뒤에 'm'이어야 합니다. 분(m) 이외의 시간 단위는 지원되지 않습니다. 문자열
규모 축소-불필요한 시간 기본값은 '10m'입니다. 값은 정수 뒤에 'm'이어야 합니다. 분(m) 이외의 시간 단위는 지원되지 않습니다. 문자열
스케일 다운-읽지 않은 시간 기본값은 '20m'입니다. 값은 정수 뒤에 'm'이어야 합니다. 분(m) 이외의 시간 단위는 지원되지 않습니다. 문자열
스케일 다운 사용률 임계값 기본값은 '0.5'입니다. 문자열
스캔 간격 기본값은 '10'입니다. 값은 정수(초)여야 합니다. 문자열
skip-nodes-with-local-storage 기본값은 true입니다. 문자열
skip-nodes-with-system-Pods 기본값은 true입니다. 문자열

StorageProfile

이름 묘사
nfsCsiDriver 스토리지 프로필에 대한 NFS CSI 드라이버 설정입니다. StorageProfileNfsCSIDriver
smbCsiDriver 스토리지 프로필에 대한 SMB CSI 드라이버 설정입니다. StorageProfileSmbCSIDriver

StorageProfileNfsCSIDriver

이름 묘사
사용 NFS CSI 드라이버를 사용하도록 설정할지 여부를 나타냅니다. 기본값은 true입니다. bool

StorageProfileSmbCSIDriver

이름 묘사
사용 SMB CSI 드라이버를 사용할지 여부를 나타냅니다. 기본값은 true입니다. bool