5부 중 1부인 이 자습서에서는 다음 방법을 알아봅니다.
- Kubernetes CLI
kubectl을 설치합니다. -
aks-previewAzure CLI 확장을 설치합니다. -
AzureLinuxOSGuardPreview기능 플래그를 등록합니다. - Azure 리소스 그룹을 만듭니다.
- OS Guard 클러스터를 사용하여 Azure Linux를 만들고 배포합니다.
- Azure Linux에 연결하기 위해 OS Guard 클러스터를 사용하도록
kubectl을(를) 구성합니다.
이후 자습서에서는 OS Guard 노드 풀이 있는 Azure Linux를 기존 클러스터에 추가하고 OS Guard를 사용하여 기존 노드를 Azure Linux로 마이그레이션하는 방법을 알아봅니다.
고려사항 및 제한사항
시작하기 전에 OS Guard(미리 보기)를 사용하여 Azure Linux에 대한 다음 고려 사항 및 제한 사항을 검토합니다.
- OS Guard를 사용하는 Azure Linux에는 Kubernetes 버전 1.32.0 이상이 필요합니다.
- OS Guard 이미지가 있는 모든 Azure Linux에는 FIPS(Federal Information Process Standard) 및 신뢰할 수 있는 시작이 활성화되어 있습니다.
- Azure CLI 및 ARM 템플릿은 미리 보기에서 AKS에서 OS Guard를 사용하는 Azure Linux에 대해 유일하게 지원되는 배포 방법입니다. PowerShell 및 Terraform은 지원되지 않습니다.
- Arm64 이미지는 미리 보기로 AKS의 OS Guard를 사용하는 Azure Linux에서 지원되지 않습니다.
-
NodeImage및None는 OS Guard 상태의 AKS에서 Azure Linux에 대해 유일하게 지원되는 OS 업그레이드 채널입니다.Unmanaged및SecurityPatch는 변경할 수 없는 /usr 디렉터리로 인해 OS Guard가 포함된 Azure Linux와 호환되지 않습니다. - 아티팩트 스트리밍 은 지원되지 않습니다.
- Pod 샌드박싱 은 지원되지 않습니다.
- CVM(기밀 가상 머신) 은 지원되지 않습니다.
- Gen 1 VM(가상 머신) 은 지원되지 않습니다.
필수 조건
- 최신 버전의 Azure CLI가 필요합니다.
az version명령을 사용하여 버전을 찾습니다. 최신 버전으로 업그레이드하려면 명령을 사용합니다az upgrade. -
aks-previewAzure CLI 확장을 설치합니다. -
기능 플래그를
AzureLinuxOSGuardPreview등록합니다.
aks-preview Azure CLI 확장 설치
중요합니다
AKS 미리 보기 기능은 셀프 서비스에서 사용할 수 있습니다(옵트인 방식). 미리 보기는 "있는 그대로" 및 "사용 가능한 상태로" 제공되며 서비스 수준 계약 및 제한적 보증에서 제외됩니다. AKS 미리 보기의 일부는 고객 지원팀에서 최선을 다해 지원합니다. 따라서 이러한 기능은 프로덕션 용도로 사용할 수 없습니다. 자세한 내용은 다음 지원 문서를 참조하세요.
aks-preview명령을 사용하여az extension add확장을 설치합니다.az extension add --name aks-previewaz extension update명령을 사용하여 확장의 최신 버전으로 업데이트합니다.az extension update --name aks-preview
Azure Linux OS Guard 미리 보기 기능 플래그 등록
AzureLinuxOSGuardPreview명령을 사용하여az feature register기능 플래그를 등록합니다.az feature register --namespace "Microsoft.ContainerService" --name "AzureLinuxOSGuardPreview"상태가 Registered로 표시되는 데 몇 분 정도 걸립니다.
또한
az feature show명령을 사용하여 등록 상태를 확인합니다.az feature show --namespace "Microsoft.ContainerService" --name "AzureLinuxOSGuardPreview"상태가 등록됨으로 표시되면,
az provider register명령을 사용하여Microsoft.ContainerService리소스 공급자의 등록을 갱신합니다.az provider register --namespace "Microsoft.ContainerService"
리소스 그룹 만들기
Azure 리소스 그룹은 Azure 리소스가 배포되고 관리되는 논리 그룹입니다. 리소스 그룹을 만들 때 위치를 지정해야 합니다. 이 위치는 다음과 같습니다.
- 리소스 그룹 메타데이터의 스토리지 위치입니다.
- 리소스를 만들 때 다른 지역을 지정하지 않으면 Azure에서 리소스가 실행되는 위치입니다.
az group create 명령을 사용하여 리소스 그룹을 만듭니다. 명령을 실행하기 전에 각 배포에 대한 고유한 리소스 이름을 보장하기 위해 환경 변수가 선언됩니다.
export REGION="EastUS2"
az group create --name $RESOURCE_GROUP_NAME --location $REGION
예제 출력:
{
"id": "/subscriptions/xxxxx/resourceGroups/testAzureLinuxOSGuardResourceGroupxxxxx",
"location": "EastUS2",
"managedBy": null,
"name": "testAzureLinuxOSGuardResourceGroupxxxxx",
"properties": {
"provisioningState": "Succeeded"
},
"tags": null,
"type": "Microsoft.Resources/resourceGroups"
}
OS Guard(미리 보기) 클러스터를 사용하여 Azure Linux 만들기
매개 변수와 함께 az aks create 명령을 사용하여 --os-sku AzureLinuxOSGuard AKS 클러스터를 만들어 OS Guard 클러스터로 Azure Linux를 프로비전합니다. OS Guard에서 Azure Linux를 사용하려면 FIPS, 보안 부팅 및 vtpm 을 사용하도록 설정해야 합니다. 다음 예제에서는 OS Guard 클러스터를 사용하여 Azure Linux를 만듭니다.
az aks create --name $MY_AZ_CLUSTER_NAME --resource-group $MY_RESOURCE_GROUP_NAME --os-sku AzureLinuxOSGuard --node-osdisk-type Managed --enable-fips-image --enable-secure-boot --enable-vtpm
예제 출력:
{
"id": "/subscriptions/xxxxx/resourceGroups/testAzureLinuxOSGuardResourceGroupxxxxx/providers/Microsoft.ContainerService/managedClusters/testAzureLinuxOSGuardClusterxxxxx",
"location": "WestUS2",
"name": "testAzureLinuxOSGuardClusterxxxxx",
"properties": {
"provisioningState": "Succeeded"
},
"type": "Microsoft.ContainerService/managedClusters"
}
몇 분 후 명령이 완료되면 클러스터에 대한 JSON 형식 정보가 반환됩니다.
kubectl을 사용하여 클러스터에 연결
kubectl 명령을 사용하여 Kubernetes 클러스터에 연결하도록 az aks get-credentials을 구성합니다. 다음 예제에서는 이전에 만든 리소스 그룹 및 클러스터 이름을 사용하여 Azure Linux 컨테이너 호스트 클러스터에 대한 자격 증명을 가져옵니다.
az aks get-credentials --resource-group $RESOURCE_GROUP_NAME --name $CLUSTER_NAME
클러스터 노드 목록을 반환하는 명령을 사용하여 kubectl get nodes 클러스터에 대한 연결을 확인합니다.
kubectl get nodes
예제 출력:
NAME STATUS ROLES AGE VERSION
aks-nodepool1-00000000-0 Ready agent 10m v1.20.7
aks-nodepool1-00000000-1 Ready agent 10m v1.20.7
다음 단계
이 자습서에서는 OS Guard 클러스터를 사용하여 Azure Linux를 만들고 배포했습니다. 다음 자습서에서는 OS Guard 노드 풀이 있는 Azure Linux를 기존 클러스터에 추가하는 방법을 알아봅니다.