Skip to content

Commit

Permalink
improve the examples
Browse files Browse the repository at this point in the history
  • Loading branch information
shanye997 committed Apr 3, 2024
1 parent 5ad8852 commit 1b3b66a
Show file tree
Hide file tree
Showing 9 changed files with 63 additions and 12 deletions.
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# Complete RDS example for Redis

This example is deprecated because [Redis 2.8 instances are phased out](https://www.alibabacloud.com/help/en/redis/product-overview/apsaradb-for-redis-2-8-instances-are-phased-out)

## Usage

To run this example you need to execute:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,10 +13,10 @@ data "alicloud_zones" "default" {
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, 15)
vswitch_name = "redis_vpc"
zone_id = 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, 15)
}
module "redis_example" {
source = "../../modules/redis-2.8-communtity-cluster"
Expand Down Expand Up @@ -71,4 +71,4 @@ module "redis_example" {
alarm_rule_threshold = 35
alarm_rule_triggered_count = 2
alarm_rule_contact_groups = ["AccCms"]
}
}
43 changes: 41 additions & 2 deletions examples/using-existing-redis-instance/main.tf
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,44 @@ provider "alicloud" {
region = var.region
}

variable "name" {
default = "tf-example"
}
data "alicloud_kvstore_zones" "default" {}
data "alicloud_resource_manager_resource_groups" "default" {
status = "OK"
}

resource "alicloud_vpc" "default" {
vpc_name = var.name
cidr_block = "10.4.0.0/16"
}
resource "alicloud_vswitch" "default" {
vswitch_name = var.name
cidr_block = "10.4.0.0/24"
vpc_id = alicloud_vpc.default.id
zone_id = data.alicloud_kvstore_zones.default.zones.0.id
}

resource "alicloud_kvstore_instance" "default" {
db_instance_name = var.name
vswitch_id = alicloud_vswitch.default.id
resource_group_id = data.alicloud_resource_manager_resource_groups.default.ids.0
zone_id = data.alicloud_kvstore_zones.default.zones.0.id
instance_class = "redis.master.large.default"
instance_type = "Redis"
engine_version = "5.0"
security_ips = ["10.23.12.24"]
config = {
appendonly = "yes"
lazyfree-lazy-eviction = "yes"
}
tags = {
Created = "TF",
For = "example",
}
}

module "redis_example" {
source = "../../"
region = var.region
Expand All @@ -13,7 +51,8 @@ module "redis_example" {
# Redis Instance
#################

existing_instance_id = "r-2zea81b836xxxxxx"
create_instance = false
existing_instance_id = alicloud_kvstore_instance.default.id

#################
# Redis backup_policy
Expand Down Expand Up @@ -50,4 +89,4 @@ module "redis_example" {
alarm_rule_threshold = 35
alarm_rule_triggered_count = 2
alarm_rule_contact_groups = ["AccCms"]
}
}
5 changes: 4 additions & 1 deletion examples/using-submodule-complete-redis-4.0/main.tf
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,9 @@ resource "alicloud_vswitch" "default" {
cidr_block = "10.4.0.0/24"
vpc_id = alicloud_vpc.default.id
zone_id = data.alicloud_zones.default.zones.0.id
timeouts {
delete = "20m"
}
}

module "redis_example" {
Expand Down Expand Up @@ -80,4 +83,4 @@ module "redis_example" {
alarm_rule_threshold = 35
alarm_rule_triggered_count = 2
alarm_rule_contact_groups = ["AccCms"]
}
}
3 changes: 2 additions & 1 deletion main.tf
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,7 @@ resource "alicloud_cms_alarm" "sharding_cpu_usage" {
contact_groups = var.alarm_rule_contact_groups
silence_time = var.alarm_rule_silence_time
effective_interval = var.alarm_rule_effective_interval
webhook = var.alarm_rule_webhook
}

resource "alicloud_cms_alarm" "sharding_connection_usage" {
Expand Down Expand Up @@ -160,4 +161,4 @@ resource "alicloud_cms_alarm" "sharding_used_memory" {
contact_groups = var.alarm_rule_contact_groups
silence_time = var.alarm_rule_silence_time
effective_interval = var.alarm_rule_effective_interval
}
}
2 changes: 1 addition & 1 deletion outputs.tf
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ locals {
this_redis_instance_type = var.existing_instance_id != "" ? concat(data.alicloud_kvstore_instances.this.instances.*.instance_type, [""])[0] : concat(alicloud_kvstore_instance.this.*.instance_type, [""])[0]
this_redis_instance_charge_type = var.existing_instance_id != "" ? concat(data.alicloud_kvstore_instances.this.instances.*.charge_type, [""])[0] : concat(alicloud_kvstore_instance.this.*.instance_charge_type, [""])[0]
this_redis_instance_class = var.existing_instance_id != "" ? concat(data.alicloud_kvstore_instances.this.instances.*.instance_class, [""])[0] : concat(alicloud_kvstore_instance.this.*.instance_class, [""])[0]
this_redis_instance_name = var.existing_instance_id != "" ? concat(data.alicloud_kvstore_instances.this.instances.*.name, [""])[0] : concat(alicloud_kvstore_instance.this.*.instance_name, [""])[0]
this_redis_instance_name = var.existing_instance_id != "" ? concat(data.alicloud_kvstore_instances.this.instances.*.name, [""])[0] : concat(alicloud_kvstore_instance.this.*.db_instance_name, [""])[0]
this_redis_instance_availability_zone = var.existing_instance_id != "" ? concat(data.alicloud_kvstore_instances.this.instances.*.availability_zone, [""])[0] : concat(alicloud_kvstore_instance.this.*.availability_zone, [""])[0]
this_redis_instance_vswitch_id = var.existing_instance_id != "" ? concat(data.alicloud_kvstore_instances.this.instances.*.vswitch_id, [""])[0] : concat(alicloud_kvstore_instance.this.*.vswitch_id, [""])[0]
this_redis_instance_private_ip = var.existing_instance_id != "" ? concat(data.alicloud_kvstore_instances.this.instances.*.private_ip, [""])[0] : concat(alicloud_kvstore_instance.this.*.private_ip, [""])[0]
Expand Down
10 changes: 8 additions & 2 deletions variables.tf
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ variable "create_instance" {
variable "engine_version" {
description = "Redis version. Value options can refer to the latest docs [CreateInstance](https://help.aliyun.com/document_detail/60862.html?spm=a2c4g.11186623.6.770.e0c735c10lvrqR) "
type = string
default = ""
default = null
}

variable "instance_name" {
Expand Down Expand Up @@ -67,7 +67,7 @@ variable "secondary_zone_id" {
variable "ssl_enable" {
description = "Modifies the SSL status. Valid values: `Disable`, `Enable` and `Update`."
type = string
default = ""
default = null
}

variable "security_group_id" {
Expand Down Expand Up @@ -259,6 +259,12 @@ variable "alarm_rule_period" {
default = 300
}

variable "alarm_rule_webhook" {
description = "The webhook that should be called when the alarm is triggered. Currently, only http protocol is supported. Default is empty string. "
type = string
default = ""
}

variable "alarm_rule_contact_groups" {
description = "List contact groups of the alarm rule, which must have been created on the console. "
type = list(string)
Expand Down

0 comments on commit 1b3b66a

Please sign in to comment.