가상 머신 확장 및 Azure Resource Manager 템플릿을 사용 하 여 사용자 지정 스크립트를 Azure Arc Linux 및 Windows server에 배포

이 문서에서는 가상 머신 확장을 사용 하 여 Azure Arc 사용 서버에 사용자 지정 스크립트를 실행 하는 방법에 대 한 지침을 제공 합니다. 가상 컴퓨터 확장은 소프트웨어 설치, 바이러스 백신 보호 또는 사용자 지정 스크립트를 실행 하는 메커니즘과 같은 배포 후 구성 및 자동화 작업을 제공 하는 작은 응용 프로그램입니다.

Azure Portal, Azure CLI, Azure Resource Manager 템플릿 (ARM 템플릿), PowerShell 또는 Linux 셸 스크립트 또는 Azure 정책을 사용 하 여 Azure Arc 사용 서버에 대 한 확장 배포를 관리할 수 있습니다. 다음 절차에서는 ARM 템플릿을 사용 하 여 사용자 지정 스크립트 확장을 배포 합니다. 이 확장은 가상 컴퓨터에서 스크립트를 다운로드 하 여 실행 합니다. 배포 후 구성, 소프트웨어 설치 또는 기타 구성 또는 관리 작업에 유용 합니다.

중요

이 문서의 절차에서는 이미 Vm을 배포 했거나 온-프레미스 또는 다른 클라우드에서 실행 중인 서버를 Azure Arc에 연결 했다고 가정 합니다. 그렇지 않은 경우 다음 정보를 통해이를 자동화할 수 있습니다.

필수 조건

  1. Azure Arc Jumpstart 리포지토리를 복제 합니다.

    git clone https://github.com/microsoft/azure_arc.git
    
  2. 앞서 언급 했 듯이이 가이드는 이미 배포 되어 Vm 또는 서버를 Azure Arc에 연결한 지점부터 시작 됩니다. 다음 스크린샷은 Azure Arc와 연결 되 고 Azure에서 리소스로 표시 되는 GCP 서버를 보여 줍니다.

    Azure Arc 사용 서버에서 리소스 그룹의 스크린샷

    Azure Arc 사용 서버에서 연결 된 상태의 스크린샷

  3. Azure CLI를 설치 하거나 업데이트합니다. Azure CLI 버전 2.7 이상을 실행 해야 합니다. az --version현재 설치 된 버전을 확인 하는 데 사용 합니다.

  4. Azure 서비스 주체를 만듭니다.

    VM 또는 운영 체제 미 설치 서버를 Azure Arc에 연결 하려면 참가자 역할을 사용 하 여 할당 된 Azure 서비스 주체가 필요 합니다. 이를 만들려면 Azure 계정에 로그인 하 고 다음 명령을 실행 합니다. Azure Cloud Shell에서이 명령을 실행할 수도 있습니다.

    az login
    az ad sp create-for-rbac -n "<Unique SP Name>" --role contributor
    

    예를 들면 다음과 같습니다.

    az ad sp create-for-rbac -n "http://AzureArcServers" --role contributor
    

    출력은 다음과 같습니다.

    {
      "appId": "XXXXXXXXXXXXXXXXXXXXXXXXXXXX",
      "displayName": "AzureArcServers",
      "name": "http://AzureArcServers",
      "password": "XXXXXXXXXXXXXXXXXXXXXXXXXXXX",
      "tenant": "XXXXXXXXXXXXXXXXXXXXXXXXXXXX"
    }
    

참고

서비스 주체를 특정 Azure 구독 및 리소스 그룹으로 범위를 지정 하는 것이 좋습니다.

사용자 지정 스크립트 확장을 설명 하려면 아래 Linux 및 Windows 스크립트를 사용 합니다.

  • Linux: 스크립트는 운영 체제의 당일 메시지를 수정 합니다.
  • Windows: 스크립트는 VM에 Windows 터미널, Microsoft Edge, 7-Zip 및 Visual Studio Code Chocolatey 패키지를 설치 합니다.

Azure Arc 사용 서버 사용자 지정 스크립트 확장 배포

  1. Windows 또는 Linux 용 확장 매개 변수 파일 편집

    ARM 템플릿 매개 변수 파일의 스크린샷

  2. 환경 구성과 일치 하도록 다음 정보를 제공 합니다.

    • Azure Arc에 등록 된 VM 이름입니다.

    Azure Arc 사용 서버에서 컴퓨터 이름의 스크린샷

    • Azure Arc 사용 서버를 등록 한 리소스 그룹의 위치입니다.

    Azure 지역의 스크린샷.

    • 서버에서 실행할 스크립트에 대 한 공용 URI로,이 경우에는 스크립트 URL을 원시 형식으로 사용 합니다.
  3. 스크립트 중 하나를 실행 하려면 다음 명령을 사용 합니다.

    • Windows:

      powershell -ExecutionPolicy Unrestricted -File custom_script_windows.ps1
      
    • Linux:

      ./custom_script_linux.sh
      
  4. Linux 또는 Windows 용 ARM 템플릿을 배포 하려면 배포 폴더로 이동 하 고, 운영 체제와 일치 하는 템플릿을 사용 하 여 다음 명령을 실행 합니다.

    az deployment group create --resource-group <Name of the Azure resource group> \
    --template-file <The `customscript-template.json` template file location for Linux or Windows> \
    --parameters <The `customscript-template.parameters.json` template file location>
    
  5. 템플릿 배포가 완료 되 면 다음과 같은 출력이 표시 됩니다.

    ARM 템플릿에서 출력의 스크린샷

  6. Azure Arc 사용 서버에서 확장 설정을 선택 하 여 Azure Portal에서 성공적으로 배포 되었는지 확인 합니다. 사용자 지정 스크립트 확장이 설치 된 것을 볼 수 있습니다.

    사용자 지정 스크립트 확장의 스크린샷

성공적인 사용자 지정 스크립트 실행을 확인 하는 또 다른 방법은 Vm에 연결 하 고 운영 체제가 구성 되었는지 확인 하는 것입니다.

  • Linux VM의 경우 SSH를 사용 하 여 VM을 연결 하 고 스크립트에 의해 사용자 지정 된 일의 메시지를 체크 아웃 합니다.

    업데이트 된 일별 메시지의 스크린샷

  • RDP를 통해 Windows VM에 연결 하 고 추가 소프트웨어가 설치 되었는지 확인 합니다. Microsoft Edge, 7-zip 및 Visual Studio Code.

    설치 된 추가 소프트웨어의 스크린샷

환경 정리

다음 단계를 완료 하 여 환경을 정리 합니다.

각 가이드의 해체 지침에 따라 각 환경에서 가상 컴퓨터를 제거 합니다.