Skip to content

Resource nubes_mariadb · v2.0.0 · Service ID: 115 · Service Name: Mariadb

Manual · Create params · Modify params · Output params · Operations · Example

Минимальный пример (только обязательные параметры)

terraform {
  required_providers {
    nubes = {
      source  = "tf-registry.containerk8s.services.ngcloud.ru/nubes-dev/nubes"
      version = "2.0.0"
    }
  }
}

provider "nubes" {
  api_token    = "***"
  api_endpoint = "https://lk-api-gateway-dev.ngcloud.ru/api/v1/svc"
}
resource "nubes_mariadb" "baza" {
  resource_name = "my-mariadb"

  startup_configuration {
    resource_realm = "TODO" # Кластер Kubernetes, на котором будет развернут экземпляр
  }
  cluster_configuration {
    cpu = 500 # Указывается в Milicores `1000` Mili == `1` Ядро
    memory = 512 # Указывается в Megabytes
    replicas = 1 # Пока `Galera` выключена Как будет запрос на включение и тестирование, реплики можно будет увеличивать
    disk = 10 # Указывается в GIGAbytes
  }
  access_configuration {
    master_ip_space = "TODO" # Из какого Ip-Space резервировать внешний IP Список предоставляется из Организации, в котором развёрнута ресурсная платформа
    master_access_list = jsonencode([]) # Необходимо настраивать, когда зарезервирован внешний адрес Если передан пустой массив, доступ выделяется всем
  }
  mariadb_configuration {
    version = 9.4.0
  }
  backup_configuration {
    retain = 720
    schedule = "0 0 * * *"
    s3_uid = "TODO" # Экземпляр S3 обязателен
  }
  autoscale_configuration {
    enabled = false # Включает автоскейлинг PV. При включении параметра необходимо настроить autoScalePercentage и autoScaleTechWindow. Алерт при срабатывании вызывает modify у текущей услуги
    schedule = 0 # Требует включения autoScale. Окно обновления (пока не реализовано). Указывается час в виде Integer (0 / 5 / 12 / 23)
    quota = 100 # До какого размера возможно увеличивать диск, когда включен Autoscale
    percent = 10 # Требует включения autoScale. Позволяет указать в процентах расширение от текущего макс объема Минимальный размер на который расширяется - **1Gb**
  }
}
Полный пример (все параметры, включая значения по умолчанию)
terraform {
  required_providers {
    nubes = {
      source  = "tf-registry.containerk8s.services.ngcloud.ru/nubes-dev/nubes"
      version = "2.0.0"
    }
  }
}

# Токен доступа api_token к Nubes API — замените на реальный.
provider "nubes" {
  api_token    = "token_***"
  api_endpoint = "https://lk-api-gateway-dev.ngcloud.ru/api/v1/svc"
}
resource "nubes_mariadb" "baza" {
  resource_name = "TODO"

  startup_configuration {
    resource_realm = "TODO" # Кластер Kubernetes, на котором будет развернут экземпляр
  }
  cluster_configuration {
    cpu = 500 # Указывается в Milicores `1000` Mili == `1` Ядро
    memory = 512 # Указывается в Megabytes
    replicas = 1 # Пока `Galera` выключена Как будет запрос на включение и тестирование, реплики можно будет увеличивать
    disk = 10 # Указывается в GIGAbytes
  }
  access_configuration {
    master_ip_space = "TODO" # Из какого Ip-Space резервировать внешний IP Список предоставляется из Организации, в котором развёрнута ресурсная платформа
    master_access_list = jsonencode([]) # Необходимо настраивать, когда зарезервирован внешний адрес Если передан пустой массив, доступ выделяется всем
  }
  mariadb_configuration {
    version = 9.4.0
  }
  backup_configuration {
    retain = 720
    schedule = "0 0 * * *"
    s3_uid = "TODO" # Экземпляр S3 обязателен
  }
  autoscale_configuration {
    enabled = false # Включает автоскейлинг PV. При включении параметра необходимо настроить autoScalePercentage и autoScaleTechWindow. Алерт при срабатывании вызывает modify у текущей услуги
    schedule = 0 # Требует включения autoScale. Окно обновления (пока не реализовано). Указывается час в виде Integer (0 / 5 / 12 / 23)
    quota = 100 # До какого размера возможно увеличивать диск, когда включен Autoscale
    percent = 10 # Требует включения autoScale. Позволяет указать в процентах расширение от текущего макс объема Минимальный размер на который расширяется - **1Gb**
  }
}

Использование выходных данных

# Выходные параметры можно использовать как
nubes_mariadb.baza.state_params["имя_ключа"]
nubes_mariadb.baza.state_out["имя_ключа"]
nubes_mariadb.baza.state_params_flat["имя_ключа"]
nubes_mariadb.baza.state_out_flat["имя_ключа"]
nubes_mariadb.baza.vault_secrets["имя_ключа"]
nubes_mariadb.baza.vault_url
nubes_mariadb.baza.vault_user_path
nubes_mariadb.baza.vault_fields