VK Cloud logo

ДБ инстансын құру

Мақалада Terraform көмегімен әртүрлі баптаулары бар ДҚ инстанстарын жасау мысалдары келтірілген.

Параметрлердің толық сипаттамасы — Terraform провайдерінің құжаттамасында.

Дайындық қадамдары

  1. Квоталарды тексеріңіз. Таңдалған аймақта ДҚ инстансын жасау үшін ресурстар жеткілікті екеніне көз жеткізіңіз. Әртүрлі аймақтар үшін әртүрлі квоталар бапталуы мүмкін.

    Қажет болса, квоталарды ұлғайтыңыз.

  2. Егер әлі орындалмаса, Terraform-ды орнатып, ортаны баптаңыз.

    Провайдер баптауларын Terraform конфигурациясының provider.tf файлына орналастырыңыз.

1. ДҚ инстансының сипаттамасы бар файлды жасаңыз

Төмендегі барлық мысалдарда ДҚ инстанстары келесі қасиеттермен жасалады:

  • Аймақ: әдепкі бойынша (жоба аймағымен сәйкес келеді).
  • Қолжетімділік аймағы: әдепкі бойынша (Мәскеу аймағы үшін — GZ1).
  • ДҚБЖ түрі мен нұсқасы: MySQL 8.0.
  • ДҚ инстансының конфигурациясы: Single.
  • Сыртқы IP мекенжайы: тағайындалған.

Кластерді жасаудың мысалдарының бірін таңдап, қажетті мазмұнмен Terraform конфигурациясының main.tf файлын жасаңыз:

Инстанс ВМ үшін конфигурация үлгісі db-instance-flavor айнымалысы арқылы беріледі.

variable "db-instance-flavor" {  type    = string  default = "STD3-4-8-50"}data "vkcs_compute_flavor" "db" {  name = var.db-instance-flavor}resource "vkcs_networking_network" "db" {  name           = "db-net"  admin_state_up = true}resource "vkcs_networking_subnet" "db-subnetwork" {  name            = "db-subnet"  network_id      = vkcs_networking_network.db.id  cidr            = "10.100.0.0/16"  dns_nameservers = ["8.8.8.8", "8.8.4.4"]}data "vkcs_networking_network" "extnet" {  name = "internet"}resource "vkcs_networking_router" "db-router" {  name                = "db-router"  admin_state_up      = true  external_network_id = data.vkcs_networking_network.extnet.id}resource "vkcs_networking_router_interface" "db" {  router_id = vkcs_networking_router.db-router.id  subnet_id = vkcs_networking_subnet.db-subnetwork.id}resource "vkcs_db_instance" "db-instance" {  name        = "db-instance"  datastore {    type    = "mysql"    version = "8.0"  }  floating_ip_enabled = true  flavor_id   = data.vkcs_compute_flavor.db.id  size        = 8  volume_type = "ceph-ssd"  disk_autoexpand {    autoexpand    = true    max_disk_size = 1000  }  network {    uuid = vkcs_networking_network.db.id  }}

2. Terraform көмегімен ресурстарды жасаңыз

  1. Terraform конфигурациясының terraform.rc, vkcs_provider.tf, main.tf және secret.tfvars файлдарын (егер жасалған болса) бір директорияға орналастырыңыз.

  2. Осы директорияға өтіңіз.

  3. Келесі команданы орындаңыз:

    terraform init

    Terraform инициализациясының аяқталуын күтіңіз.

  4. Келесі команданы орындаңыз:

    terraform apply

    Растауды сұрағанда yes енгізіңіз.

  5. Операцияның аяқталуын күтіңіз.

3. Конфигурацияның қолданылуын тексеріңіз

Жеке кабинеттегі VK Cloud ДерекқорларДерекқор инстанстары бөліміне өтіңіз. Конфигурацияда сипатталған барлық объектілердің сәтті жасалғанына көз жеткізіңіз:

  • ДҚ инстансы.
  • Инстанс үшін сыртқы IP мекенжайы — инстанс бетінде көрсетіледі.
  • Prometheus Node exporter кеңейтімі (егер орнатылған болса) — инстанс бетіндегі Кеңейтімдер қойындысында көрсетіледі.
  • Инстанстағы ДҚ (егер жасалған болса) — инстанс бетіндегі Дерекқорлар тізімі қойындысында көрсетіледі.
  • ДҚ пайдаланушысы (егер жасалған болса) — инстанс бетіндегі Пайдаланушылар қойындысында көрсетіледі.

Пайдаланылмайтын ресурстарды жойыңыз

Осы сценарийде жасалған кейбір объектілер ресурстарды тұтынады. Егер олар сізге енді қажет болмаса, оларды жойыңыз:

  1. Terraform конфигурациясы файлдары бар директорияға өтіңіз.

  2. Келесі команданы орындаңыз:

    terraform destroy

    Растауды сұрағанда yes енгізіңіз.

  3. Операцияның аяқталуын күтіңіз.