소개

완료됨

Microsoft Azure는 Linux VM(가상 머신)에 대한 리소스를 프로비전하고 기존 Linux 기반 워크로드를 전환하는 여러 가지 방법을 지원합니다.

예제 시나리오

여러분이 기존 온-프레미스 Linux 기반 워크로드를 Azure로 전환하기 위해 금융 서비스 회사에 고용되었다고 가정해 보겠습니다. IaaS(서비스 제공 인프라) 및 PaaS(Platform as a Service)를 프로젝트에 필요한 서비스로 선택했으며 배포에 필요한 리소스에 대한 계획을 완료했습니다. 이제 Linux를 실행하는 Azure VM을 프로비전할 때 단순성과 효율성 간에 최적의 균형을 제공하는 배포 방법을 선택해야 합니다. 선택 항목에는 Azure Portal, Azure CLI, Terraform, Bicep 템플릿이 포함됩니다.

기본 배포 방법 검토

사용할 배포 방법을 선택할 때 각 선택 항목이 제공하는 내용을 고려해야 합니다.

Azure Portal

Azure 리소스를 프로비전하는 가장 쉬운 방법은 Azure Portal을 사용하는 것입니다. Azure Portal은 명령줄 도구에 대한 편리한 대안을 제공하는 웹 기반 통합 콘솔입니다. 브라우저 기반 그래픽 인터페이스는 사용자에게 필요한 정보를 묻는 메시지를 표시하고, 힌트를 제공하고, 유용한 메시지를 표시하여, 리소스 배포 및 관리 작업을 지원하도록 설계되었습니다.

Azure 커맨드 라인 인터페이스 (CLI)

Azure CLI는 Azure 구독에 액세스하고 해당 리소스를 관리하는 데 사용할 수 있는 플랫폼 간 명령줄 도구입니다. Windows 명령 프롬프트 창 또는 Linux 셸 세션과 같은 콘솔 인터페이스에서 대화형으로 Azure CLI 명령을 실행할 수 있습니다. Bash 셸 명령 및 GNU 유틸리티를 사용하여 프로세스를 자동화하는 스크립트에 Azure CLI를 통합할 수도 있습니다.

Terraform (테라폼)

Terraform은 다중 공급업체 퍼블릭 및 프라이빗 클라우드를 포함하여 광범위한 환경을 프로비전하고 구성하는 데 사용할 수 있는 오픈 소스 다중 플랫폼 IaC(Infrastructure as Code) 도구입니다. 리소스 관리에 대한 명령적 접근 방식을 제공하는 Azure CLI와 달리 Terraform은 선언적 접근 방식을 따릅니다.

명령적 접근 방식에는 스크립트 작성 또는 명령 시퀀스 실행이 포함됩니다. 실행할 단계를 명시적으로 제공하여 원하는 결과를 생성합니다. 명령적 배포를 사용하는 경우 종속성, 오류 처리, 리소스 업데이트를 관리해야 합니다. 선언적 접근 방식은 구현 단계보다는 원하는 결과를 설명하는 정의를 작성하는 것이며, 해당 결과를 제공하기 위한 최적의 방법은 도구가 결정합니다. 이렇게 하려면 환경의 현재 상태를 검사하고 대상 상태와 비교한 다음, 동일하게 만드는 데 필요한 변경 내용을 구현합니다.

참고

Red Hat Ansible은 Terraform 기능을 보완하는 데 사용할 수 있는 또 다른 인기 있는 오픈 소스 도구입니다. 그러나 Ansible은 클라우드 리소스의 프로비전을 용이하게 하고 구성 관리 및 애플리케이션 배포를 모두 지원합니다.

Bicep

Bicep은 Terraform에 대한 대체 선언적 프로비전 방법을 제공합니다. Azure 리소스만 대상으로 하지만 Microsoft 클라우드 기반 기술에서 공통적인 여러 통합 및 유용성 기능을 활용할 수 있습니다.

참고

Bicep과 Terraform 간의 포괄적인 비교는 Terraform과 Bicep 비교를 참조하세요.

Azure는 선언적 프로비전을 위한 두 가지 유형의 템플릿을 지원합니다.

  • Azure Resource Manager 템플릿: 이 템플릿은 JSON(JavaScript Object Notation) 개방형 표준 파일 형식을 사용합니다.

  • Bicep 템플릿: 이 템플릿은 Microsoft가 최근에 개발한 DSL(도메인별 언어)을 사용하여 템플릿 작성 환경을 간소화하고 결과 기능을 향상시킵니다.

이러한 두 템플릿을 모두 사용하여 거의 모든 Azure 리소스를 배포할 수 있습니다. 또한 이러한 템플릿은 버전 제어 시스템 및 배포 파이프라인에 쉽게 통합되어 자동화 및 안정성이 향상됩니다. 하지만 Azure Resource Manager 템플릿과 비교할 때 Bicep 템플릿은 더 간결한 구문과 기본 제공 종속성 관리를 비롯한 몇 가지 추가 이점을 제공합니다.

무엇을 알아볼 수 있나요?

이 모듈에서는 Azure에서 Linux VM을 프로비전하는 최적의 배포 방법을 선택합니다. 선택은 배포 계획 단계에서 설정된 조건에 따라 달라집니다.

주요 목표는 무엇인가요?

이 모듈을 마치면 선택한 배포 방법을 사용하여 Linux를 실행하는 Azure VM을 프로비전할 수 있습니다. 또한 각 방법에 가장 적합한 사용 사례를 더 잘 이해할 수 있습니다.