다음을 통해 공유


Azure Terraform Visual Studio Code 확장 설치

Terraform 을 사용하면 클라우드 인프라의 정의, 미리 보기 및 배포가 가능합니다. Terraform을 사용하여 HCL 구문을 사용하여 구성 파일을 만듭니다. HCL 구문을 사용하면 클라우드 공급자(예: Azure)와 클라우드 인프라를 구성하는 요소를 지정할 수 있습니다. 구성 파일을 만든 후에는 인프라 변경 내용을 배포하기 전에 미리 볼 수 있는 실행 계획을 만듭니다. 변경 내용을 확인하면 실행 계획을 적용하여 인프라를 배포합니다.

Visual Studio Code Terraform 확장을 사용하면 편집기에서 Terraform을 사용할 수 있습니다. 이 확장을 사용하면 Terraform 구성을 작성, 테스트 및 실행할 수 있습니다.

이 문서에서는 다음 방법을 알아봅니다.

  • Azure Terraform Visual Studio Code 확장 설치
  • 확장을 사용하여 Azure 리소스 그룹 만들기
  • 리소스 그룹이 만들어졌는지 확인합니다.
  • 확장을 사용하여 테스트를 완료하면 리소스 그룹을 삭제합니다.

1. 환경 구성

  • Azure 구독: Azure 구독이 없는 경우 시작하기 전에 무료 계정 을(를) 만드세요.

2. Azure Terraform Visual Studio Code 확장 설치

  1. Visual Studio Code를 시작합니다.

  2. 왼쪽 메뉴에서 확장을 선택하고 검색 텍스트 상자에 입력 Azure Terraform 합니다.

    Marketplace에서 Visual Studio Code 확장을 검색합니다.

  3. 확장 목록에서 확장을 찾습니다 Azure Terraform . (나열된 첫 번째 확장이어야 합니다.)

  4. 확장이 아직 설치되지 않은 경우 확장의 설치 옵션을 선택합니다.

    핵심 사항:

    • Azure Terraform 확장에 대해 설치 를 선택하면 Visual Studio Code에서 Azure 계정 확장을 자동으로 설치합니다.
    • Azure 계정은 Azure Terraform 확장에 대한 종속성 파일입니다. 이 파일은 Azure 및 Azure 관련 코드 확장에 인증하는 데 사용됩니다.
  5. 확장 설치를 확인하려면 검색 텍스트 상자에 입력 @installed 합니다. Azure Terraform 확장과 Azure 계정 확장은 모두 설치된 확장 목록에 표시됩니다.

    설치된 Terraform 확장을 봅니다.

이제 Visual Studio Code 내에서 Cloud Shell 환경에서 지원되는 모든 Terraform 명령을 실행할 수 있습니다.

3. Terraform 코드 구현

  1. 샘플 Terraform 코드를 테스트할 디렉터리를 만들고, 이를 현재 디렉터리로 만듭니다.

  2. providers.tf라는 파일을 만들고 다음 코드를 삽입합니다.

    terraform {
      required_providers {
        azurerm = {
          source  = "hashicorp/azurerm"
          version = "~>4.0"
        }
        random = {
          source  = "hashicorp/random"
          version = "~>3.0"
        }
      }
    }
    
    provider "azurerm" {
      features {}
    }
    
  3. main.tf라는 파일을 만들고 다음 코드를 삽입합니다.

    # Create a random name for the resource group using random_pet
    resource "random_pet" "rg_name" {
      prefix = var.resource_group_name_prefix
    }
    
    # Create a resource group using the generated random name
    resource "azurerm_resource_group" "example" {
      ___location = var.resource_group_location
      name     = random_pet.rg_name.id
    }
    
  4. 프로젝트 변수를 포함하도록 명명된 variables.tf 파일을 만들고 다음 코드를 삽입합니다.

    variable "resource_group_location" {
      type        = string
      default     = "eastus"
      description = "Location of the resource group."
    }
    
    variable "resource_group_name_prefix" {
      type        = string
      default     = "rg"
      description = "Prefix of the resource group name that's combined with a random ID so name is unique in your Azure subscription."
    }
    
  5. 프로젝트 변수를 포함하도록 명명된 outputs.tf 파일을 만들고 다음 코드를 삽입합니다.

    output "resource_group_name" {
      value = azurerm_resource_group.example.name
    }
    

4. Cloud Shell에 코드 푸시

  1. 보기 메뉴에서 명령 팔레트를 선택합니다.

  2. 명령 팔레트 텍스트 상자에 Azure Terraform: Push을 입력하기 시작하고 표시되면 선택합니다.

  3. 확인을 선택하여 Cloud Shell의 열기를 확인합니다.

    Cloud Shell의 열기를 확인합니다.

    핵심 사항:

    • 구성의 설정에 정의된 필터를 azureTerraform.files 충족하는 작업 영역 파일이 Cloud Shell에 복사됩니다.

5. Visual Studio Code 내에서 Terraform 초기화

  1. 보기 메뉴에서 명령 팔레트를 선택합니다.

  2. 명령 팔레트 텍스트 상자에 Azure Terraform: Init을 입력하기 시작하고 표시되면 선택합니다.

    핵심 사항:

    • 이 옵션을 선택하는 것은 명령줄에서 terraform init 를 실행하는 것과 동일하며 Terraform 배포를 초기화합니다.
    • 이 명령은 Azure 리소스 그룹을 만드는 데 필요한 Azure 모듈을 다운로드합니다.
  3. 프롬프트에 따라 지원되는 최신 버전의 nodejs와 같은 종속성을 설치합니다.

  4. 기본 Azure 구독에서 처음으로 Cloud Shell을 사용하는 경우 프롬프트에 따라 환경을 구성합니다.

6. Visual Studio Code 내에서 Terraform 실행 계획 만들기

  1. 보기 메뉴에서 명령 팔레트를 선택합니다.

  2. 명령 팔레트 텍스트 상자에 Azure Terraform: Plan을 입력하기 시작하고 표시되면 선택합니다.

    핵심 사항:

    • 이 명령은 terraform 계획을 실행하여 현재 디렉터리의 Terraform 구성 파일에서 실행 계획을 만듭니다.

7. Visual Studio Code 내에서 Terraform 실행 계획 적용

  1. 보기 메뉴에서 명령 팔레트를 선택합니다.

  2. 명령 팔레트 텍스트 상자에 Azure Terraform: Apply을 입력하기 시작하고 표시되면 선택합니다.

  3. 확인 메시지가 표시되면 다음을 입력 yes 하고 누릅니다 <Enter>.

8. 결과 확인

  1. 보기 메뉴에서 명령 팔레트를 선택합니다.

  2. 명령 팔레트 텍스트 상자에 Azure: Open Bash in Cloud Shell을 입력하기 시작하고 표시되면 선택합니다.

  3. az group show를 실행하여 리소스 그룹을 표시합니다. <resource_group_name> 자리 표시자를 Terraform 실행 계획을 적용한 후 표시되는 리소스 그룹의 임의로 생성된 이름으로 바꿉니다.

az group show --name <resource_group_name>

9. 리소스 정리

  1. 보기 메뉴에서 명령 팔레트를 선택합니다.

  2. 명령 팔레트 텍스트 상자에 Azure Terraform: Destroy을 입력하기 시작하고 표시되면 선택합니다.

  3. 확인 메시지가 표시되면 다음을 입력 yes 하고 누릅니다 <Enter>.

  4. Terraform이 새 리소스 그룹을 성공적으로 제거했는지 확인하려면 섹션의 단계를 실행 하여 결과를 확인합니다.

Azure에서 Terraform 문제 해결

Azure에서 Terraform을 사용할 때 발생하는 일반적인 문제 해결

다음 단계