UNPKG

@pulumi/aws-native

Version:

The Pulumi AWS Cloud Control Provider enables you to build, deploy, and manage [any AWS resource that's supported by the AWS Cloud Control API](https://github.com/pulumi/pulumi-aws-native/blob/master/provider/cmd/pulumi-gen-aws-native/supported-types.txt)

177 lines (176 loc) 8.53 kB
import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; /** * Resource Type definition for AWS::ElasticLoadBalancing::LoadBalancer */ export declare class LoadBalancer extends pulumi.CustomResource { /** * Get an existing LoadBalancer resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input<pulumi.ID>, opts?: pulumi.CustomResourceOptions): LoadBalancer; /** * Returns true if the given object is an instance of LoadBalancer. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is LoadBalancer; /** * Information about where and how access logs are stored for the load balancer. */ readonly accessLoggingPolicy: pulumi.Output<outputs.elasticloadbalancing.LoadBalancerAccessLoggingPolicy | undefined>; /** * Information about a policy for application-controlled session stickiness. */ readonly appCookieStickinessPolicy: pulumi.Output<outputs.elasticloadbalancing.LoadBalancerAppCookieStickinessPolicy[] | undefined>; /** * The Availability Zones for a load balancer in a default VPC. For a load balancer in a nondefault VPC, specify Subnets instead. */ readonly availabilityZones: pulumi.Output<string[] | undefined>; /** * The name of the Route 53 hosted zone that is associated with the load balancer. Internal-facing load balancers. */ readonly canonicalHostedZoneName: pulumi.Output<string>; /** * The ID of the Route 53 hosted zone name that is associated with the load balancer. */ readonly canonicalHostedZoneNameId: pulumi.Output<string>; /** * If enabled, the load balancer allows existing requests to complete before the load balancer shifts traffic away from a deregistered or unhealthy instance. */ readonly connectionDrainingPolicy: pulumi.Output<outputs.elasticloadbalancing.LoadBalancerConnectionDrainingPolicy | undefined>; /** * If enabled, the load balancer allows the connections to remain idle (no data is sent over the connection) for the specified duration. */ readonly connectionSettings: pulumi.Output<outputs.elasticloadbalancing.LoadBalancerConnectionSettings | undefined>; /** * If enabled, the load balancer routes the request traffic evenly across all instances regardless of the Availability Zones. */ readonly crossZone: pulumi.Output<boolean | undefined>; /** * The DNS name for the load balancer */ readonly dnsName: pulumi.Output<string>; /** * The health check settings to use when evaluating the health of your EC2 instances. */ readonly healthCheck: pulumi.Output<outputs.elasticloadbalancing.LoadBalancerHealthCheck | undefined>; /** * The IDs of the instances for the load balancer. */ readonly instances: pulumi.Output<string[] | undefined>; /** * Information about a policy for duration-based session stickiness. */ readonly lbCookieStickinessPolicy: pulumi.Output<outputs.elasticloadbalancing.LoadBalancerLbCookieStickinessPolicy[] | undefined>; /** * The Listeners for the load balancer. You can specify at most one listener per port. */ readonly listeners: pulumi.Output<outputs.elasticloadbalancing.LoadBalancerListeners[]>; /** * The name of the load balancer. This name must be unique within your set of load balancers for the region. */ readonly loadBalancerName: pulumi.Output<string | undefined>; /** * The policies defined for your Classic Load Balancer. Specify only back-end server policies. */ readonly policies: pulumi.Output<outputs.elasticloadbalancing.LoadBalancerPolicies[] | undefined>; /** * The type of load balancer. Valid only for load balancers in a VPC. */ readonly scheme: pulumi.Output<string | undefined>; /** * The security groups for the load balancer. Valid only for load balancers in a VPC. */ readonly securityGroups: pulumi.Output<string[] | undefined>; readonly sourceSecurityGroup: pulumi.Output<outputs.elasticloadbalancing.LoadBalancerSourceSecurityGroup>; /** * The IDs of the subnets for the load balancer. You can specify at most one subnet per Availability Zone. */ readonly subnets: pulumi.Output<string[] | undefined>; /** * The tags associated with a load balancer. */ readonly tags: pulumi.Output<outputs.Tag[] | undefined>; /** * Create a LoadBalancer resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args: LoadBalancerArgs, opts?: pulumi.CustomResourceOptions); } /** * The set of arguments for constructing a LoadBalancer resource. */ export interface LoadBalancerArgs { /** * Information about where and how access logs are stored for the load balancer. */ accessLoggingPolicy?: pulumi.Input<inputs.elasticloadbalancing.LoadBalancerAccessLoggingPolicyArgs>; /** * Information about a policy for application-controlled session stickiness. */ appCookieStickinessPolicy?: pulumi.Input<pulumi.Input<inputs.elasticloadbalancing.LoadBalancerAppCookieStickinessPolicyArgs>[]>; /** * The Availability Zones for a load balancer in a default VPC. For a load balancer in a nondefault VPC, specify Subnets instead. */ availabilityZones?: pulumi.Input<pulumi.Input<string>[]>; /** * If enabled, the load balancer allows existing requests to complete before the load balancer shifts traffic away from a deregistered or unhealthy instance. */ connectionDrainingPolicy?: pulumi.Input<inputs.elasticloadbalancing.LoadBalancerConnectionDrainingPolicyArgs>; /** * If enabled, the load balancer allows the connections to remain idle (no data is sent over the connection) for the specified duration. */ connectionSettings?: pulumi.Input<inputs.elasticloadbalancing.LoadBalancerConnectionSettingsArgs>; /** * If enabled, the load balancer routes the request traffic evenly across all instances regardless of the Availability Zones. */ crossZone?: pulumi.Input<boolean>; /** * The health check settings to use when evaluating the health of your EC2 instances. */ healthCheck?: pulumi.Input<inputs.elasticloadbalancing.LoadBalancerHealthCheckArgs>; /** * The IDs of the instances for the load balancer. */ instances?: pulumi.Input<pulumi.Input<string>[]>; /** * Information about a policy for duration-based session stickiness. */ lbCookieStickinessPolicy?: pulumi.Input<pulumi.Input<inputs.elasticloadbalancing.LoadBalancerLbCookieStickinessPolicyArgs>[]>; /** * The Listeners for the load balancer. You can specify at most one listener per port. */ listeners: pulumi.Input<pulumi.Input<inputs.elasticloadbalancing.LoadBalancerListenersArgs>[]>; /** * The name of the load balancer. This name must be unique within your set of load balancers for the region. */ loadBalancerName?: pulumi.Input<string>; /** * The policies defined for your Classic Load Balancer. Specify only back-end server policies. */ policies?: pulumi.Input<pulumi.Input<inputs.elasticloadbalancing.LoadBalancerPoliciesArgs>[]>; /** * The type of load balancer. Valid only for load balancers in a VPC. */ scheme?: pulumi.Input<string>; /** * The security groups for the load balancer. Valid only for load balancers in a VPC. */ securityGroups?: pulumi.Input<pulumi.Input<string>[]>; /** * The IDs of the subnets for the load balancer. You can specify at most one subnet per Availability Zone. */ subnets?: pulumi.Input<pulumi.Input<string>[]>; /** * The tags associated with a load balancer. */ tags?: pulumi.Input<pulumi.Input<inputs.TagArgs>[]>; }