Share via


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 합니다.

    Search Visual Studio Code extensions in Marketplace.

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

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

    주요 정보:

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

    View installed Terraform extensions.

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

3. Terraform 코드 구현

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

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

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

    resource "random_pet" "rg_name" {
      prefix = var.resource_group_name_prefix
    }
    
    resource "azurerm_resource_group" "rg" {
      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.rg.name
    }
    

4. 코드를 Cloud Shell에 푸시

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

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

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

    Confirm the opening of 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을 사용할 때 일반적인 문제 해결

다음 단계