Модуль mongo-dbs
Название модуля
mongo-dbs
Ресурсы, которые деплоит модуль
Модуль создает отдельную базу данных MongoDB в кластере Yandex Managed MongoDB и настраивает подключение через Kubernetes secret:
yandex_mdb_mongodb_database- Создание базы данных MongoDB в кластереyandex_mdb_mongodb_user- Создание пользователя MongoDB с правами readWritekubernetes_secret- Создание Kubernetes secret с строкой подключения
Переменные
Обязательные переменные
| Переменная | Описание |
|---|---|
provider-zone | Геозона провайдера (zone) |
provider-token | Токен провайдера (YC IAM token) |
provider-cloudid | ID облака |
provider-folderid | ID папки |
mongodb_cluster_id | ID кластера MongoDB (из модуля mongodb-cluster) |
mongodb_address | Адрес кластера MongoDB |
mongodb_user | Имя создаваемого пользователя MongoDB |
mongodb_password | Пароль создаваемого пользователя MongoDB |
mongodb_database | Имя создаваемой базы данных |
Опциональные переменные
| Переменная | Описание | Значение по умолчанию |
|---|---|---|
mongodb_port | Порт подключения к MongoDB | 27018 |
k8s_secret_name | Имя Kubernetes secret | null (не создается) |
k8s_namespace | Namespace для Kubernetes secret | "dev" |
env_prod | Флаг production-окружения (настраивает maintenance_window) | false |
Пример использования
module "user_db8" {
source = "../modules/mongo-dbs"
mongodb_cluster_id = module.mongodb8_cluster.cluster_id
mongodb_address = module.mongodb8_cluster.hostname
mongodb_user = "userdb"
mongodb_password = var.mongodb_user_passwd // используйте секрет
mongodb_database = "userdb"
k8s_secret_name = "userdb-connection-string"
k8s_namespace = "prod"
provider-zone = var.provider-zone
provider-token = var.provider-token
provider-cloudid = var.provider-cloudid
provider-folderid = var.provider-folderid
}
Примечания
- Модуль создает базу данных и пользователя в уже существующем кластере MongoDB
- Для production-окружения рекомендуется установить
env_prod = true - Строка подключения имеет формат:
mongodb://<user>:<password>@<address>:<port>/<database>?authSource=<database>