AKS & Managed Lustre CSI

1. 서론

Azure Lustre CSI Driver for kubernetes를 사용하여 AKS에서 Azure Managed Lustre를 사용할 수 있습니다. Kubernetes 컨테이너에서 Azure Managed Lustre 스토리지를 PV로 액세스할 수 있습니다.

2. 버전 확인

AKS Kubernetes 버전 1.21 이상 지원합니다.

kubernetes용 Azure Lustre CSI 드라이버는 현재 AKS 노드 풀에 대한 Ubuntu Linux OS SKU에서만 작동합니다.

3. 네트워크 확인

AKS 네트워크 모델의 kubenet, CNI에서 지원합니다.

Azure Managed Lustre의 경우 Azure 프라이빗 가상네트워크 내에서 작동합니다.

그러므로, AKS는 Azure Managed Lustre 가상 네트워크에 대한 네트워크 연결이 있어야합니다.

<aside> 💡

주의)

Azure Managed Lustre와 동일한 서브넷에 AKS를 설치하지 않아야합니다.

Azure Managed Lustre를 배포하기 위한 서브넷 CIDR은 다음 문서에서 확인하세요.

</aside>

  1. AKS와 Azure Managed Lustre 네트워크 피어링

    image.png

  2. Azure Managed Lustre 가상 네트워크의 서브넷에 AKS 설치

    image.png

4. 테스트

  1. Azure Managed Lustre 생성 및 구성

  2. AKS Cluster 생성 및 구성

    az login --use-device-code
    
    CLUSTER=aks-cluster
    RESOURCE_GROUP=cyclecloud-rg
    LOCATION=koreacentral
    VNET=vnet-42dot-01
    SNET01=snet-42dot-mg-lustre
    SNET02=snet-42dot-aks
    
    VNET_CIDR=10.0.0.0/16
    SNET01_CIDR=10.0.1.0/24
    SNET02_CIDR=10.0.2.0/24
    
    # 리소스 그룹 생성 
    az group create --name ${RESOURCE_GROUP} --location ${LOCATION}
    
    # 가상 네트워크 생성 
    az network vnet create --resource-group ${RESOURCE_GROUP} --name ${VNET} --address-prefixes ${VNET_CIDR} --location ${LOCATION}
      
    # AKS 서브넷 생성
    az network vnet subnet create --resource-group $RESOURCE_GROUP --vnet-name $VNET --name $SNET02 --address-prefixes $SNET02_CIDR
    
    # AKS Subnet ID 
    $SUBNET_ID = az network vnet subnet show --resource-group $RESOURCE_GROUP --vnet-name $VNET --name $SNET02 --query id -o tsv
    
    # AKS Cluster 생성  
    az aks create --resource-group $RESOURCE_GROUP --name $CLUSTER --vnet-subnet-id $SUBNET_ID --enable-managed-identity --generate-ssh-keys --network-plugin azure --service-cidr 10.1.0.0/16 --dns-service-ip 10.1.0.10 --node-count 1 --node-vm-size Standard_D2s_v3
    
    # AKS 자격증명 다운로드 
    az aks get-credentials --resource-group cyclecloud-rg --name aks-cluster --overwrite-existing
    
    1. Import