alicloud_arms_environment

更新时间:

Provides a ARMS Environment resource. The arms environment.

For information about ARMS Environment and how to use it, see What is Environment.

-> NOTE: Available since v1.212.0.

Example Usage

Basic Usage


provider "alicloud" {
  region = "cn-hangzhou"
}

resource "random_integer" "default" {
  max = 99999
  min = 10000
}

variable "name" {
  default = "terraform-example"
}

data "alicloud_enhanced_nat_available_zones" "enhanced" {
}

resource "alicloud_vpc" "vpc" {
  description = var.name
  cidr_block  = "192.168.0.0/16"
  vpc_name    = var.name
}

resource "alicloud_vswitch" "vswitch" {
  description  = var.name
  vpc_id       = alicloud_vpc.vpc.id
  vswitch_name = var.name
  zone_id      = data.alicloud_enhanced_nat_available_zones.enhanced.zones.0.zone_id
  cidr_block   = cidrsubnet(alicloud_vpc.vpc.cidr_block, 8, 8)
}

resource "alicloud_snapshot_policy" "default" {
  name            = var.name
  repeat_weekdays = ["1", "2", "3"]
  retention_days  = -1
  time_points     = ["1", "22", "23"]
}

data "alicloud_instance_types" "default" {
  availability_zone    = alicloud_vswitch.vswitch.zone_id
  cpu_core_count       = 2
  memory_size          = 4
  kubernetes_node_role = "Worker"
  instance_type_family = "ecs.sn1ne"
}

resource "alicloud_cs_managed_kubernetes" "default" {
  name               = "terraform-example-${random_integer.default.result}"
  cluster_spec       = "ack.pro.small"
  version            = "1.24.6-aliyun.1"
  new_nat_gateway    = true
  node_cidr_mask     = 26
  proxy_mode         = "ipvs"
  service_cidr       = "172.23.0.0/16"
  pod_cidr           = "10.95.0.0/16"
  worker_vswitch_ids = [alicloud_vswitch.vswitch.id]
}

resource "alicloud_key_pair" "default" {
  key_pair_name = "terraform-example-${random_integer.default.result}"
}

resource "alicloud_cs_kubernetes_node_pool" "default" {
  name                 = "desired_size"
  cluster_id           = alicloud_cs_managed_kubernetes.default.id
  vswitch_ids          = [alicloud_vswitch.vswitch.id]
  instance_types       = [data.alicloud_instance_types.default.instance_types.0.id]
  system_disk_category = "cloud_efficiency"
  system_disk_size     = 40
  key_name             = alicloud_key_pair.default.key_name
  desired_size         = 2
}

resource "alicloud_arms_environment" "default" {
  bind_resource_id     = alicloud_cs_kubernetes_node_pool.default.cluster_id
  environment_sub_type = "ACK"
  environment_type     = "CS"
  environment_name     = "terraform-example-${random_integer.default.result}"
}

Argument Reference

The following arguments are supported:

  • aliyun_lang - (Optional) The locale. The default is Chinese zh | en.
  • bind_resource_id - (Optional, ForceNew) The id or vpcId of the bound container instance.
  • drop_metrics - (Optional) List of abandoned indicators.
  • environment_name - (Optional) The name of the resource.
  • environment_sub_type - (Required, ForceNew) Subtype of environment:
    • Type of CS: ACK is currently supported.
    • Type of ECS: currently supports ECS.
    • Type of Cloud: currently supports Cloud.
  • environment_type - (Required, ForceNew) Type of environment.
  • managed_type - (Optional, ForceNew) Hosting type:
    • none: unmanaged. The default value of the ACK cluster.
    • agent: Managed agent (including ksm). Default values of ASK, ACS, and Acone clusters.
    • agent-exproter: Managed agent and exporter. The default value of the cloud service type.
  • resource_group_id - (Optional, Computed) The ID of the resource group.
  • tags - (Optional, Map) The tag of the resource.

Attributes Reference

The following attributes are exported:

  • id - The ID of the resource supplied above.
  • environment_id - The first ID of the resource.

Timeouts

The timeouts block allows you to specify timeouts for certain actions:

  • create - (Defaults to 5 mins) Used when create the Environment.
  • delete - (Defaults to 5 mins) Used when delete the Environment.
  • update - (Defaults to 5 mins) Used when update the Environment.

Import

ARMS Environment can be imported using the id, e.g.

$ terraform import alicloud_arms_environment.example <id>