AKS에서 구성이 동일한 노드는 모두 노드 풀로 그룹화됩니다. 각 풀에는 애플리케이션을 실행하는 VM이 포함됩니다. 이전 자습서에서는 단일 노드 풀로 Azure Linux 컨테이너 호스트 클러스터를 만들었습니다. 애플리케이션의 다양한 컴퓨팅 또는 스토리지 요구 사항을 충족하기 위해 추가 사용자 노드 풀을 만들 수 있습니다.
이 자습서에서는 5부 중 2부에서 다음 방법을 알아봅니다.
- Azure Linux 노드 풀 추가
- 노드 풀의 상태 확인
이 자습서의 명령은 Tutorial 1: AKS용 Azure Linux 컨테이너 호스트를 사용하여 클러스터 만들기 설정된 환경 변수를 사용합니다.
이후 자습서에서는 노드를 Azure Linux로 마이그레이션하고 원격 분석을 사용하여 클러스터를 모니터링하는 방법을 알아봅니다.
사전 요구 사항
- 이전 자습서에서는 Azure Linux 컨테이너 호스트 클러스터를 만들고 배포했습니다. 이러한 단계를 수행하지 않고 계속 진행하려면 자습서 1: Create a cluster with the Azure Linux Container Host for AKS(AKS용 Azure Linux 컨테이너 호스트를 사용하여 클러스터 만들기)부터 시작하세요.
- 최신 버전의 Azure CLI가 필요합니다.
az --version을 실행하여 버전을 찾습니다. 설치 또는 업그레이드해야 하는 경우 Azure CLI 설치를 참조하세요.
환경 변수 설정
각 배포에 대해 고유한 리소스 이름을 만들려면 다음 환경 변수를 설정합니다. 자리 표시자를 <your-node-pool-name> 원하는 이름으로 바꿉니다. 필요에 따라 임의 접미사를 추가하여 고유성을 보장할 수 있습니다. 노드 풀의 이름은 소문자로 시작해야 하며 영숫자 문자만 포함할 수 있습니다. Linux 노드 풀의 경우 길이가 1~12자 사이여야 합니다.
# Set random suffix for uniqueness
export RANDOM_SUFFIX=$(openssl rand -hex 3)
# Set node pool name
export NODE_POOL_NAME="<your-node-pool-name>$RANDOM_SUFFIX"
Azure Linux 노드 풀 추가
az aks nodepool add 명령을 사용하여 기존 클러스터에 Azure Linux 노드 풀을 추가하고 --os-sku AzureLinux 지정합니다. 다음 예제에서는 Tutorial 1에서 클러스터에서 3개의 노드를 실행하는 노드 풀을 만듭니다. AKS Azure Linux 컨테이너 호스트를 사용하여 클러스터를 만듭니다.
az aks nodepool add \
--resource-group $RESOURCE_GROUP \
--cluster-name $CLUSTER_NAME \
--name $NODE_POOL_NAME \
--node-count 3 \
--os-sku AzureLinux
예시 출력:
{
"agentPoolType": "VirtualMachineScaleSets",
"count": 3,
"name": "alnodepool",
"osType": "Linux",
"provisioningState": "Succeeded",
"resourceGroup": "testAzureLinuxResourceGroupxxxxx",
"type": "Microsoft.ContainerService/managedClusters/agentPools"
}
노드 풀 상태 확인
명령을 사용하여 az aks nodepool list 노드 풀의 상태를 확인합니다.
az aks nodepool list --resource-group $RESOURCE_GROUP --cluster-name $CLUSTER_NAME
예시 출력:
[
{
"agentPoolType": "VirtualMachineScaleSets",
"availabilityZones": null,
"count": 1,
"enableAutoScaling": false,
"enableEncryptionAtHost": false,
"enableFips": false,
"enableNodePublicIp": false,
"id": "/subscriptions/REDACTED/resourcegroups/myAKSResourceGroupxxxxx/providers/Microsoft.ContainerService/managedClusters/myAKSClusterxxxxx/agentPools/nodepoolx",
"maxPods": 110,
"mode": "System",
"name": "nodepoolx",
"nodeImageVersion": "AKSUbuntu-1804gen2containerd-2023.06.06",
"orchestratorVersion": "1.25.6",
"osDiskSizeGb": 128,
"osDiskType": "Managed",
"osSku": "Ubuntu",
"osType": "Linux",
"powerState": {
"code": "Running"
},
"provisioningState": "Succeeded",
"resourceGroup": "myAKSResourceGroupxxxxx",
"type": "Microsoft.ContainerService/managedClusters/agentPools",
"vmSize": "Standard_DS2_v2"
},
{
"agentPoolType": "VirtualMachineScaleSets",
"availabilityZones": null,
"count": 3,
"enableAutoScaling": false,
"enableEncryptionAtHost": false,
"enableFips": false,
"enableNodePublicIp": false,
"id": "/subscriptions/REDACTED/resourcegroups/myAKSResourceGroupxxxxx/providers/Microsoft.ContainerService/managedClusters/myAKSClusterxxxxx/agentPools/npxxxxxx",
"maxPods": 110,
"mode": "User",
"name": "npxxxxxx",
"nodeImageVersion": "AzureLinuxContainerHost-2023.06.06",
"orchestratorVersion": "1.25.6",
"osDiskSizeGb": 128,
"osDiskType": "Managed",
"osSku": "AzureLinux",
"osType": "Linux",
"powerState": {
"code": "Running"
},
"provisioningState": "Succeeded",
"resourceGroup": "myAKSResourceGroupxxxxx",
"type": "Microsoft.ContainerService/managedClusters/agentPools",
"vmSize": "Standard_DS2_v2"
}
]
다음 단계:
이 자습서에서는 기존 클러스터에 Azure Linux 노드 풀을 추가했습니다. 다음 자습서에서는 기존 노드를 Azure Linux로 마이그레이션하는 방법을 알아봅니다.