diff --git a/CHANGELOG.md b/CHANGELOG.md index 88c5050..f99384c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,4 +1,11 @@ -## 1.4.0 (Unreleased) +## 1.5.0 (Unreleased) + +## 1.4.0 (July 26, 2023) + +IMPROVEMENTS: + +- Improves the module example [GH-18](https://github.com/terraform-alicloud-modules/terraform-alicloud-redis/pull/18) + ## 1.3.0 (November 15, 2021) IMPROVEMENTS: diff --git a/examples/using-submodule-complete-redis-4.0/main.tf b/examples/using-submodule-complete-redis-4.0/main.tf index 00f5d47..9e32751 100644 --- a/examples/using-submodule-complete-redis-4.0/main.tf +++ b/examples/using-submodule-complete-redis-4.0/main.tf @@ -4,20 +4,29 @@ variable "region" { provider "alicloud" { region = var.region } -data "alicloud_vpcs" "default" { - is_default = true + +resource "random_uuid" "default" { +} +locals { + name = substr("tf-example-${replace(random_uuid.default.result, "-", "")}", 0, 16) } + data "alicloud_zones" "default" { available_resource_creation = "KVStore" - multi = true - enable_details = true } -resource "alicloud_vswitch" "this" { - name = "redis_vpc" - availability_zone = data.alicloud_zones.default.zones.0.multi_zone_ids.0 - vpc_id = data.alicloud_vpcs.default.vpcs.0.id - cidr_block = cidrsubnet(data.alicloud_vpcs.default.vpcs.0.cidr_block, 4, 10) + +resource "alicloud_vpc" "default" { + vpc_name = local.name + cidr_block = "10.4.0.0/16" } + +resource "alicloud_vswitch" "default" { + vswitch_name = local.name + cidr_block = "10.4.0.0/24" + vpc_id = alicloud_vpc.default.id + zone_id = data.alicloud_zones.default.zones.0.id +} + module "redis_example" { source = "../../modules/redis-4.0-enterprise-cluster-hybrid-storage" region = var.region @@ -26,11 +35,11 @@ module "redis_example" { # Redis Instance ################# - instance_name = "myInstance" + instance_name = local.name instance_class = "redis.logic.sharding.2g.8db.0rodb.8proxy.default" period = 1 - availability_zone = data.alicloud_zones.default.zones.0.multi_zone_ids.0 - vswitch_id = alicloud_vswitch.this.id + availability_zone = data.alicloud_zones.default.zones.0.id + vswitch_id = alicloud_vswitch.default.id security_ips = ["1.1.1.1", "2.2.2.2", "3.3.3.3"] tags = { Env = "Private" diff --git a/examples/using-submodule-complete-redis-5.0/main.tf b/examples/using-submodule-complete-redis-5.0/main.tf index 503945e..b247901 100644 --- a/examples/using-submodule-complete-redis-5.0/main.tf +++ b/examples/using-submodule-complete-redis-5.0/main.tf @@ -4,20 +4,28 @@ variable "region" { provider "alicloud" { region = var.region } -data "alicloud_vpcs" "default" { - is_default = true +resource "random_uuid" "default" { } +locals { + name = substr("tf-example-${replace(random_uuid.default.result, "-", "")}", 0, 16) +} + data "alicloud_zones" "default" { available_resource_creation = "KVStore" - multi = true - enable_details = true } -resource "alicloud_vswitch" "this" { - name = "redis_vpc" - availability_zone = data.alicloud_zones.default.zones.0.multi_zone_ids.0 - vpc_id = data.alicloud_vpcs.default.vpcs.0.id - cidr_block = cidrsubnet(data.alicloud_vpcs.default.vpcs.0.cidr_block, 4, 2) + +resource "alicloud_vpc" "default" { + vpc_name = local.name + cidr_block = "10.4.0.0/16" +} + +resource "alicloud_vswitch" "default" { + vswitch_name = local.name + cidr_block = "10.4.0.0/24" + vpc_id = alicloud_vpc.default.id + zone_id = data.alicloud_zones.default.zones.0.id } + module "redis_example" { source = "../../modules/redis-5.0-communtity-cluster" region = var.region @@ -26,11 +34,11 @@ module "redis_example" { # Redis Instance ################# - instance_name = "myInstance" + instance_name = local.name instance_class = "redis.master.mid.default" period = 1 - availability_zone = data.alicloud_zones.default.zones.0.multi_zone_ids.0 - vswitch_id = alicloud_vswitch.this.id + availability_zone = data.alicloud_zones.default.zones.0.id + vswitch_id = alicloud_vswitch.default.id security_ips = ["1.1.1.1", "2.2.2.2", "3.3.3.3"] tags = { Env = "Private" diff --git a/main.tf b/main.tf index fffe88d..3b1fc8a 100644 --- a/main.tf +++ b/main.tf @@ -44,15 +44,12 @@ module "accounts" { } resource "alicloud_cms_alarm" "sharding_cpu_usage" { - count = local.create_more_resources && var.enable_alarm_rule ? 1 : 0 - enabled = var.enable_alarm_rule - name = var.alarm_rule_name - project = local.project - metric = "ShardingCpuUsage" - dimensions = { - instanceId = local.this_instance_id - device = "/dev/vda1,/dev/vdb1" - } + count = local.create_more_resources && var.enable_alarm_rule ? 1 : 0 + enabled = var.enable_alarm_rule + name = var.alarm_rule_name + project = local.project + metric = "ShardingCpuUsage" + metric_dimensions = "[{\"instanceId\":\"${local.this_instance_id}\",\"device\":\"/dev/vda1\"}]" escalations_critical { statistics = var.alarm_rule_statistics comparison_operator = var.alarm_rule_operator @@ -66,15 +63,12 @@ resource "alicloud_cms_alarm" "sharding_cpu_usage" { } resource "alicloud_cms_alarm" "sharding_connection_usage" { - count = local.create_more_resources && var.enable_alarm_rule ? 1 : 0 - enabled = var.enable_alarm_rule - name = var.alarm_rule_name - project = local.project - metric = "ShardingConnectionUsage" - dimensions = { - instanceId = local.this_instance_id - device = "/dev/vda1,/dev/vdb1" - } + count = local.create_more_resources && var.enable_alarm_rule ? 1 : 0 + enabled = var.enable_alarm_rule + name = var.alarm_rule_name + project = local.project + metric = "ShardingConnectionUsage" + metric_dimensions = "[{\"instanceId\":\"${local.this_instance_id}\",\"device\":\"/dev/vda1\"}]" escalations_critical { statistics = var.alarm_rule_statistics comparison_operator = var.alarm_rule_operator @@ -88,15 +82,12 @@ resource "alicloud_cms_alarm" "sharding_connection_usage" { } resource "alicloud_cms_alarm" "sharding_max_rt" { - count = local.create_more_resources && var.enable_alarm_rule ? 1 : 0 - enabled = var.enable_alarm_rule - name = var.alarm_rule_name - project = local.project - metric = "ShardingMaxRt" - dimensions = { - instanceId = local.this_instance_id - device = "/dev/vda1,/dev/vdb1" - } + count = local.create_more_resources && var.enable_alarm_rule ? 1 : 0 + enabled = var.enable_alarm_rule + name = var.alarm_rule_name + project = local.project + metric = "ShardingMaxRt" + metric_dimensions = "[{\"instanceId\":\"${local.this_instance_id}\",\"device\":\"/dev/vda1\"}]" escalations_critical { statistics = var.alarm_rule_statistics comparison_operator = var.alarm_rule_operator @@ -110,15 +101,12 @@ resource "alicloud_cms_alarm" "sharding_max_rt" { } resource "alicloud_cms_alarm" "sharding_memory_usage" { - count = local.create_more_resources && var.enable_alarm_rule ? 1 : 0 - enabled = var.enable_alarm_rule - name = var.alarm_rule_name - project = local.project - metric = "ShardingMemoryUsage" - dimensions = { - instanceId = local.this_instance_id - device = "/dev/vda1,/dev/vdb1" - } + count = local.create_more_resources && var.enable_alarm_rule ? 1 : 0 + enabled = var.enable_alarm_rule + name = var.alarm_rule_name + project = local.project + metric = "ShardingMemoryUsage" + metric_dimensions = "[{\"instanceId\":\"${local.this_instance_id}\",\"device\":\"/dev/vda1\"}]" escalations_critical { statistics = var.alarm_rule_statistics comparison_operator = var.alarm_rule_operator @@ -132,15 +120,12 @@ resource "alicloud_cms_alarm" "sharding_memory_usage" { } resource "alicloud_cms_alarm" "sharding_used_connection" { - count = local.create_more_resources && var.enable_alarm_rule ? 1 : 0 - enabled = var.enable_alarm_rule - name = var.alarm_rule_name - project = local.project - metric = "ShardingUsedConnection" - dimensions = { - instanceId = local.this_instance_id - device = "/dev/vda1,/dev/vdb1" - } + count = local.create_more_resources && var.enable_alarm_rule ? 1 : 0 + enabled = var.enable_alarm_rule + name = var.alarm_rule_name + project = local.project + metric = "ShardingUsedConnection" + metric_dimensions = "[{\"instanceId\":\"${local.this_instance_id}\",\"device\":\"/dev/vda1\"}]" escalations_critical { statistics = var.alarm_rule_statistics comparison_operator = var.alarm_rule_operator @@ -154,15 +139,12 @@ resource "alicloud_cms_alarm" "sharding_used_connection" { } resource "alicloud_cms_alarm" "sharding_used_memory" { - count = local.create_more_resources && var.enable_alarm_rule ? 1 : 0 - enabled = var.enable_alarm_rule - name = var.alarm_rule_name - project = local.project - metric = "ShardingUsedMemory" - dimensions = { - instanceId = local.this_instance_id - device = "/dev/vda1,/dev/vdb1" - } + count = local.create_more_resources && var.enable_alarm_rule ? 1 : 0 + enabled = var.enable_alarm_rule + name = var.alarm_rule_name + project = local.project + metric = "ShardingUsedMemory" + metric_dimensions = "[{\"instanceId\":\"${local.this_instance_id}\",\"device\":\"/dev/vda1\"}]" escalations_critical { statistics = var.alarm_rule_statistics comparison_operator = var.alarm_rule_operator