Поделиться через


Создание виртуальных конечных точек для реплик чтения с помощью Terraform

С помощью Terraform можно создавать виртуальные конечные точки для реплик чтения и управлять ими в База данных Azure для PostgreSQL — гибкий сервер. Terraform — это средство инфраструктуры как кода с открытым исходным кодом, которое позволяет определять и подготавливать инфраструктуру с помощью языка высокоуровневой конфигурации.

Необходимые компоненты

Перед началом работы убедитесь, что имеется следующее:

  • Учетная запись Azure с активной подпиской.
  • Terraform, установленный на локальном компьютере. Его можно скачать с официального веб-сайта Terraform.
  • Azure CLI установлен и прошел проверку подлинности. Инструкции приведены в документации по Azure CLI.

Убедитесь, что у вас есть базовое представление о синтаксисе Terraform и подготовке ресурсов Azure.

Настройка виртуальных конечных точек

Выполните следующие действия, чтобы создать виртуальные конечные точки для реплик чтения в База данных Azure для PostgreSQL — гибкий сервер:

Инициализация конфигурации Terraform

Создайте файл и определите main.tf поставщика Azure.

provider "azurerm" {
  features {}
}

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

Создание основного База данных Azure для 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 подготавливает ресурсы и настраивает виртуальные конечные точки, как указано.