diff --git a/examples/main.tf b/examples/main.tf new file mode 100644 index 0000000..85259cd --- /dev/null +++ b/examples/main.tf @@ -0,0 +1,84 @@ +data "yandex_client_config" "client" {} + +module "network" { + source = "git::https://github.com/terraform-yacloud-modules/terraform-yandex-vpc.git?ref=v1.0.0" + + folder_id = data.yandex_client_config.client.folder_id + + blank_name = "vpc-nat-gateway" + labels = { + repo = "terraform-yacloud-modules/terraform-yandex-vpc" + } + + azs = ["ru-central1-a"] + + private_subnets = [["10.4.0.0/24"]] + + create_vpc = true + create_nat_gateway = true +} + +module "mysql" { + source = "../" + + # Общие настройки + name = "my-mysql-cluster" + description = "MySQL cluster created by Terraform" + environment = "PRODUCTION" + folder_id = data.yandex_client_config.client.folder_id + network_id = module.network.vpc_id + subnet_zones = ["ru-central1-a"] + subnet_id = [module.network.private_subnets_ids[0]] + labels = { + created_by = "terraform_mysql_module" + } + version_sql = "8.0" + resource_preset_id = "s1.micro" + disk_type_id = "network-ssd" + disk_size = 10 + + # Настройки безопасности + allow_ingress_v4_cidr_blocks = ["0.0.0.0/0"] + + # Настройки MySQL + mysql_config = { + sql_mode = "ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION" + max_connections = 100 + default_authentication_plugin = "MYSQL_NATIVE_PASSWORD" + innodb_print_all_deadlocks = true + } + + # Настройки обслуживания + maintenance_window = { + type = "ANYTIME" + } + + # Настройки резервного копирования + backup_window_start = { + hours = 3 + minutes = 0 + } + backup_retain_period_days = 14 + + # Настройки доступа + access = { + data_lens = false + web_sql = true + data_transfer = false + } + + # Настройки диагностики производительности + performance_diagnostics = { + enabled = true + sessions_sampling_interval = 3600 + statements_sampling_interval = 7200 + } + + # Другие настройки + ha = false + deletion_protection = false + assign_public_ip = false + count_ha = 3 + + depends_on = [module.network] +} diff --git a/examples/outputs.tf b/examples/outputs.tf new file mode 100644 index 0000000..e69de29 diff --git a/examples/variables.tf b/examples/variables.tf new file mode 100644 index 0000000..e69de29 diff --git a/providers.tf b/examples/versions.tf similarity index 100% rename from providers.tf rename to examples/versions.tf diff --git a/versions.tf b/versions.tf new file mode 100644 index 0000000..1a3ae96 --- /dev/null +++ b/versions.tf @@ -0,0 +1,10 @@ +terraform { + required_version = ">= 1.5.0" + + required_providers { + yandex = { + source = "yandex-cloud/yandex" + version = ">= 0.110, < 1.0" + } + } +}