다음을 통해 공유


AKS Edge Essentials에 대한 추가 구성 및 스크립트

이 문서에서는 프록시를 통해 연결된 클러스터에 적용할 수 있는 Azure Arc에 연결하는 다른 방법을 제공합니다.

프록시를 사용하여 AKS Edge Essentials 클러스터를 Arc에 연결

필수 조건

  • 소유자 역할 또는 기여자사용자 액세스 관리자 역할의 조합이 있는 Azure 구독입니다. 구독으로 이동하고, Azure Portal의 왼쪽에서 액세스 제어(IAM)를 선택한 다음, 내 액세스 보기를 선택하여 액세스 수준을 확인할 수 있습니다. 리소스 그룹 관리에 대한 자세한 내용은 Azure Resource Manager 설명서를 참조하세요.
  • Microsoft.HybridCompute, Microsoft.GuestConfiguration, Microsoft.HybridConnectivity, Microsoft.Kubernetes 및 Microsoft.KubernetesConfiguration같은 Azure 구독에서 필요한 모든 리소스 공급자를 사용하도록 설정합니다.
  • AKS Edge Essentials Azure 리소스에 대한 리소스 그룹을 만들고 확인합니다.

참고 항목

리소스 그룹 내에서 리소스를 삭제하려면 기여자 역할이 있어야 합니다. Arc에서 연결을 끊는 명령은 이 역할 할당 없이 실패합니다.

1단계: Azure 연결을 위한 클러스터 구성

  1. 이전에 수행하지 않은 경우 Azure/AKS-Edge GitHub 리포지토리를 다운로드합니다. 코드 탭으로 이동하고 Zip 다운로드 단추를 클릭하여 리포지토리를 .zip 파일로 다운로드합니다. 로컬 폴더에 .zip 파일을 추출합니다.

  2. 다음 표에 설명된 대로 섹션 아래 Azure 의 aide-userconfig.json 파일에서 Azure 구독에 대한 세부 정보를 제공합니다. Azure Arc 지원 kubernetes를 사용하여 Azure에 성공적으로 연결하려면 Azure의 리소스에 대한 역할 기반 액세스를 제공하는 서비스 주체가 필요합니다. 서비스 주체 ID와 암호가 이미 있는 경우 aide-userconfig.json 파일의 모든 필드를 업데이트할 수 있습니다. 서비스 주체가 없는 경우 이름을 제공할 수 있으며, 다음 단계의 스크립트는 이름을 만들고 섹션을 Auth 채웁니다.

    attribute 값 유형 설명
    Azure.ClusterName string 클러스터의 이름을 제공합니다. 기본적으로 hostname_cluster 사용되는 이름입니다.
    Azure.Location string 리소스 그룹의 위치입니다. 배포에 가장 가까운 위치를 선택합니다.
    Azure.SubscriptionName string 구독 이름입니다.
    Azure.SubscriptionId GUID 구독 ID. Azure Portal에서 사용 중인 구독을 선택한 다음 구독 ID 문자열을 복사하여 JSON에 붙여넣습니다.
    Azure.TenantId GUID 테넌트 ID Azure Portal에서 기본 디렉터리 페이지로 이동해야 하는 "Azure Active Directory"를 검색합니다 . 여기에서 테넌트 ID 문자열을 복사하여 JSON 파일에 붙여넣을 수 있습니다.
    Azure.ResourceGroupName string AKS Edge Essentials에 대한 Azure 리소스를 호스트할 Azure 리소스 그룹의 이름입니다. 기존 리소스 그룹을 사용하거나 새 이름을 추가하면 시스템에서 해당 리소스 그룹을 만듭니다.
    Azure.ServicePrincipalName string Azure 서비스 주체 이름입니다.
    Azure.Auth.ServicePrincipalId GUID 자격 증명으로 사용할 Azure 서비스 주체의 AppID입니다. AKS Edge Essentials는 이 서비스 주체를 사용하여 클러스터를 Arc에 연결합니다. 기존 서비스 주체를 사용하거나 새 이름을 추가하는 경우 시스템은 다음 단계에서 사용자를 위해 이름을 만듭니다.
    Azure.Auth.Password string Azure 서비스 주체가 자격 증명으로 사용할 암호(텍스트)입니다.
    AksEdgeConfigFile string AKS Edge Essentials 구성(aksedge-config.json)의 파일 이름입니다. 스크립트는 AksEdgeAzureSetup.ps1 이 JSON 파일의 섹션을 Arc 필요한 정보로 업데이트합니다.

    참고 항목

    이 절차는 Azure 구독당 한 번만 수행해야 하며 각 Kubernetes 클러스터에 대해 반복할 필요가 없습니다.

  3. AksEdgePrompt.cmd 파일을 실행하거나 두 번 클릭하여 필요한 모듈이 로드된 관리자 권한 PowerShell 창을 엽니다. PC 정보 및 설치된 소프트웨어 버전에 대한 개요가 표시됩니다.

  4. tools\scripts\AksEdgeAzureSetup 폴더에서 AksEdgeAzureSetup.ps1 스크립트를 실행합니다. 이 스크립트는 Azure 구독을 설정하기 위한 자격 증명으로 로그인하라는 메시지를 표시합니다.

    # prompts for interactive login for service principal creation with Contributor role at resource group level
    ..\tools\scripts\AksEdgeAzureSetup\AksEdgeAzureSetup.ps1 .\aide-userconfig.json -spContributorRole
    
    # (or) alternative option
    
    # Prompts for interactive login for service principal creation with minimal privileges
    ..\tools\scripts\AksEdgeAzureSetup\AksEdgeAzureSetup.ps1 .\aide-userconfig.json
    
  5. AksEdgeAzureSetup-Test.ps1 스크립트를 사용하여 자격 증명이 유효한지 확인합니다. 이 스크립트는 새 서비스 주체 자격 증명을 사용하여 Azure에 로그인하고 Azure 리소스의 상태를 확인합니다.

    # Test the credentials
    ..\tools\scripts\AksEdgeAzureSetup\AksEdgeAzureSetup-Test.ps1 .\aide-userconfig.json
    

2단계: 클러스터를 Azure에 연결

  1. 를 사용하여 Read-AideUserConfig JSON 구성을 AksEdgeShell에 로드하고 값을 사용하여 Get-AideUserConfig업데이트되었는지 확인합니다. 또는 업데이트된 JSON 구성을 사용하도록 AksEdgePrompt.cmd 다시 열 수 있습니다.

    Read-AideUserConfig
    Get-AideUserConfig
    

    Important

    aide-userconfig.json 수정할 때마다 실행 Read-AideUserConfig 하여 다시 로드하거나 AksEdgePrompt.cmd 닫고 다시 엽니다.

  2. Initialize-AideArc를 실행합니다. 이렇게 하면 Azure CLI(아직 설치되지 않은 경우)가 설치되고, 지정된 자격 증명으로 Azure에 로그인하고, Azure 구성(리소스 공급자 및 리소스 그룹 상태)의 유효성을 검사합니다.

    Initialize-AideArc
    
  3. 호스트 컴퓨터를 설치하고 Arc 지원 서버에 연결하고 기존 클러스터를 Arc 지원 Kubernetes에 연결하려면 다음을 실행 Connect-AideArc 합니다.

    # Connect Arc-enabled server and Arc-enabled Kubernetes
    Connect-AideArc
    

    또는 Arc 지원 서버 및 Connect-AideArcKubernetes Arc 지원 Kubernetes를 사용하여 Connect-AideArcServer 개별적으로 연결할 수 있습니다.

    # Connect Arc-enabled server
    Connect-AideArcServer
    # Connect Arc-enabled Kubernetes
    Connect-AideArcKubernetes
    

    참고 항목

    이 단계는 최대 10분이 걸릴 수 있으며 PowerShell은 ""에 대한 your cluster nameAzure 연결된 Kubernetes 설정"에서 중단될 수 있습니다. PowerShell 명령은 프로세스가 완료되면 출력 True 하고 프롬프트로 돌아갑니다. 전달자 토큰은 도구 폴더의 servicetoken.txt 저장됩니다.

3단계: Azure에서 클러스터 보기

  1. 왼쪽 패널의 Kubernetes 리소스(미리 보기)에서 네임스페이스 블레이드를 선택합니다.

    kubernetes 리소스 미리 보기를 보여 주는 스크린샷

  2. Kubernetes 리소스를 보려면 전달자 토큰이 필요합니다.

    전달자 토큰이 필요한 것을 보여 주는 스크린샷

  3. PowerShell 창에서 다음을 실행하고 Get-AksEdgeManagedServiceToken전체 문자열을 복사하여 Azure Portal에 붙여넣습니다.

    포털에서 붙여넣기 토큰을 보여 주는 스크린샷

  4. 이제 클러스터에서 리소스를 볼 수 있습니다. 다음 이미지는 다음과 같은 kubectl get pods --all-namespaces워크로드 블레이드를 보여 줍니다.

    Arc에 표시된 모든 Pod의 결과를 보여 주는 스크린샷

프록시를 사용할 때 Arc에서 AKS Edge Essentials 클러스터 연결 끊기

Arc 지원 서버 및 Arc 지원 Kubernetes에서 연결을 끊기 위해 실행 Disconnect-AideArc 합니다.

# Disconnect Arc-enabled server and Arc-enabled Kubernetes
Disconnect-AideArc

또는 Arc 지원 서버 및 Connect-AideArcKubernetes Arc 지원 Kubernetes를 사용하여 Connect-AideArcServer 개별적으로 연결을 끊을 수 있습니다.

# Disconnect Arc-enabled server
Disconnect-AideArcServer
# Disconnect Arc-enabled Kubernetes
Disconnect-AideArcKubernetes

Arc에 호스트 머신 연결

  1. Arc 지원 서버를 사용하여 Connect-AideArcServer 호스트 머신을 연결할 수 있습니다.

    # Connect Arc-enabled server
    Connect-AideArcServer
    
  2. Arc에서 호스트 머신의 연결을 끊려면 Arc 지원 서버에 사용합니다 Disconnect-AideArcServer .

    # Disconnect Arc-enabled server
    Disconnect-AideArcServer
    

    다음 단계에 따라 서버용 Arc 에이전트 를 제거할 수도 있습니다. Azure Portal을 통해 전체 정리를 수행하려면 이 예제에 대해 만든 서비스 주체 및 리소스 그룹을 삭제합니다.

다음 단계