다음을 통해 공유


Terraform을 사용하여 읽기 복제본에 대한 가상 엔드포인트 만들기

Terraform을 사용하여 Azure Database for PostgreSQL- 유연한 서버에서 읽기 복제본에 대한 가상 엔드포인트를 만들고 관리할 수 있습니다. Terraform은 고급 구성 언어를 사용하여 인프라를 정의하고 프로비전할 수 있는 오픈 소스 코드 기반 인프라 도구입니다.

필수 조건

시작하기 전에 다음이 있는지 확인합니다.

  • 활성 구독이 있는 Azure 계정.
  • 로컬 컴퓨터에 설치된 Terraform입니다. 공식 Terraform 웹 사이트에서 다운로드할 수 있습니다.
  • Azure CLI가 설치 및 인증되었습니다. 지침은 Azure CLI 설명서에 있습니다.

Terraform 구문 및 Azure 리소스 프로비저닝에 대한 기본적인 이해가 있는지 확인합니다.

가상 엔드포인트 구성

다음 단계에 따라 Azure Database for PostgreSQL - 유연한 서버에서 읽기 복제본에 대한 가상 엔드포인트를 만듭니다.

Terraform 구성 초기화

main.tf 파일을 만들고 Azure 공급자를 정의합니다.

provider "azurerm" {
  features {}
}

resource "azurerm_resource_group" "example" {
  name     = "example-resources"
  location = "East US"
}

기본 Azure Database for PostgreSQL 만들기

기본 PostgreSQL 서버 리소스를 정의합니다.

resource "azurerm_postgresql_flexible_server" "primary" {
  name                = "primary-server"
  resource_group_name = azurerm_resource_group.example.name
  location            = azurerm_resource_group.example.location
  version             = "12"
  administrator_login = "adminuser"
  administrator_password = "password"
  sku_name            = "Standard_D4s_v3"

  storage_mb = 32768
  backup_retention_days = 7
  geo_redundant_backup = "Disabled"
  high_availability {
    mode = "ZoneRedundant"
  }
}

읽기 복제본 만들기

주 서버에 대한 읽기 복제본을 정의합니다.

resource "azurerm_postgresql_flexible_server" "replica" {
  name                = "replica-server"
  resource_group_name = azurerm_resource_group.example.name
  location            = azurerm_resource_group.example.location
  source_server_id    = azurerm_postgresql_flexible_server.primary.id
}

가상 엔드포인트 구성

가상 엔드포인트를 구성하려면 필요한 리소스를 정의합니다.

resource "azurerm_postgresql_flexible_server_virtual_endpoint" "example" {
  name                = "example-virtual-endpoint"
  resource_group_name = azurerm_resource_group.example.name
  server_name         = azurerm_postgresql_flexible_server.primary.name
}

구성 적용

Terraform을 초기화하고 구성을 적용합니다.

terraform init
terraform apply

메시지가 표시되면 적용 작업을 확인합니다. Terraform은 리소스를 프로비전하고 지정된 대로 가상 엔드포인트를 구성합니다.