alicloud.slb.Rule
A forwarding rule is configured in HTTP
/HTTPS
listener and it used to listen a list of backend servers which in one specified virtual backend server group.
You can add forwarding rules to a listener to forward requests based on the domain names or the URL in the request.
NOTE: One virtual backend server group can be attached in multiple forwarding rules.
NOTE: At least one “Domain” or “Url” must be specified when creating a new rule.
NOTE: Having the same ‘Domain’ and ‘Url’ rule can not be created repeatedly in the one listener.
NOTE: Rule only be created in the
HTTP
orHTTPS
listener.
NOTE: Only rule’s virtual server group can be modified.
Example Usage
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AliCloud = Pulumi.AliCloud;
return await Deployment.RunAsync(() =>
{
var config = new Config();
var slbRuleName = config.Get("slbRuleName") ?? "forSlbRule";
var ruleZones = AliCloud.GetZones.Invoke(new()
{
AvailableDiskCategory = "cloud_efficiency",
AvailableResourceCreation = "VSwitch",
});
var ruleInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()
{
AvailabilityZone = ruleZones.Apply(getZonesResult => getZonesResult.Zones[0]?.Id),
CpuCoreCount = 1,
MemorySize = 2,
});
var ruleImages = AliCloud.Ecs.GetImages.Invoke(new()
{
NameRegex = "^ubuntu_18.*64",
MostRecent = true,
Owners = "system",
});
var ruleNetwork = new AliCloud.Vpc.Network("ruleNetwork", new()
{
VpcName = slbRuleName,
CidrBlock = "172.16.0.0/16",
});
var ruleSwitch = new AliCloud.Vpc.Switch("ruleSwitch", new()
{
VpcId = ruleNetwork.Id,
CidrBlock = "172.16.0.0/16",
ZoneId = ruleZones.Apply(getZonesResult => getZonesResult.Zones[0]?.Id),
VswitchName = slbRuleName,
});
var ruleSecurityGroup = new AliCloud.Ecs.SecurityGroup("ruleSecurityGroup", new()
{
VpcId = ruleNetwork.Id,
});
var ruleInstance = new AliCloud.Ecs.Instance("ruleInstance", new()
{
ImageId = ruleImages.Apply(getImagesResult => getImagesResult.Images[0]?.Id),
InstanceType = ruleInstanceTypes.Apply(getInstanceTypesResult => getInstanceTypesResult.InstanceTypes[0]?.Id),
SecurityGroups = new[]
{
ruleSecurityGroup,
}.Select(__item => __item.Id).ToList(),
InternetChargeType = "PayByTraffic",
InternetMaxBandwidthOut = 10,
AvailabilityZone = ruleZones.Apply(getZonesResult => getZonesResult.Zones[0]?.Id),
InstanceChargeType = "PostPaid",
SystemDiskCategory = "cloud_efficiency",
VswitchId = ruleSwitch.Id,
InstanceName = slbRuleName,
});
var ruleApplicationLoadBalancer = new AliCloud.Slb.ApplicationLoadBalancer("ruleApplicationLoadBalancer", new()
{
LoadBalancerName = slbRuleName,
VswitchId = ruleSwitch.Id,
InstanceChargeType = "PayByCLCU",
});
var ruleListener = new AliCloud.Slb.Listener("ruleListener", new()
{
LoadBalancerId = ruleApplicationLoadBalancer.Id,
BackendPort = 22,
FrontendPort = 22,
Protocol = "http",
Bandwidth = 5,
HealthCheckConnectPort = 20,
});
var ruleServerGroup = new AliCloud.Slb.ServerGroup("ruleServerGroup", new()
{
LoadBalancerId = ruleApplicationLoadBalancer.Id,
});
var ruleServerGroupServerAttachment = new AliCloud.Slb.ServerGroupServerAttachment("ruleServerGroupServerAttachment", new()
{
ServerGroupId = ruleServerGroup.Id,
ServerId = ruleInstance.Id,
Port = 80,
Weight = 100,
});
var ruleRule = new AliCloud.Slb.Rule("ruleRule", new()
{
LoadBalancerId = ruleApplicationLoadBalancer.Id,
FrontendPort = ruleListener.FrontendPort,
Domain = "*.aliyun.com",
Url = "/image",
ServerGroupId = ruleServerGroup.Id,
Cookie = "23ffsa",
CookieTimeout = 100,
HealthCheckHttpCode = "http_2xx",
HealthCheckInterval = 10,
HealthCheckUri = "/test",
HealthCheckConnectPort = 80,
HealthCheckTimeout = 30,
HealthyThreshold = 3,
UnhealthyThreshold = 5,
StickySession = "on",
StickySessionType = "server",
ListenerSync = "off",
Scheduler = "rr",
HealthCheckDomain = "test",
HealthCheck = "on",
});
});
Coming soon!
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.alicloud.AlicloudFunctions;
import com.pulumi.alicloud.inputs.GetZonesArgs;
import com.pulumi.alicloud.ecs.EcsFunctions;
import com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;
import com.pulumi.alicloud.ecs.inputs.GetImagesArgs;
import com.pulumi.alicloud.vpc.Network;
import com.pulumi.alicloud.vpc.NetworkArgs;
import com.pulumi.alicloud.vpc.Switch;
import com.pulumi.alicloud.vpc.SwitchArgs;
import com.pulumi.alicloud.ecs.SecurityGroup;
import com.pulumi.alicloud.ecs.SecurityGroupArgs;
import com.pulumi.alicloud.ecs.Instance;
import com.pulumi.alicloud.ecs.InstanceArgs;
import com.pulumi.alicloud.slb.ApplicationLoadBalancer;
import com.pulumi.alicloud.slb.ApplicationLoadBalancerArgs;
import com.pulumi.alicloud.slb.Listener;
import com.pulumi.alicloud.slb.ListenerArgs;
import com.pulumi.alicloud.slb.ServerGroup;
import com.pulumi.alicloud.slb.ServerGroupArgs;
import com.pulumi.alicloud.slb.ServerGroupServerAttachment;
import com.pulumi.alicloud.slb.ServerGroupServerAttachmentArgs;
import com.pulumi.alicloud.slb.Rule;
import com.pulumi.alicloud.slb.RuleArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
final var config = ctx.config();
final var slbRuleName = config.get("slbRuleName").orElse("forSlbRule");
final var ruleZones = AlicloudFunctions.getZones(GetZonesArgs.builder()
.availableDiskCategory("cloud_efficiency")
.availableResourceCreation("VSwitch")
.build());
final var ruleInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()
.availabilityZone(ruleZones.applyValue(getZonesResult -> getZonesResult.zones()[0].id()))
.cpuCoreCount(1)
.memorySize(2)
.build());
final var ruleImages = EcsFunctions.getImages(GetImagesArgs.builder()
.nameRegex("^ubuntu_18.*64")
.mostRecent(true)
.owners("system")
.build());
var ruleNetwork = new Network("ruleNetwork", NetworkArgs.builder()
.vpcName(slbRuleName)
.cidrBlock("172.16.0.0/16")
.build());
var ruleSwitch = new Switch("ruleSwitch", SwitchArgs.builder()
.vpcId(ruleNetwork.id())
.cidrBlock("172.16.0.0/16")
.zoneId(ruleZones.applyValue(getZonesResult -> getZonesResult.zones()[0].id()))
.vswitchName(slbRuleName)
.build());
var ruleSecurityGroup = new SecurityGroup("ruleSecurityGroup", SecurityGroupArgs.builder()
.vpcId(ruleNetwork.id())
.build());
var ruleInstance = new Instance("ruleInstance", InstanceArgs.builder()
.imageId(ruleImages.applyValue(getImagesResult -> getImagesResult.images()[0].id()))
.instanceType(ruleInstanceTypes.applyValue(getInstanceTypesResult -> getInstanceTypesResult.instanceTypes()[0].id()))
.securityGroups(ruleSecurityGroup.stream().map(element -> element.id()).collect(toList()))
.internetChargeType("PayByTraffic")
.internetMaxBandwidthOut("10")
.availabilityZone(ruleZones.applyValue(getZonesResult -> getZonesResult.zones()[0].id()))
.instanceChargeType("PostPaid")
.systemDiskCategory("cloud_efficiency")
.vswitchId(ruleSwitch.id())
.instanceName(slbRuleName)
.build());
var ruleApplicationLoadBalancer = new ApplicationLoadBalancer("ruleApplicationLoadBalancer", ApplicationLoadBalancerArgs.builder()
.loadBalancerName(slbRuleName)
.vswitchId(ruleSwitch.id())
.instanceChargeType("PayByCLCU")
.build());
var ruleListener = new Listener("ruleListener", ListenerArgs.builder()
.loadBalancerId(ruleApplicationLoadBalancer.id())
.backendPort(22)
.frontendPort(22)
.protocol("http")
.bandwidth(5)
.healthCheckConnectPort("20")
.build());
var ruleServerGroup = new ServerGroup("ruleServerGroup", ServerGroupArgs.builder()
.loadBalancerId(ruleApplicationLoadBalancer.id())
.build());
var ruleServerGroupServerAttachment = new ServerGroupServerAttachment("ruleServerGroupServerAttachment", ServerGroupServerAttachmentArgs.builder()
.serverGroupId(ruleServerGroup.id())
.serverId(ruleInstance.id())
.port(80)
.weight(100)
.build());
var ruleRule = new Rule("ruleRule", RuleArgs.builder()
.loadBalancerId(ruleApplicationLoadBalancer.id())
.frontendPort(ruleListener.frontendPort())
.domain("*.aliyun.com")
.url("/image")
.serverGroupId(ruleServerGroup.id())
.cookie("23ffsa")
.cookieTimeout(100)
.healthCheckHttpCode("http_2xx")
.healthCheckInterval(10)
.healthCheckUri("/test")
.healthCheckConnectPort(80)
.healthCheckTimeout(30)
.healthyThreshold(3)
.unhealthyThreshold(5)
.stickySession("on")
.stickySessionType("server")
.listenerSync("off")
.scheduler("rr")
.healthCheckDomain("test")
.healthCheck("on")
.build());
}
}
import pulumi
import pulumi_alicloud as alicloud
config = pulumi.Config()
slb_rule_name = config.get("slbRuleName")
if slb_rule_name is None:
slb_rule_name = "forSlbRule"
rule_zones = alicloud.get_zones(available_disk_category="cloud_efficiency",
available_resource_creation="VSwitch")
rule_instance_types = alicloud.ecs.get_instance_types(availability_zone=rule_zones.zones[0].id,
cpu_core_count=1,
memory_size=2)
rule_images = alicloud.ecs.get_images(name_regex="^ubuntu_18.*64",
most_recent=True,
owners="system")
rule_network = alicloud.vpc.Network("ruleNetwork",
vpc_name=slb_rule_name,
cidr_block="172.16.0.0/16")
rule_switch = alicloud.vpc.Switch("ruleSwitch",
vpc_id=rule_network.id,
cidr_block="172.16.0.0/16",
zone_id=rule_zones.zones[0].id,
vswitch_name=slb_rule_name)
rule_security_group = alicloud.ecs.SecurityGroup("ruleSecurityGroup", vpc_id=rule_network.id)
rule_instance = alicloud.ecs.Instance("ruleInstance",
image_id=rule_images.images[0].id,
instance_type=rule_instance_types.instance_types[0].id,
security_groups=[__item.id for __item in [rule_security_group]],
internet_charge_type="PayByTraffic",
internet_max_bandwidth_out=10,
availability_zone=rule_zones.zones[0].id,
instance_charge_type="PostPaid",
system_disk_category="cloud_efficiency",
vswitch_id=rule_switch.id,
instance_name=slb_rule_name)
rule_application_load_balancer = alicloud.slb.ApplicationLoadBalancer("ruleApplicationLoadBalancer",
load_balancer_name=slb_rule_name,
vswitch_id=rule_switch.id,
instance_charge_type="PayByCLCU")
rule_listener = alicloud.slb.Listener("ruleListener",
load_balancer_id=rule_application_load_balancer.id,
backend_port=22,
frontend_port=22,
protocol="http",
bandwidth=5,
health_check_connect_port=20)
rule_server_group = alicloud.slb.ServerGroup("ruleServerGroup", load_balancer_id=rule_application_load_balancer.id)
rule_server_group_server_attachment = alicloud.slb.ServerGroupServerAttachment("ruleServerGroupServerAttachment",
server_group_id=rule_server_group.id,
server_id=rule_instance.id,
port=80,
weight=100)
rule_rule = alicloud.slb.Rule("ruleRule",
load_balancer_id=rule_application_load_balancer.id,
frontend_port=rule_listener.frontend_port,
domain="*.aliyun.com",
url="/image",
server_group_id=rule_server_group.id,
cookie="23ffsa",
cookie_timeout=100,
health_check_http_code="http_2xx",
health_check_interval=10,
health_check_uri="/test",
health_check_connect_port=80,
health_check_timeout=30,
healthy_threshold=3,
unhealthy_threshold=5,
sticky_session="on",
sticky_session_type="server",
listener_sync="off",
scheduler="rr",
health_check_domain="test",
health_check="on")
import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
const config = new pulumi.Config();
const slbRuleName = config.get("slbRuleName") || "forSlbRule";
const ruleZones = alicloud.getZones({
availableDiskCategory: "cloud_efficiency",
availableResourceCreation: "VSwitch",
});
const ruleInstanceTypes = ruleZones.then(ruleZones => alicloud.ecs.getInstanceTypes({
availabilityZone: ruleZones.zones?.[0]?.id,
cpuCoreCount: 1,
memorySize: 2,
}));
const ruleImages = alicloud.ecs.getImages({
nameRegex: "^ubuntu_18.*64",
mostRecent: true,
owners: "system",
});
const ruleNetwork = new alicloud.vpc.Network("ruleNetwork", {
vpcName: slbRuleName,
cidrBlock: "172.16.0.0/16",
});
const ruleSwitch = new alicloud.vpc.Switch("ruleSwitch", {
vpcId: ruleNetwork.id,
cidrBlock: "172.16.0.0/16",
zoneId: ruleZones.then(ruleZones => ruleZones.zones?.[0]?.id),
vswitchName: slbRuleName,
});
const ruleSecurityGroup = new alicloud.ecs.SecurityGroup("ruleSecurityGroup", {vpcId: ruleNetwork.id});
const ruleInstance = new alicloud.ecs.Instance("ruleInstance", {
imageId: ruleImages.then(ruleImages => ruleImages.images?.[0]?.id),
instanceType: ruleInstanceTypes.then(ruleInstanceTypes => ruleInstanceTypes.instanceTypes?.[0]?.id),
securityGroups: [ruleSecurityGroup].map(__item => __item.id),
internetChargeType: "PayByTraffic",
internetMaxBandwidthOut: 10,
availabilityZone: ruleZones.then(ruleZones => ruleZones.zones?.[0]?.id),
instanceChargeType: "PostPaid",
systemDiskCategory: "cloud_efficiency",
vswitchId: ruleSwitch.id,
instanceName: slbRuleName,
});
const ruleApplicationLoadBalancer = new alicloud.slb.ApplicationLoadBalancer("ruleApplicationLoadBalancer", {
loadBalancerName: slbRuleName,
vswitchId: ruleSwitch.id,
instanceChargeType: "PayByCLCU",
});
const ruleListener = new alicloud.slb.Listener("ruleListener", {
loadBalancerId: ruleApplicationLoadBalancer.id,
backendPort: 22,
frontendPort: 22,
protocol: "http",
bandwidth: 5,
healthCheckConnectPort: 20,
});
const ruleServerGroup = new alicloud.slb.ServerGroup("ruleServerGroup", {loadBalancerId: ruleApplicationLoadBalancer.id});
const ruleServerGroupServerAttachment = new alicloud.slb.ServerGroupServerAttachment("ruleServerGroupServerAttachment", {
serverGroupId: ruleServerGroup.id,
serverId: ruleInstance.id,
port: 80,
weight: 100,
});
const ruleRule = new alicloud.slb.Rule("ruleRule", {
loadBalancerId: ruleApplicationLoadBalancer.id,
frontendPort: ruleListener.frontendPort,
domain: "*.aliyun.com",
url: "/image",
serverGroupId: ruleServerGroup.id,
cookie: "23ffsa",
cookieTimeout: 100,
healthCheckHttpCode: "http_2xx",
healthCheckInterval: 10,
healthCheckUri: "/test",
healthCheckConnectPort: 80,
healthCheckTimeout: 30,
healthyThreshold: 3,
unhealthyThreshold: 5,
stickySession: "on",
stickySessionType: "server",
listenerSync: "off",
scheduler: "rr",
healthCheckDomain: "test",
healthCheck: "on",
});
Coming soon!
Create Rule Resource
new Rule(name: string, args: RuleArgs, opts?: CustomResourceOptions);
@overload
def Rule(resource_name: str,
opts: Optional[ResourceOptions] = None,
cookie: Optional[str] = None,
cookie_timeout: Optional[int] = None,
delete_protection_validation: Optional[bool] = None,
domain: Optional[str] = None,
frontend_port: Optional[int] = None,
health_check: Optional[str] = None,
health_check_connect_port: Optional[int] = None,
health_check_domain: Optional[str] = None,
health_check_http_code: Optional[str] = None,
health_check_interval: Optional[int] = None,
health_check_timeout: Optional[int] = None,
health_check_uri: Optional[str] = None,
healthy_threshold: Optional[int] = None,
listener_sync: Optional[str] = None,
load_balancer_id: Optional[str] = None,
name: Optional[str] = None,
scheduler: Optional[str] = None,
server_group_id: Optional[str] = None,
sticky_session: Optional[str] = None,
sticky_session_type: Optional[str] = None,
unhealthy_threshold: Optional[int] = None,
url: Optional[str] = None)
@overload
def Rule(resource_name: str,
args: RuleArgs,
opts: Optional[ResourceOptions] = None)
func NewRule(ctx *Context, name string, args RuleArgs, opts ...ResourceOption) (*Rule, error)
public Rule(string name, RuleArgs args, CustomResourceOptions? opts = null)
type: alicloud:slb:Rule
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args RuleArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args RuleArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args RuleArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args RuleArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args RuleArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Rule Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
The Rule resource accepts the following input properties:
- Frontend
Port int The listener frontend port which is used to launch the new forwarding rule. Valid range: [1-65535].
- Load
Balancer stringId The Load Balancer ID which is used to launch the new forwarding rule.
- Server
Group stringId ID of a virtual server group that will be forwarded.
- string
The cookie configured on the server. It is mandatory when
sticky_session
is "on" andsticky_session_type
is "server". Otherwise, it will be ignored. Valid value:String in line with RFC 2965, with length being 1- 200. It only contains characters such as ASCII codes, English letters and digits instead of the comma, semicolon or spacing, and it cannot start with $.- int
Cookie timeout. It is mandatory when
sticky_session
is "on" andsticky_session_type
is "insert". Otherwise, it will be ignored. Valid value range: [1-86400] in seconds.- Delete
Protection boolValidation Checking DeleteProtection of SLB instance before deleting. If true, this resource will not be deleted when its SLB instance enabled DeleteProtection. Default to false.
- Domain string
Domain name of the forwarding rule. It can contain letters a-z, numbers 0-9, hyphens (-), and periods (.), and wildcard characters. The following two domain name formats are supported:
- Standard domain name: www.test.com
- Wildcard domain name: .test.com. wildcard () must be the first character in the format of (*.)
- Health
Check string Whether to enable health check. Valid values are
on
andoff
. TCP and UDP listener's HealthCheck is always on, so it will be ignore when launching TCP or UDP listener. This parameter is required and takes effect only when ListenerSync is set to off.- Health
Check intConnect Port Port used for health check. Valid value range: [1-65535]. Default to "None" means the backend server port is used.
- Health
Check stringDomain Domain name used for health check. When it used to launch TCP listener,
health_check_type
must be "http". Its length is limited to 1-80 and only characters such as letters, digits, ‘-‘ and ‘.’ are allowed. When it is not set or empty, Server Load Balancer uses the private network IP address of each backend server as Domain used for health check.- Health
Check stringHttp Code Regular health check HTTP status code. Multiple codes are segmented by “,”. It is required when
health_check
is on. Default tohttp_2xx
. Valid values are:http_2xx
,http_3xx
,http_4xx
andhttp_5xx
.- Health
Check intInterval Time interval of health checks. It is required when
health_check
is on. Valid value range: [1-50] in seconds. Default to 2.- Health
Check intTimeout Maximum timeout of each health check response. It is required when
health_check
is on. Valid value range: [1-300] in seconds. Default to 5. Note: Ifhealth_check_timeout
<health_check_interval
, its will be replaced byhealth_check_interval
.- Health
Check stringUri URI used for health check. When it used to launch TCP listener,
health_check_type
must be "http". Its length is limited to 1-80 and it must start with /. Only characters such as letters, digits, ‘-’, ‘/’, ‘.’, ‘%’, ‘?’, #’ and ‘&’ are allowed.- Healthy
Threshold int Threshold determining the result of the health check is success. It is required when
health_check
is on. Valid value range: [1-10] in seconds. Default to 3.- Listener
Sync string Indicates whether a forwarding rule inherits the settings of a health check , session persistence, and scheduling algorithm from a listener. Default to on.
- Name string
Name of the forwarding rule. Our plugin provides a default name: "tf-slb-rule".
- Scheduler string
Scheduling algorithm, Valid values are
wrr
,rr
andwlc
. Default to "wrr". This parameter is required and takes effect only when ListenerSync is set to off.- Sticky
Session string Whether to enable session persistence, Valid values are
on
andoff
. Default tooff
. This parameter is required and takes effect only when ListenerSync is set to off.- Sticky
Session stringType Mode for handling the cookie. If
sticky_session
is "on", it is mandatory. Otherwise, it will be ignored. Valid values areinsert
andserver
.insert
means it is inserted from Server Load Balancer;server
means the Server Load Balancer learns from the backend server.- Unhealthy
Threshold int Threshold determining the result of the health check is fail. It is required when
health_check
is on. Valid value range: [1-10] in seconds. Default to 3.- Url string
Domain of the forwarding rule. It must be 2-80 characters in length. Only letters a-z, numbers 0-9, and characters '-' '/' '?' '%' '#' and '&' are allowed. URLs must be started with the character '/', but cannot be '/' alone.
- Frontend
Port int The listener frontend port which is used to launch the new forwarding rule. Valid range: [1-65535].
- Load
Balancer stringId The Load Balancer ID which is used to launch the new forwarding rule.
- Server
Group stringId ID of a virtual server group that will be forwarded.
- string
The cookie configured on the server. It is mandatory when
sticky_session
is "on" andsticky_session_type
is "server". Otherwise, it will be ignored. Valid value:String in line with RFC 2965, with length being 1- 200. It only contains characters such as ASCII codes, English letters and digits instead of the comma, semicolon or spacing, and it cannot start with $.- int
Cookie timeout. It is mandatory when
sticky_session
is "on" andsticky_session_type
is "insert". Otherwise, it will be ignored. Valid value range: [1-86400] in seconds.- Delete
Protection boolValidation Checking DeleteProtection of SLB instance before deleting. If true, this resource will not be deleted when its SLB instance enabled DeleteProtection. Default to false.
- Domain string
Domain name of the forwarding rule. It can contain letters a-z, numbers 0-9, hyphens (-), and periods (.), and wildcard characters. The following two domain name formats are supported:
- Standard domain name: www.test.com
- Wildcard domain name: .test.com. wildcard () must be the first character in the format of (*.)
- Health
Check string Whether to enable health check. Valid values are
on
andoff
. TCP and UDP listener's HealthCheck is always on, so it will be ignore when launching TCP or UDP listener. This parameter is required and takes effect only when ListenerSync is set to off.- Health
Check intConnect Port Port used for health check. Valid value range: [1-65535]. Default to "None" means the backend server port is used.
- Health
Check stringDomain Domain name used for health check. When it used to launch TCP listener,
health_check_type
must be "http". Its length is limited to 1-80 and only characters such as letters, digits, ‘-‘ and ‘.’ are allowed. When it is not set or empty, Server Load Balancer uses the private network IP address of each backend server as Domain used for health check.- Health
Check stringHttp Code Regular health check HTTP status code. Multiple codes are segmented by “,”. It is required when
health_check
is on. Default tohttp_2xx
. Valid values are:http_2xx
,http_3xx
,http_4xx
andhttp_5xx
.- Health
Check intInterval Time interval of health checks. It is required when
health_check
is on. Valid value range: [1-50] in seconds. Default to 2.- Health
Check intTimeout Maximum timeout of each health check response. It is required when
health_check
is on. Valid value range: [1-300] in seconds. Default to 5. Note: Ifhealth_check_timeout
<health_check_interval
, its will be replaced byhealth_check_interval
.- Health
Check stringUri URI used for health check. When it used to launch TCP listener,
health_check_type
must be "http". Its length is limited to 1-80 and it must start with /. Only characters such as letters, digits, ‘-’, ‘/’, ‘.’, ‘%’, ‘?’, #’ and ‘&’ are allowed.- Healthy
Threshold int Threshold determining the result of the health check is success. It is required when
health_check
is on. Valid value range: [1-10] in seconds. Default to 3.- Listener
Sync string Indicates whether a forwarding rule inherits the settings of a health check , session persistence, and scheduling algorithm from a listener. Default to on.
- Name string
Name of the forwarding rule. Our plugin provides a default name: "tf-slb-rule".
- Scheduler string
Scheduling algorithm, Valid values are
wrr
,rr
andwlc
. Default to "wrr". This parameter is required and takes effect only when ListenerSync is set to off.- Sticky
Session string Whether to enable session persistence, Valid values are
on
andoff
. Default tooff
. This parameter is required and takes effect only when ListenerSync is set to off.- Sticky
Session stringType Mode for handling the cookie. If
sticky_session
is "on", it is mandatory. Otherwise, it will be ignored. Valid values areinsert
andserver
.insert
means it is inserted from Server Load Balancer;server
means the Server Load Balancer learns from the backend server.- Unhealthy
Threshold int Threshold determining the result of the health check is fail. It is required when
health_check
is on. Valid value range: [1-10] in seconds. Default to 3.- Url string
Domain of the forwarding rule. It must be 2-80 characters in length. Only letters a-z, numbers 0-9, and characters '-' '/' '?' '%' '#' and '&' are allowed. URLs must be started with the character '/', but cannot be '/' alone.
- frontend
Port Integer The listener frontend port which is used to launch the new forwarding rule. Valid range: [1-65535].
- load
Balancer StringId The Load Balancer ID which is used to launch the new forwarding rule.
- server
Group StringId ID of a virtual server group that will be forwarded.
- String
The cookie configured on the server. It is mandatory when
sticky_session
is "on" andsticky_session_type
is "server". Otherwise, it will be ignored. Valid value:String in line with RFC 2965, with length being 1- 200. It only contains characters such as ASCII codes, English letters and digits instead of the comma, semicolon or spacing, and it cannot start with $.- Integer
Cookie timeout. It is mandatory when
sticky_session
is "on" andsticky_session_type
is "insert". Otherwise, it will be ignored. Valid value range: [1-86400] in seconds.- delete
Protection BooleanValidation Checking DeleteProtection of SLB instance before deleting. If true, this resource will not be deleted when its SLB instance enabled DeleteProtection. Default to false.
- domain String
Domain name of the forwarding rule. It can contain letters a-z, numbers 0-9, hyphens (-), and periods (.), and wildcard characters. The following two domain name formats are supported:
- Standard domain name: www.test.com
- Wildcard domain name: .test.com. wildcard () must be the first character in the format of (*.)
- health
Check String Whether to enable health check. Valid values are
on
andoff
. TCP and UDP listener's HealthCheck is always on, so it will be ignore when launching TCP or UDP listener. This parameter is required and takes effect only when ListenerSync is set to off.- health
Check IntegerConnect Port Port used for health check. Valid value range: [1-65535]. Default to "None" means the backend server port is used.
- health
Check StringDomain Domain name used for health check. When it used to launch TCP listener,
health_check_type
must be "http". Its length is limited to 1-80 and only characters such as letters, digits, ‘-‘ and ‘.’ are allowed. When it is not set or empty, Server Load Balancer uses the private network IP address of each backend server as Domain used for health check.- health
Check StringHttp Code Regular health check HTTP status code. Multiple codes are segmented by “,”. It is required when
health_check
is on. Default tohttp_2xx
. Valid values are:http_2xx
,http_3xx
,http_4xx
andhttp_5xx
.- health
Check IntegerInterval Time interval of health checks. It is required when
health_check
is on. Valid value range: [1-50] in seconds. Default to 2.- health
Check IntegerTimeout Maximum timeout of each health check response. It is required when
health_check
is on. Valid value range: [1-300] in seconds. Default to 5. Note: Ifhealth_check_timeout
<health_check_interval
, its will be replaced byhealth_check_interval
.- health
Check StringUri URI used for health check. When it used to launch TCP listener,
health_check_type
must be "http". Its length is limited to 1-80 and it must start with /. Only characters such as letters, digits, ‘-’, ‘/’, ‘.’, ‘%’, ‘?’, #’ and ‘&’ are allowed.- healthy
Threshold Integer Threshold determining the result of the health check is success. It is required when
health_check
is on. Valid value range: [1-10] in seconds. Default to 3.- listener
Sync String Indicates whether a forwarding rule inherits the settings of a health check , session persistence, and scheduling algorithm from a listener. Default to on.
- name String
Name of the forwarding rule. Our plugin provides a default name: "tf-slb-rule".
- scheduler String
Scheduling algorithm, Valid values are
wrr
,rr
andwlc
. Default to "wrr". This parameter is required and takes effect only when ListenerSync is set to off.- sticky
Session String Whether to enable session persistence, Valid values are
on
andoff
. Default tooff
. This parameter is required and takes effect only when ListenerSync is set to off.- sticky
Session StringType Mode for handling the cookie. If
sticky_session
is "on", it is mandatory. Otherwise, it will be ignored. Valid values areinsert
andserver
.insert
means it is inserted from Server Load Balancer;server
means the Server Load Balancer learns from the backend server.- unhealthy
Threshold Integer Threshold determining the result of the health check is fail. It is required when
health_check
is on. Valid value range: [1-10] in seconds. Default to 3.- url String
Domain of the forwarding rule. It must be 2-80 characters in length. Only letters a-z, numbers 0-9, and characters '-' '/' '?' '%' '#' and '&' are allowed. URLs must be started with the character '/', but cannot be '/' alone.
- frontend
Port number The listener frontend port which is used to launch the new forwarding rule. Valid range: [1-65535].
- load
Balancer stringId The Load Balancer ID which is used to launch the new forwarding rule.
- server
Group stringId ID of a virtual server group that will be forwarded.
- string
The cookie configured on the server. It is mandatory when
sticky_session
is "on" andsticky_session_type
is "server". Otherwise, it will be ignored. Valid value:String in line with RFC 2965, with length being 1- 200. It only contains characters such as ASCII codes, English letters and digits instead of the comma, semicolon or spacing, and it cannot start with $.- number
Cookie timeout. It is mandatory when
sticky_session
is "on" andsticky_session_type
is "insert". Otherwise, it will be ignored. Valid value range: [1-86400] in seconds.- delete
Protection booleanValidation Checking DeleteProtection of SLB instance before deleting. If true, this resource will not be deleted when its SLB instance enabled DeleteProtection. Default to false.
- domain string
Domain name of the forwarding rule. It can contain letters a-z, numbers 0-9, hyphens (-), and periods (.), and wildcard characters. The following two domain name formats are supported:
- Standard domain name: www.test.com
- Wildcard domain name: .test.com. wildcard () must be the first character in the format of (*.)
- health
Check string Whether to enable health check. Valid values are
on
andoff
. TCP and UDP listener's HealthCheck is always on, so it will be ignore when launching TCP or UDP listener. This parameter is required and takes effect only when ListenerSync is set to off.- health
Check numberConnect Port Port used for health check. Valid value range: [1-65535]. Default to "None" means the backend server port is used.
- health
Check stringDomain Domain name used for health check. When it used to launch TCP listener,
health_check_type
must be "http". Its length is limited to 1-80 and only characters such as letters, digits, ‘-‘ and ‘.’ are allowed. When it is not set or empty, Server Load Balancer uses the private network IP address of each backend server as Domain used for health check.- health
Check stringHttp Code Regular health check HTTP status code. Multiple codes are segmented by “,”. It is required when
health_check
is on. Default tohttp_2xx
. Valid values are:http_2xx
,http_3xx
,http_4xx
andhttp_5xx
.- health
Check numberInterval Time interval of health checks. It is required when
health_check
is on. Valid value range: [1-50] in seconds. Default to 2.- health
Check numberTimeout Maximum timeout of each health check response. It is required when
health_check
is on. Valid value range: [1-300] in seconds. Default to 5. Note: Ifhealth_check_timeout
<health_check_interval
, its will be replaced byhealth_check_interval
.- health
Check stringUri URI used for health check. When it used to launch TCP listener,
health_check_type
must be "http". Its length is limited to 1-80 and it must start with /. Only characters such as letters, digits, ‘-’, ‘/’, ‘.’, ‘%’, ‘?’, #’ and ‘&’ are allowed.- healthy
Threshold number Threshold determining the result of the health check is success. It is required when
health_check
is on. Valid value range: [1-10] in seconds. Default to 3.- listener
Sync string Indicates whether a forwarding rule inherits the settings of a health check , session persistence, and scheduling algorithm from a listener. Default to on.
- name string
Name of the forwarding rule. Our plugin provides a default name: "tf-slb-rule".
- scheduler string
Scheduling algorithm, Valid values are
wrr
,rr
andwlc
. Default to "wrr". This parameter is required and takes effect only when ListenerSync is set to off.- sticky
Session string Whether to enable session persistence, Valid values are
on
andoff
. Default tooff
. This parameter is required and takes effect only when ListenerSync is set to off.- sticky
Session stringType Mode for handling the cookie. If
sticky_session
is "on", it is mandatory. Otherwise, it will be ignored. Valid values areinsert
andserver
.insert
means it is inserted from Server Load Balancer;server
means the Server Load Balancer learns from the backend server.- unhealthy
Threshold number Threshold determining the result of the health check is fail. It is required when
health_check
is on. Valid value range: [1-10] in seconds. Default to 3.- url string
Domain of the forwarding rule. It must be 2-80 characters in length. Only letters a-z, numbers 0-9, and characters '-' '/' '?' '%' '#' and '&' are allowed. URLs must be started with the character '/', but cannot be '/' alone.
- frontend_
port int The listener frontend port which is used to launch the new forwarding rule. Valid range: [1-65535].
- load_
balancer_ strid The Load Balancer ID which is used to launch the new forwarding rule.
- server_
group_ strid ID of a virtual server group that will be forwarded.
- str
The cookie configured on the server. It is mandatory when
sticky_session
is "on" andsticky_session_type
is "server". Otherwise, it will be ignored. Valid value:String in line with RFC 2965, with length being 1- 200. It only contains characters such as ASCII codes, English letters and digits instead of the comma, semicolon or spacing, and it cannot start with $.- int
Cookie timeout. It is mandatory when
sticky_session
is "on" andsticky_session_type
is "insert". Otherwise, it will be ignored. Valid value range: [1-86400] in seconds.- delete_
protection_ boolvalidation Checking DeleteProtection of SLB instance before deleting. If true, this resource will not be deleted when its SLB instance enabled DeleteProtection. Default to false.
- domain str
Domain name of the forwarding rule. It can contain letters a-z, numbers 0-9, hyphens (-), and periods (.), and wildcard characters. The following two domain name formats are supported:
- Standard domain name: www.test.com
- Wildcard domain name: .test.com. wildcard () must be the first character in the format of (*.)
- health_
check str Whether to enable health check. Valid values are
on
andoff
. TCP and UDP listener's HealthCheck is always on, so it will be ignore when launching TCP or UDP listener. This parameter is required and takes effect only when ListenerSync is set to off.- health_
check_ intconnect_ port Port used for health check. Valid value range: [1-65535]. Default to "None" means the backend server port is used.
- health_
check_ strdomain Domain name used for health check. When it used to launch TCP listener,
health_check_type
must be "http". Its length is limited to 1-80 and only characters such as letters, digits, ‘-‘ and ‘.’ are allowed. When it is not set or empty, Server Load Balancer uses the private network IP address of each backend server as Domain used for health check.- health_
check_ strhttp_ code Regular health check HTTP status code. Multiple codes are segmented by “,”. It is required when
health_check
is on. Default tohttp_2xx
. Valid values are:http_2xx
,http_3xx
,http_4xx
andhttp_5xx
.- health_
check_ intinterval Time interval of health checks. It is required when
health_check
is on. Valid value range: [1-50] in seconds. Default to 2.- health_
check_ inttimeout Maximum timeout of each health check response. It is required when
health_check
is on. Valid value range: [1-300] in seconds. Default to 5. Note: Ifhealth_check_timeout
<health_check_interval
, its will be replaced byhealth_check_interval
.- health_
check_ struri URI used for health check. When it used to launch TCP listener,
health_check_type
must be "http". Its length is limited to 1-80 and it must start with /. Only characters such as letters, digits, ‘-’, ‘/’, ‘.’, ‘%’, ‘?’, #’ and ‘&’ are allowed.- healthy_
threshold int Threshold determining the result of the health check is success. It is required when
health_check
is on. Valid value range: [1-10] in seconds. Default to 3.- listener_
sync str Indicates whether a forwarding rule inherits the settings of a health check , session persistence, and scheduling algorithm from a listener. Default to on.
- name str
Name of the forwarding rule. Our plugin provides a default name: "tf-slb-rule".
- scheduler str
Scheduling algorithm, Valid values are
wrr
,rr
andwlc
. Default to "wrr". This parameter is required and takes effect only when ListenerSync is set to off.- sticky_
session str Whether to enable session persistence, Valid values are
on
andoff
. Default tooff
. This parameter is required and takes effect only when ListenerSync is set to off.- sticky_
session_ strtype Mode for handling the cookie. If
sticky_session
is "on", it is mandatory. Otherwise, it will be ignored. Valid values areinsert
andserver
.insert
means it is inserted from Server Load Balancer;server
means the Server Load Balancer learns from the backend server.- unhealthy_
threshold int Threshold determining the result of the health check is fail. It is required when
health_check
is on. Valid value range: [1-10] in seconds. Default to 3.- url str
Domain of the forwarding rule. It must be 2-80 characters in length. Only letters a-z, numbers 0-9, and characters '-' '/' '?' '%' '#' and '&' are allowed. URLs must be started with the character '/', but cannot be '/' alone.
- frontend
Port Number The listener frontend port which is used to launch the new forwarding rule. Valid range: [1-65535].
- load
Balancer StringId The Load Balancer ID which is used to launch the new forwarding rule.
- server
Group StringId ID of a virtual server group that will be forwarded.
- String
The cookie configured on the server. It is mandatory when
sticky_session
is "on" andsticky_session_type
is "server". Otherwise, it will be ignored. Valid value:String in line with RFC 2965, with length being 1- 200. It only contains characters such as ASCII codes, English letters and digits instead of the comma, semicolon or spacing, and it cannot start with $.- Number
Cookie timeout. It is mandatory when
sticky_session
is "on" andsticky_session_type
is "insert". Otherwise, it will be ignored. Valid value range: [1-86400] in seconds.- delete
Protection BooleanValidation Checking DeleteProtection of SLB instance before deleting. If true, this resource will not be deleted when its SLB instance enabled DeleteProtection. Default to false.
- domain String
Domain name of the forwarding rule. It can contain letters a-z, numbers 0-9, hyphens (-), and periods (.), and wildcard characters. The following two domain name formats are supported:
- Standard domain name: www.test.com
- Wildcard domain name: .test.com. wildcard () must be the first character in the format of (*.)
- health
Check String Whether to enable health check. Valid values are
on
andoff
. TCP and UDP listener's HealthCheck is always on, so it will be ignore when launching TCP or UDP listener. This parameter is required and takes effect only when ListenerSync is set to off.- health
Check NumberConnect Port Port used for health check. Valid value range: [1-65535]. Default to "None" means the backend server port is used.
- health
Check StringDomain Domain name used for health check. When it used to launch TCP listener,
health_check_type
must be "http". Its length is limited to 1-80 and only characters such as letters, digits, ‘-‘ and ‘.’ are allowed. When it is not set or empty, Server Load Balancer uses the private network IP address of each backend server as Domain used for health check.- health
Check StringHttp Code Regular health check HTTP status code. Multiple codes are segmented by “,”. It is required when
health_check
is on. Default tohttp_2xx
. Valid values are:http_2xx
,http_3xx
,http_4xx
andhttp_5xx
.- health
Check NumberInterval Time interval of health checks. It is required when
health_check
is on. Valid value range: [1-50] in seconds. Default to 2.- health
Check NumberTimeout Maximum timeout of each health check response. It is required when
health_check
is on. Valid value range: [1-300] in seconds. Default to 5. Note: Ifhealth_check_timeout
<health_check_interval
, its will be replaced byhealth_check_interval
.- health
Check StringUri URI used for health check. When it used to launch TCP listener,
health_check_type
must be "http". Its length is limited to 1-80 and it must start with /. Only characters such as letters, digits, ‘-’, ‘/’, ‘.’, ‘%’, ‘?’, #’ and ‘&’ are allowed.- healthy
Threshold Number Threshold determining the result of the health check is success. It is required when
health_check
is on. Valid value range: [1-10] in seconds. Default to 3.- listener
Sync String Indicates whether a forwarding rule inherits the settings of a health check , session persistence, and scheduling algorithm from a listener. Default to on.
- name String
Name of the forwarding rule. Our plugin provides a default name: "tf-slb-rule".
- scheduler String
Scheduling algorithm, Valid values are
wrr
,rr
andwlc
. Default to "wrr". This parameter is required and takes effect only when ListenerSync is set to off.- sticky
Session String Whether to enable session persistence, Valid values are
on
andoff
. Default tooff
. This parameter is required and takes effect only when ListenerSync is set to off.- sticky
Session StringType Mode for handling the cookie. If
sticky_session
is "on", it is mandatory. Otherwise, it will be ignored. Valid values areinsert
andserver
.insert
means it is inserted from Server Load Balancer;server
means the Server Load Balancer learns from the backend server.- unhealthy
Threshold Number Threshold determining the result of the health check is fail. It is required when
health_check
is on. Valid value range: [1-10] in seconds. Default to 3.- url String
Domain of the forwarding rule. It must be 2-80 characters in length. Only letters a-z, numbers 0-9, and characters '-' '/' '?' '%' '#' and '&' are allowed. URLs must be started with the character '/', but cannot be '/' alone.
Outputs
All input properties are implicitly available as output properties. Additionally, the Rule resource produces the following output properties:
- Id string
The provider-assigned unique ID for this managed resource.
- Id string
The provider-assigned unique ID for this managed resource.
- id String
The provider-assigned unique ID for this managed resource.
- id string
The provider-assigned unique ID for this managed resource.
- id str
The provider-assigned unique ID for this managed resource.
- id String
The provider-assigned unique ID for this managed resource.
Look up Existing Rule Resource
Get an existing Rule resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: RuleState, opts?: CustomResourceOptions): Rule
@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
cookie: Optional[str] = None,
cookie_timeout: Optional[int] = None,
delete_protection_validation: Optional[bool] = None,
domain: Optional[str] = None,
frontend_port: Optional[int] = None,
health_check: Optional[str] = None,
health_check_connect_port: Optional[int] = None,
health_check_domain: Optional[str] = None,
health_check_http_code: Optional[str] = None,
health_check_interval: Optional[int] = None,
health_check_timeout: Optional[int] = None,
health_check_uri: Optional[str] = None,
healthy_threshold: Optional[int] = None,
listener_sync: Optional[str] = None,
load_balancer_id: Optional[str] = None,
name: Optional[str] = None,
scheduler: Optional[str] = None,
server_group_id: Optional[str] = None,
sticky_session: Optional[str] = None,
sticky_session_type: Optional[str] = None,
unhealthy_threshold: Optional[int] = None,
url: Optional[str] = None) -> Rule
func GetRule(ctx *Context, name string, id IDInput, state *RuleState, opts ...ResourceOption) (*Rule, error)
public static Rule Get(string name, Input<string> id, RuleState? state, CustomResourceOptions? opts = null)
public static Rule get(String name, Output<String> id, RuleState state, CustomResourceOptions options)
Resource lookup is not supported in YAML
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- string
The cookie configured on the server. It is mandatory when
sticky_session
is "on" andsticky_session_type
is "server". Otherwise, it will be ignored. Valid value:String in line with RFC 2965, with length being 1- 200. It only contains characters such as ASCII codes, English letters and digits instead of the comma, semicolon or spacing, and it cannot start with $.- int
Cookie timeout. It is mandatory when
sticky_session
is "on" andsticky_session_type
is "insert". Otherwise, it will be ignored. Valid value range: [1-86400] in seconds.- Delete
Protection boolValidation Checking DeleteProtection of SLB instance before deleting. If true, this resource will not be deleted when its SLB instance enabled DeleteProtection. Default to false.
- Domain string
Domain name of the forwarding rule. It can contain letters a-z, numbers 0-9, hyphens (-), and periods (.), and wildcard characters. The following two domain name formats are supported:
- Standard domain name: www.test.com
- Wildcard domain name: .test.com. wildcard () must be the first character in the format of (*.)
- Frontend
Port int The listener frontend port which is used to launch the new forwarding rule. Valid range: [1-65535].
- Health
Check string Whether to enable health check. Valid values are
on
andoff
. TCP and UDP listener's HealthCheck is always on, so it will be ignore when launching TCP or UDP listener. This parameter is required and takes effect only when ListenerSync is set to off.- Health
Check intConnect Port Port used for health check. Valid value range: [1-65535]. Default to "None" means the backend server port is used.
- Health
Check stringDomain Domain name used for health check. When it used to launch TCP listener,
health_check_type
must be "http". Its length is limited to 1-80 and only characters such as letters, digits, ‘-‘ and ‘.’ are allowed. When it is not set or empty, Server Load Balancer uses the private network IP address of each backend server as Domain used for health check.- Health
Check stringHttp Code Regular health check HTTP status code. Multiple codes are segmented by “,”. It is required when
health_check
is on. Default tohttp_2xx
. Valid values are:http_2xx
,http_3xx
,http_4xx
andhttp_5xx
.- Health
Check intInterval Time interval of health checks. It is required when
health_check
is on. Valid value range: [1-50] in seconds. Default to 2.- Health
Check intTimeout Maximum timeout of each health check response. It is required when
health_check
is on. Valid value range: [1-300] in seconds. Default to 5. Note: Ifhealth_check_timeout
<health_check_interval
, its will be replaced byhealth_check_interval
.- Health
Check stringUri URI used for health check. When it used to launch TCP listener,
health_check_type
must be "http". Its length is limited to 1-80 and it must start with /. Only characters such as letters, digits, ‘-’, ‘/’, ‘.’, ‘%’, ‘?’, #’ and ‘&’ are allowed.- Healthy
Threshold int Threshold determining the result of the health check is success. It is required when
health_check
is on. Valid value range: [1-10] in seconds. Default to 3.- Listener
Sync string Indicates whether a forwarding rule inherits the settings of a health check , session persistence, and scheduling algorithm from a listener. Default to on.
- Load
Balancer stringId The Load Balancer ID which is used to launch the new forwarding rule.
- Name string
Name of the forwarding rule. Our plugin provides a default name: "tf-slb-rule".
- Scheduler string
Scheduling algorithm, Valid values are
wrr
,rr
andwlc
. Default to "wrr". This parameter is required and takes effect only when ListenerSync is set to off.- Server
Group stringId ID of a virtual server group that will be forwarded.
- Sticky
Session string Whether to enable session persistence, Valid values are
on
andoff
. Default tooff
. This parameter is required and takes effect only when ListenerSync is set to off.- Sticky
Session stringType Mode for handling the cookie. If
sticky_session
is "on", it is mandatory. Otherwise, it will be ignored. Valid values areinsert
andserver
.insert
means it is inserted from Server Load Balancer;server
means the Server Load Balancer learns from the backend server.- Unhealthy
Threshold int Threshold determining the result of the health check is fail. It is required when
health_check
is on. Valid value range: [1-10] in seconds. Default to 3.- Url string
Domain of the forwarding rule. It must be 2-80 characters in length. Only letters a-z, numbers 0-9, and characters '-' '/' '?' '%' '#' and '&' are allowed. URLs must be started with the character '/', but cannot be '/' alone.
- string
The cookie configured on the server. It is mandatory when
sticky_session
is "on" andsticky_session_type
is "server". Otherwise, it will be ignored. Valid value:String in line with RFC 2965, with length being 1- 200. It only contains characters such as ASCII codes, English letters and digits instead of the comma, semicolon or spacing, and it cannot start with $.- int
Cookie timeout. It is mandatory when
sticky_session
is "on" andsticky_session_type
is "insert". Otherwise, it will be ignored. Valid value range: [1-86400] in seconds.- Delete
Protection boolValidation Checking DeleteProtection of SLB instance before deleting. If true, this resource will not be deleted when its SLB instance enabled DeleteProtection. Default to false.
- Domain string
Domain name of the forwarding rule. It can contain letters a-z, numbers 0-9, hyphens (-), and periods (.), and wildcard characters. The following two domain name formats are supported:
- Standard domain name: www.test.com
- Wildcard domain name: .test.com. wildcard () must be the first character in the format of (*.)
- Frontend
Port int The listener frontend port which is used to launch the new forwarding rule. Valid range: [1-65535].
- Health
Check string Whether to enable health check. Valid values are
on
andoff
. TCP and UDP listener's HealthCheck is always on, so it will be ignore when launching TCP or UDP listener. This parameter is required and takes effect only when ListenerSync is set to off.- Health
Check intConnect Port Port used for health check. Valid value range: [1-65535]. Default to "None" means the backend server port is used.
- Health
Check stringDomain Domain name used for health check. When it used to launch TCP listener,
health_check_type
must be "http". Its length is limited to 1-80 and only characters such as letters, digits, ‘-‘ and ‘.’ are allowed. When it is not set or empty, Server Load Balancer uses the private network IP address of each backend server as Domain used for health check.- Health
Check stringHttp Code Regular health check HTTP status code. Multiple codes are segmented by “,”. It is required when
health_check
is on. Default tohttp_2xx
. Valid values are:http_2xx
,http_3xx
,http_4xx
andhttp_5xx
.- Health
Check intInterval Time interval of health checks. It is required when
health_check
is on. Valid value range: [1-50] in seconds. Default to 2.- Health
Check intTimeout Maximum timeout of each health check response. It is required when
health_check
is on. Valid value range: [1-300] in seconds. Default to 5. Note: Ifhealth_check_timeout
<health_check_interval
, its will be replaced byhealth_check_interval
.- Health
Check stringUri URI used for health check. When it used to launch TCP listener,
health_check_type
must be "http". Its length is limited to 1-80 and it must start with /. Only characters such as letters, digits, ‘-’, ‘/’, ‘.’, ‘%’, ‘?’, #’ and ‘&’ are allowed.- Healthy
Threshold int Threshold determining the result of the health check is success. It is required when
health_check
is on. Valid value range: [1-10] in seconds. Default to 3.- Listener
Sync string Indicates whether a forwarding rule inherits the settings of a health check , session persistence, and scheduling algorithm from a listener. Default to on.
- Load
Balancer stringId The Load Balancer ID which is used to launch the new forwarding rule.
- Name string
Name of the forwarding rule. Our plugin provides a default name: "tf-slb-rule".
- Scheduler string
Scheduling algorithm, Valid values are
wrr
,rr
andwlc
. Default to "wrr". This parameter is required and takes effect only when ListenerSync is set to off.- Server
Group stringId ID of a virtual server group that will be forwarded.
- Sticky
Session string Whether to enable session persistence, Valid values are
on
andoff
. Default tooff
. This parameter is required and takes effect only when ListenerSync is set to off.- Sticky
Session stringType Mode for handling the cookie. If
sticky_session
is "on", it is mandatory. Otherwise, it will be ignored. Valid values areinsert
andserver
.insert
means it is inserted from Server Load Balancer;server
means the Server Load Balancer learns from the backend server.- Unhealthy
Threshold int Threshold determining the result of the health check is fail. It is required when
health_check
is on. Valid value range: [1-10] in seconds. Default to 3.- Url string
Domain of the forwarding rule. It must be 2-80 characters in length. Only letters a-z, numbers 0-9, and characters '-' '/' '?' '%' '#' and '&' are allowed. URLs must be started with the character '/', but cannot be '/' alone.
- String
The cookie configured on the server. It is mandatory when
sticky_session
is "on" andsticky_session_type
is "server". Otherwise, it will be ignored. Valid value:String in line with RFC 2965, with length being 1- 200. It only contains characters such as ASCII codes, English letters and digits instead of the comma, semicolon or spacing, and it cannot start with $.- Integer
Cookie timeout. It is mandatory when
sticky_session
is "on" andsticky_session_type
is "insert". Otherwise, it will be ignored. Valid value range: [1-86400] in seconds.- delete
Protection BooleanValidation Checking DeleteProtection of SLB instance before deleting. If true, this resource will not be deleted when its SLB instance enabled DeleteProtection. Default to false.
- domain String
Domain name of the forwarding rule. It can contain letters a-z, numbers 0-9, hyphens (-), and periods (.), and wildcard characters. The following two domain name formats are supported:
- Standard domain name: www.test.com
- Wildcard domain name: .test.com. wildcard () must be the first character in the format of (*.)
- frontend
Port Integer The listener frontend port which is used to launch the new forwarding rule. Valid range: [1-65535].
- health
Check String Whether to enable health check. Valid values are
on
andoff
. TCP and UDP listener's HealthCheck is always on, so it will be ignore when launching TCP or UDP listener. This parameter is required and takes effect only when ListenerSync is set to off.- health
Check IntegerConnect Port Port used for health check. Valid value range: [1-65535]. Default to "None" means the backend server port is used.
- health
Check StringDomain Domain name used for health check. When it used to launch TCP listener,
health_check_type
must be "http". Its length is limited to 1-80 and only characters such as letters, digits, ‘-‘ and ‘.’ are allowed. When it is not set or empty, Server Load Balancer uses the private network IP address of each backend server as Domain used for health check.- health
Check StringHttp Code Regular health check HTTP status code. Multiple codes are segmented by “,”. It is required when
health_check
is on. Default tohttp_2xx
. Valid values are:http_2xx
,http_3xx
,http_4xx
andhttp_5xx
.- health
Check IntegerInterval Time interval of health checks. It is required when
health_check
is on. Valid value range: [1-50] in seconds. Default to 2.- health
Check IntegerTimeout Maximum timeout of each health check response. It is required when
health_check
is on. Valid value range: [1-300] in seconds. Default to 5. Note: Ifhealth_check_timeout
<health_check_interval
, its will be replaced byhealth_check_interval
.- health
Check StringUri URI used for health check. When it used to launch TCP listener,
health_check_type
must be "http". Its length is limited to 1-80 and it must start with /. Only characters such as letters, digits, ‘-’, ‘/’, ‘.’, ‘%’, ‘?’, #’ and ‘&’ are allowed.- healthy
Threshold Integer Threshold determining the result of the health check is success. It is required when
health_check
is on. Valid value range: [1-10] in seconds. Default to 3.- listener
Sync String Indicates whether a forwarding rule inherits the settings of a health check , session persistence, and scheduling algorithm from a listener. Default to on.
- load
Balancer StringId The Load Balancer ID which is used to launch the new forwarding rule.
- name String
Name of the forwarding rule. Our plugin provides a default name: "tf-slb-rule".
- scheduler String
Scheduling algorithm, Valid values are
wrr
,rr
andwlc
. Default to "wrr". This parameter is required and takes effect only when ListenerSync is set to off.- server
Group StringId ID of a virtual server group that will be forwarded.
- sticky
Session String Whether to enable session persistence, Valid values are
on
andoff
. Default tooff
. This parameter is required and takes effect only when ListenerSync is set to off.- sticky
Session StringType Mode for handling the cookie. If
sticky_session
is "on", it is mandatory. Otherwise, it will be ignored. Valid values areinsert
andserver
.insert
means it is inserted from Server Load Balancer;server
means the Server Load Balancer learns from the backend server.- unhealthy
Threshold Integer Threshold determining the result of the health check is fail. It is required when
health_check
is on. Valid value range: [1-10] in seconds. Default to 3.- url String
Domain of the forwarding rule. It must be 2-80 characters in length. Only letters a-z, numbers 0-9, and characters '-' '/' '?' '%' '#' and '&' are allowed. URLs must be started with the character '/', but cannot be '/' alone.
- string
The cookie configured on the server. It is mandatory when
sticky_session
is "on" andsticky_session_type
is "server". Otherwise, it will be ignored. Valid value:String in line with RFC 2965, with length being 1- 200. It only contains characters such as ASCII codes, English letters and digits instead of the comma, semicolon or spacing, and it cannot start with $.- number
Cookie timeout. It is mandatory when
sticky_session
is "on" andsticky_session_type
is "insert". Otherwise, it will be ignored. Valid value range: [1-86400] in seconds.- delete
Protection booleanValidation Checking DeleteProtection of SLB instance before deleting. If true, this resource will not be deleted when its SLB instance enabled DeleteProtection. Default to false.
- domain string
Domain name of the forwarding rule. It can contain letters a-z, numbers 0-9, hyphens (-), and periods (.), and wildcard characters. The following two domain name formats are supported:
- Standard domain name: www.test.com
- Wildcard domain name: .test.com. wildcard () must be the first character in the format of (*.)
- frontend
Port number The listener frontend port which is used to launch the new forwarding rule. Valid range: [1-65535].
- health
Check string Whether to enable health check. Valid values are
on
andoff
. TCP and UDP listener's HealthCheck is always on, so it will be ignore when launching TCP or UDP listener. This parameter is required and takes effect only when ListenerSync is set to off.- health
Check numberConnect Port Port used for health check. Valid value range: [1-65535]. Default to "None" means the backend server port is used.
- health
Check stringDomain Domain name used for health check. When it used to launch TCP listener,
health_check_type
must be "http". Its length is limited to 1-80 and only characters such as letters, digits, ‘-‘ and ‘.’ are allowed. When it is not set or empty, Server Load Balancer uses the private network IP address of each backend server as Domain used for health check.- health
Check stringHttp Code Regular health check HTTP status code. Multiple codes are segmented by “,”. It is required when
health_check
is on. Default tohttp_2xx
. Valid values are:http_2xx
,http_3xx
,http_4xx
andhttp_5xx
.- health
Check numberInterval Time interval of health checks. It is required when
health_check
is on. Valid value range: [1-50] in seconds. Default to 2.- health
Check numberTimeout Maximum timeout of each health check response. It is required when
health_check
is on. Valid value range: [1-300] in seconds. Default to 5. Note: Ifhealth_check_timeout
<health_check_interval
, its will be replaced byhealth_check_interval
.- health
Check stringUri URI used for health check. When it used to launch TCP listener,
health_check_type
must be "http". Its length is limited to 1-80 and it must start with /. Only characters such as letters, digits, ‘-’, ‘/’, ‘.’, ‘%’, ‘?’, #’ and ‘&’ are allowed.- healthy
Threshold number Threshold determining the result of the health check is success. It is required when
health_check
is on. Valid value range: [1-10] in seconds. Default to 3.- listener
Sync string Indicates whether a forwarding rule inherits the settings of a health check , session persistence, and scheduling algorithm from a listener. Default to on.
- load
Balancer stringId The Load Balancer ID which is used to launch the new forwarding rule.
- name string
Name of the forwarding rule. Our plugin provides a default name: "tf-slb-rule".
- scheduler string
Scheduling algorithm, Valid values are
wrr
,rr
andwlc
. Default to "wrr". This parameter is required and takes effect only when ListenerSync is set to off.- server
Group stringId ID of a virtual server group that will be forwarded.
- sticky
Session string Whether to enable session persistence, Valid values are
on
andoff
. Default tooff
. This parameter is required and takes effect only when ListenerSync is set to off.- sticky
Session stringType Mode for handling the cookie. If
sticky_session
is "on", it is mandatory. Otherwise, it will be ignored. Valid values areinsert
andserver
.insert
means it is inserted from Server Load Balancer;server
means the Server Load Balancer learns from the backend server.- unhealthy
Threshold number Threshold determining the result of the health check is fail. It is required when
health_check
is on. Valid value range: [1-10] in seconds. Default to 3.- url string
Domain of the forwarding rule. It must be 2-80 characters in length. Only letters a-z, numbers 0-9, and characters '-' '/' '?' '%' '#' and '&' are allowed. URLs must be started with the character '/', but cannot be '/' alone.
- str
The cookie configured on the server. It is mandatory when
sticky_session
is "on" andsticky_session_type
is "server". Otherwise, it will be ignored. Valid value:String in line with RFC 2965, with length being 1- 200. It only contains characters such as ASCII codes, English letters and digits instead of the comma, semicolon or spacing, and it cannot start with $.- int
Cookie timeout. It is mandatory when
sticky_session
is "on" andsticky_session_type
is "insert". Otherwise, it will be ignored. Valid value range: [1-86400] in seconds.- delete_
protection_ boolvalidation Checking DeleteProtection of SLB instance before deleting. If true, this resource will not be deleted when its SLB instance enabled DeleteProtection. Default to false.
- domain str
Domain name of the forwarding rule. It can contain letters a-z, numbers 0-9, hyphens (-), and periods (.), and wildcard characters. The following two domain name formats are supported:
- Standard domain name: www.test.com
- Wildcard domain name: .test.com. wildcard () must be the first character in the format of (*.)
- frontend_
port int The listener frontend port which is used to launch the new forwarding rule. Valid range: [1-65535].
- health_
check str Whether to enable health check. Valid values are
on
andoff
. TCP and UDP listener's HealthCheck is always on, so it will be ignore when launching TCP or UDP listener. This parameter is required and takes effect only when ListenerSync is set to off.- health_
check_ intconnect_ port Port used for health check. Valid value range: [1-65535]. Default to "None" means the backend server port is used.
- health_
check_ strdomain Domain name used for health check. When it used to launch TCP listener,
health_check_type
must be "http". Its length is limited to 1-80 and only characters such as letters, digits, ‘-‘ and ‘.’ are allowed. When it is not set or empty, Server Load Balancer uses the private network IP address of each backend server as Domain used for health check.- health_
check_ strhttp_ code Regular health check HTTP status code. Multiple codes are segmented by “,”. It is required when
health_check
is on. Default tohttp_2xx
. Valid values are:http_2xx
,http_3xx
,http_4xx
andhttp_5xx
.- health_
check_ intinterval Time interval of health checks. It is required when
health_check
is on. Valid value range: [1-50] in seconds. Default to 2.- health_
check_ inttimeout Maximum timeout of each health check response. It is required when
health_check
is on. Valid value range: [1-300] in seconds. Default to 5. Note: Ifhealth_check_timeout
<health_check_interval
, its will be replaced byhealth_check_interval
.- health_
check_ struri URI used for health check. When it used to launch TCP listener,
health_check_type
must be "http". Its length is limited to 1-80 and it must start with /. Only characters such as letters, digits, ‘-’, ‘/’, ‘.’, ‘%’, ‘?’, #’ and ‘&’ are allowed.- healthy_
threshold int Threshold determining the result of the health check is success. It is required when
health_check
is on. Valid value range: [1-10] in seconds. Default to 3.- listener_
sync str Indicates whether a forwarding rule inherits the settings of a health check , session persistence, and scheduling algorithm from a listener. Default to on.
- load_
balancer_ strid The Load Balancer ID which is used to launch the new forwarding rule.
- name str
Name of the forwarding rule. Our plugin provides a default name: "tf-slb-rule".
- scheduler str
Scheduling algorithm, Valid values are
wrr
,rr
andwlc
. Default to "wrr". This parameter is required and takes effect only when ListenerSync is set to off.- server_
group_ strid ID of a virtual server group that will be forwarded.
- sticky_
session str Whether to enable session persistence, Valid values are
on
andoff
. Default tooff
. This parameter is required and takes effect only when ListenerSync is set to off.- sticky_
session_ strtype Mode for handling the cookie. If
sticky_session
is "on", it is mandatory. Otherwise, it will be ignored. Valid values areinsert
andserver
.insert
means it is inserted from Server Load Balancer;server
means the Server Load Balancer learns from the backend server.- unhealthy_
threshold int Threshold determining the result of the health check is fail. It is required when
health_check
is on. Valid value range: [1-10] in seconds. Default to 3.- url str
Domain of the forwarding rule. It must be 2-80 characters in length. Only letters a-z, numbers 0-9, and characters '-' '/' '?' '%' '#' and '&' are allowed. URLs must be started with the character '/', but cannot be '/' alone.
- String
The cookie configured on the server. It is mandatory when
sticky_session
is "on" andsticky_session_type
is "server". Otherwise, it will be ignored. Valid value:String in line with RFC 2965, with length being 1- 200. It only contains characters such as ASCII codes, English letters and digits instead of the comma, semicolon or spacing, and it cannot start with $.- Number
Cookie timeout. It is mandatory when
sticky_session
is "on" andsticky_session_type
is "insert". Otherwise, it will be ignored. Valid value range: [1-86400] in seconds.- delete
Protection BooleanValidation Checking DeleteProtection of SLB instance before deleting. If true, this resource will not be deleted when its SLB instance enabled DeleteProtection. Default to false.
- domain String
Domain name of the forwarding rule. It can contain letters a-z, numbers 0-9, hyphens (-), and periods (.), and wildcard characters. The following two domain name formats are supported:
- Standard domain name: www.test.com
- Wildcard domain name: .test.com. wildcard () must be the first character in the format of (*.)
- frontend
Port Number The listener frontend port which is used to launch the new forwarding rule. Valid range: [1-65535].
- health
Check String Whether to enable health check. Valid values are
on
andoff
. TCP and UDP listener's HealthCheck is always on, so it will be ignore when launching TCP or UDP listener. This parameter is required and takes effect only when ListenerSync is set to off.- health
Check NumberConnect Port Port used for health check. Valid value range: [1-65535]. Default to "None" means the backend server port is used.
- health
Check StringDomain Domain name used for health check. When it used to launch TCP listener,
health_check_type
must be "http". Its length is limited to 1-80 and only characters such as letters, digits, ‘-‘ and ‘.’ are allowed. When it is not set or empty, Server Load Balancer uses the private network IP address of each backend server as Domain used for health check.- health
Check StringHttp Code Regular health check HTTP status code. Multiple codes are segmented by “,”. It is required when
health_check
is on. Default tohttp_2xx
. Valid values are:http_2xx
,http_3xx
,http_4xx
andhttp_5xx
.- health
Check NumberInterval Time interval of health checks. It is required when
health_check
is on. Valid value range: [1-50] in seconds. Default to 2.- health
Check NumberTimeout Maximum timeout of each health check response. It is required when
health_check
is on. Valid value range: [1-300] in seconds. Default to 5. Note: Ifhealth_check_timeout
<health_check_interval
, its will be replaced byhealth_check_interval
.- health
Check StringUri URI used for health check. When it used to launch TCP listener,
health_check_type
must be "http". Its length is limited to 1-80 and it must start with /. Only characters such as letters, digits, ‘-’, ‘/’, ‘.’, ‘%’, ‘?’, #’ and ‘&’ are allowed.- healthy
Threshold Number Threshold determining the result of the health check is success. It is required when
health_check
is on. Valid value range: [1-10] in seconds. Default to 3.- listener
Sync String Indicates whether a forwarding rule inherits the settings of a health check , session persistence, and scheduling algorithm from a listener. Default to on.
- load
Balancer StringId The Load Balancer ID which is used to launch the new forwarding rule.
- name String
Name of the forwarding rule. Our plugin provides a default name: "tf-slb-rule".
- scheduler String
Scheduling algorithm, Valid values are
wrr
,rr
andwlc
. Default to "wrr". This parameter is required and takes effect only when ListenerSync is set to off.- server
Group StringId ID of a virtual server group that will be forwarded.
- sticky
Session String Whether to enable session persistence, Valid values are
on
andoff
. Default tooff
. This parameter is required and takes effect only when ListenerSync is set to off.- sticky
Session StringType Mode for handling the cookie. If
sticky_session
is "on", it is mandatory. Otherwise, it will be ignored. Valid values areinsert
andserver
.insert
means it is inserted from Server Load Balancer;server
means the Server Load Balancer learns from the backend server.- unhealthy
Threshold Number Threshold determining the result of the health check is fail. It is required when
health_check
is on. Valid value range: [1-10] in seconds. Default to 3.- url String
Domain of the forwarding rule. It must be 2-80 characters in length. Only letters a-z, numbers 0-9, and characters '-' '/' '?' '%' '#' and '&' are allowed. URLs must be started with the character '/', but cannot be '/' alone.
Import
Load balancer forwarding rule can be imported using the id, e.g.
$ pulumi import alicloud:slb/rule:Rule example rule-abc123456
Package Details
- Repository
- Alibaba Cloud pulumi/pulumi-alicloud
- License
- Apache-2.0
- Notes
This Pulumi package is based on the
alicloud
Terraform Provider.