alicloud_sae_ingress
更新时间:
Provides a Serverless App Engine (SAE) Ingress resource.
For information about Serverless App Engine (SAE) Ingress and how to use it, see What is Ingress.
-> NOTE: Available since v1.137.0.
Example Usage
Basic Usage
provider "alicloud" {
region = "cn-hangzhou"
}
variable "name" {
default = "tf-example"
}
data "alicloud_regions" "default" {
current = true
}
resource "random_integer" "default" {
max = 99999
min = 10000
}
data "alicloud_zones" "default" {
available_resource_creation = "VSwitch"
}
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_zones.default.zones.0.id
}
resource "alicloud_security_group" "default" {
vpc_id = alicloud_vpc.default.id
}
resource "alicloud_sae_namespace" "default" {
namespace_id = "${data.alicloud_regions.default.regions.0.id}:example${random_integer.default.result}"
namespace_name = var.name
namespace_description = var.name
enable_micro_registration = false
}
resource "alicloud_sae_application" "default" {
app_description = var.name
app_name = "${var.name}-${random_integer.default.result}"
namespace_id = alicloud_sae_namespace.default.id
image_url = "registry-vpc.${data.alicloud_regions.default.regions.0.id}.aliyuncs.com/sae-demo-image/consumer:1.0"
package_type = "Image"
security_group_id = alicloud_security_group.default.id
vpc_id = alicloud_vpc.default.id
vswitch_id = alicloud_vswitch.default.id
timezone = "Asia/Beijing"
replicas = "5"
cpu = "500"
memory = "2048"
}
resource "alicloud_slb_load_balancer" "default" {
load_balancer_name = var.name
vswitch_id = alicloud_vswitch.default.id
load_balancer_spec = "slb.s2.small"
address_type = "intranet"
}
resource "alicloud_sae_ingress" "default" {
slb_id = alicloud_slb_load_balancer.default.id
namespace_id = alicloud_sae_namespace.default.id
listener_port = "80"
rules {
app_id = alicloud_sae_application.default.id
container_port = "443"
domain = "www.alicloud.com"
app_name = alicloud_sae_application.default.app_name
path = "/"
}
default_rule {
app_id = alicloud_sae_application.default.id
container_port = "443"
}
}
Argument Reference
The following arguments are supported:
namespace_id
- (Required, ForceNew) The ID of Namespace. It can contain 2 to 32 lowercase characters.The value is in format{RegionId}:{namespace}
.slb_id
- (Required, ForceNew) SLB ID.listener_port
- (Required, Int) SLB listening port.cert_id
- (Optional) The certificate ID of the HTTPS listener. Thecert_id
takes effect only whenload_balance_type
is set toclb
.cert_ids
- (Optional, Available since v1.207.0) The certificate IDs of the HTTPS listener, and multiple certificate IDs are separated by commas. Thecert_ids
takes effect only whenload_balance_type
is set toalb
.load_balance_type
- (Optional, Available since v1.207.0) The type of the SLB instance. Default value:clb
. Valid values:clb
,alb
.listener_protocol
- (Optional, Available since v1.207.0) The protocol that is used to forward requests. Default value:HTTP
. Valid values:HTTP
,HTTPS
.description
- (Optional) Description.rules
- (Required, Set) Forwarding rules. Forward traffic to the specified application according to the domain name and path. Seerules
below.default_rule
- (Optional, Set) Default Rule. Seedefault_rule
below.
default_rule
The default_rule supports the following:
app_id
- (Optional) Target application ID.app_name
- (Optional) Target application name.container_port
- (Optional, Int) Application backend port.
rules
The rules supports the following:
app_id
- (Required) Target application ID.app_name
- (Required) Target application name.container_port
- (Required, Int) Application backend port.domain
- (Required) Application domain name.path
- (Required) URL path.rewrite_path
- (Optional, Available since v1.207.0) The rewrite path.backend_protocol
- (Optional, Available since v1.207.0) The backend protocol.
Attributes Reference
The following attributes are exported:
id
- The resource ID in terraform of Ingress.
Import
Serverless App Engine (SAE) Ingress can be imported using the id, e.g.
$ terraform import alicloud_sae_ingress.example <id>
文档内容是否对您有帮助?