Azure PowerShell이 작업에 적합한 도구인지 결정
CRM(고객 관계 관리) 시스템에 대한 Azure 리소스를 배포하고 관리하는 도구를 선택해야 한다고 상상해 보십시오. 테스트를 위해 각 테스트 반복에 대한 리소스 그룹 및 VM(가상 머신)을 만들어야 합니다.
관리자가 쉽게 학습할 수 있지만 여러 가상 머신의 설치 및 구성을 자동화할 수 있을 만큼 강력한 도구를 찾습니다. 여러 도구를 사용할 수 있으므로 관리자가 전체 클라우드 인프라의 배포를 효율적으로 스크립치할 수 있는 최상의 도구를 찾는 것이 목표입니다.
어떤 도구를 사용할 수 있나요?
Azure는 세 가지 관리 도구를 제공합니다.
- Azure portal
- Azure PowerShell
- Azure CLI
이러한 도구는 동일한 배포 및 구성 기능을 제공하므로 세 가지 중 어떤 작업도 수행할 수 있습니다. 모두 Windows, Linux 및 MacOS에서 사용할 수 있습니다. 그러나 구문, 설정 요구 사항 및 자동화 지원은 다릅니다.
이 단원의 나머지 섹션에서는 이러한 각 도구를 설명하고 요구 사항에 가장 적합한 도구를 선택하는 방법에 대한 지침을 제공합니다.
Azure Portal
Azure Portal은 Azure 구독에서 리소스를 만들고 구성하고 관리할 수 있는 웹 기반 인터페이스입니다. GUI(그래픽 사용자 인터페이스)는 복잡한 관리 작업을 지원하는 마법사 및 도구 설명을 사용하여 리소스를 찾고 관리하는 사용자에게 친숙한 방법을 제공합니다.
그러나 Azure Portal에는 반복적인 작업에 대한 자동화 기능이 없습니다. 예를 들어 15개의 VM을 설정해야 하는 경우 각 VM을 개별적으로 만들고 각 VM에 대한 마법사를 완료해야 합니다. 이 접근 방식은 시간이 많이 걸리고 더 복잡한 작업의 경우 오류가 발생하기 쉽습니다.
Azure PowerShell
Azure PowerShell은 Azure 리소스를 관리하기 위한 PowerShell cmdlet을 제공하는 모듈의 컬렉션입니다. 명령줄 셸 및 스크립팅 언어인 PowerShell이 필요합니다.
예를 들어 Azure PowerShell은 Azure 구독에서 가상 머신을 만드는 New-AzVM
cmdlet을 제공합니다. 이를 사용하려면 PowerShell을 시작하고 다음 명령을 실행합니다.
$azVmParams = @{
ResourceGroupName = 'CrmTestingResourceGroup'
Name = 'CrmUnitTestVm'
Image = 'Ubuntu2204'
}
New-AzVm @azVmParams
Azure PowerShell은 Azure Cloud Shell을 통한 브라우저 내부 또는 Windows, Linux 또는 macOS의 로컬 설치를 통해 두 가지 방법으로 사용할 수 있습니다. PowerShell을 대화형으로 사용하거나 PowerShell에서 Azure PowerShell 명령을 실행하거나 여러 명령으로 구성된 스크립트를 만들고 실행할 수 있습니다.
Azure CLI
Azure CLI는 Azure 리소스를 관리할 수 있는 플랫폼 간 명령줄 도구입니다. 예를 들어 다음 명령을 사용하여 가상 머신을 만들 수 있습니다(이 예제에서는 Bash 줄 연속 문자를 사용합니다.)
az vm create \
--resource-group CrmTestingResourceGroup \
--name CrmUnitTestVm \
--image Ubuntu2204
Azure CLI는 Azure Cloud Shell을 통한 브라우저 내부 또는 Windows, Linux 또는 macOS의 로컬 설치를 통해 두 가지 방법으로도 사용할 수 있습니다. 셸(예: Bash, PowerShell 또는 cmd.exe
)을 시작하고 프롬프트에서 명령을 입력하여 대화형으로 사용할 수 있습니다. 또는 선택한 셸의 구문을 사용하여 명령을 셸 스크립트로 어셈블하여 반복 작업을 자동화할 수 있습니다.
관리 도구를 선택하는 방법
몇 가지 예외를 제외하고 Azure Portal에서 수행할 수 있는 작업은 Azure PowerShell 또는 Azure CLI를 사용하여 수행할 수도 있습니다. 요구 사항에 가장 적합한 도구를 선택할 때 고려해야 할 몇 가지 요소는 다음과 같습니다.
자동화: 복잡하거나 반복적인 작업을 자동화해야 하나요? Azure PowerShell 및 Azure CLI는 자동화를 지원하지만 Azure 포털은 지원하지 않습니다.
학습 곡선: 새 명령이나 구문 없이 작업을 빠르게 완료해야 하나요? Azure Portal은 사용자에게 친숙하며 명령이나 구문을 학습할 필요가 없습니다. 반면, Azure PowerShell 및 Azure CLI는 명령 셸 구문과 각 명령에 대한 특정 요구 사항을 이해해야 합니다.
팀 기능: 팀에 기존 전문가가 있나요? 예를 들어 팀에서 이미 PowerShell을 사용하여 Windows, Exchange Server 또는 Microsoft 365와 같은 다른 제품을 관리하고 있는 경우 Azure PowerShell이 더 편안하고 효율적인 선택임을 알 수 있습니다.
예시
CRM 애플리케이션을 배포하고 테스트할 관리 도구를 선택하는 시나리오를 다시 살펴보겠습니다. 관리자는 다음과 같은 두 개의 특정 Azure 작업을 완료해야 합니다.
- 테스트의 각 범주(단위, 통합 및 수용)에 대한 하나의 리소스 그룹을 만듭니다.
- 테스트를 매번 시작하기 전에 각 리소스 그룹에 여러 VM을 만듭니다.
Azure Portal은 리소스 그룹을 만들기 위한 적절한 선택입니다. 이러한 작업은 일회성이므로 스크립트를 만들 필요가 없습니다.
대부분의 관리자는 먼저 Azure Portal을 통해 Azure를 경험합니다. 포털은 Azure 리소스를 관리하기 위한 잘 구성된 그래픽 인터페이스를 제공하므로 훌륭한 출발점이 됩니다. 그러나 포털은 자동화를 지원하지 않으며, 이는 일주일에 여러 번 여러 VM을 만드는 것과 같은 반복적인 작업에 필수적입니다.
Azure에서 자동화하는 경우 다음 두 가지 옵션이 있습니다.
- Azure PowerShell
- Azure CLI
두 도구 모두 요구 사항을 충족하지만, 팀에 기존 PowerShell 지식이 있는 경우 Azure PowerShell이 가장 적합할 수 있습니다.
실제로 기업은 일반적으로 일회성 작업과 반복적인 작업을 혼합하여 수행하며, 종종 Azure Portal과 스크립팅 솔루션을 모두 사용합니다. CRM 예제에서 Azure Portal을 사용하여 리소스 그룹을 만들고 Azure PowerShell을 사용하여 VM 만들기를 자동화하는 것이 합리적인 방법입니다.
이 모듈의 나머지 부분에서는 Azure PowerShell을 자동화 도구로 선택한다고 가정합니다.