11.4.3. Microsoft Azure의 클러스터 API 구성 옵션
Cluster API 사용자 정의 리소스 매니페스트에서 값을 업데이트하여 Microsoft Azure Cluster API 머신의 구성을 변경할 수 있습니다.
클러스터 API를 사용하여 머신을 관리하는 것은 기술 프리뷰 기능만 해당합니다. 기술 프리뷰 기능은 Red Hat 프로덕션 서비스 수준 계약(SLA)에서 지원되지 않으며 기능적으로 완전하지 않을 수 있습니다. 따라서 프로덕션 환경에서 사용하는 것은 권장하지 않습니다. 이러한 기능을 사용하면 향후 제품 기능을 조기에 이용할 수 있어 개발 과정에서 고객이 기능을 테스트하고 피드백을 제공할 수 있습니다.
Red Hat 기술 프리뷰 기능의 지원 범위에 대한 자세한 내용은 기술 프리뷰 기능 지원 범위를 참조하십시오.
11.4.3.1. Microsoft Azure 클러스터 구성을 위한 샘플 YAML 링크 복사링크가 클립보드에 복사되었습니다!
다음 예제 YAML 파일은 Azure 클러스터에 대한 구성을 보여줍니다.
11.4.3.1.1. Microsoft Azure의 클러스터 API 머신 템플릿 리소스의 샘플 YAML 링크 복사링크가 클립보드에 복사되었습니다!
머신 템플릿 리소스는 공급자마다 다르며 컴퓨팅 머신 세트에서 생성하는 시스템의 기본 속성을 정의합니다. 머신을 생성할 때 컴퓨팅 머신 세트는 이 템플릿을 참조합니다.
apiVersion: infrastructure.cluster.x-k8s.io/v1beta1
kind: AzureMachineTemplate
metadata:
name: <template_name>
namespace: openshift-cluster-api
spec:
template:
spec:
disableExtensionOperations: true
identity: UserAssigned
image:
id: /subscriptions/<subscription_id>/resourceGroups/<cluster_name>-rg/providers/Microsoft.Compute/galleries/gallery_<compliant_cluster_name>/images/<cluster_name>-gen2/versions/latest
networkInterfaces:
- acceleratedNetworking: true
privateIPConfigs: 1
subnetName: <cluster_name>-worker-subnet
osDisk:
diskSizeGB: 128
managedDisk:
storageAccountType: Premium_LRS
osType: Linux
sshPublicKey: <ssh_key_value>
userAssignedIdentities:
- providerID: 'azure:///subscriptions/<subscription_id>/resourcegroups/<cluster_name>-rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<cluster_name>-identity'
vmSize: Standard_D4s_v3
- 1
- 머신 템플릿 유형을 지정합니다. 이 값은 플랫폼의 값과 일치해야 합니다.
- 2
- 머신 템플릿의 이름을 지정합니다.
- 3
- 환경에 대한 세부 정보를 지정합니다. 여기에 있는 값은 예입니다.
- 4
- 인스턴스 유형과 호환되는 이미지를 지정합니다. 설치 프로그램에서 생성한 Hyper-V generation V2 이미지에는
-gen2접미사가 있지만 V1 이미지의 접미사 없이 이름이 동일합니다.참고기본 OpenShift Container Platform 클러스터 이름에 하이픈(
-)이 포함되어 있으며, 이는 Azure everyone 이름 요구 사항과 호환되지 않습니다. 이 구성의 <compliant_cluster_name> 값은 하이픈 대신 밑줄(_)을 사용하여 이러한 요구 사항을 준수해야 합니다. <cluster_name>의 다른 인스턴스는 변경되지 않습니다.예를 들어,
jdoe-test-2m2np클러스터 이름은jdoe_test_2m2np로 변환됩니다. 이 예제의 Cryostat_<compliant_cluster_name>에 대한 전체 문자열은LOCAL_jdoe_test_2m2np이며, ring_jdoe-test-2m2np. 이 예제의spec.template.spec.image.id의 전체 값은/subscriptions/<subscription_id>/resourceGroups/jdoe-test-2m2np-rg/providers/Microsoft.Compute/galleries/gallery_jdoe_test_2m2np/images/jdoe-test-2m2np2/versions latest입니다.
11.4.3.1.2. Microsoft Azure의 Cluster API 컴퓨팅 머신 세트 리소스의 샘플 YAML 링크 복사링크가 클립보드에 복사되었습니다!
컴퓨팅 머신 세트 리소스는 생성하는 시스템의 추가 속성을 정의합니다. 컴퓨팅 머신 세트는 머신을 생성할 때 클러스터 리소스 및 머신 템플릿도 참조합니다.
apiVersion: cluster.x-k8s.io/v1beta1
kind: MachineSet
metadata:
name: <machine_set_name>
namespace: openshift-cluster-api
labels:
cluster.x-k8s.io/cluster-name: <cluster_name>
spec:
clusterName: <cluster_name>
replicas: 1
selector:
matchLabels:
test: example
cluster.x-k8s.io/cluster-name: <cluster_name>
cluster.x-k8s.io/set-name: <machine_set_name>
template:
metadata:
labels:
test: example
cluster.x-k8s.io/cluster-name: <cluster_name>
cluster.x-k8s.io/set-name: <machine_set_name>
node-role.kubernetes.io/<role>: ""
spec:
bootstrap:
dataSecretName: worker-user-data
clusterName: <cluster_name>
infrastructureRef:
apiVersion: infrastructure.cluster.x-k8s.io/v1beta1
kind: AzureMachineTemplate
name: <template_name>