import * as pulumi from "@pulumi/pulumi"; import { input as inputs, output as outputs } from "../types"; /** * Creates a VMware vRealize Automation load balancer resource. * * ## Example Usage * ### S * * The following example shows how to create a load balancer resource. * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as vra from "@pulumiverse/vra"; * * const _this = new vra.loadbalancer.LoadBalancer("this", { * projectId: vra_project["my-project"].id, * description: "My Load Balancer", * customProperties: { * edgeClusterRouterStateLink: "/resources/routers/", * tier0LogicalRouterStateLink: "/resources/routers/", * }, * targets: [{ * machineId: vra_machine.my_machine.id, * }], * nics: [{ * networkId: data.vra_network["my-network"].id, * }], * routes: [{ * protocol: "TCP", * port: "80", * memberProtocol: "TCP", * memberPort: "80", * healthCheckConfigurations: [{ * protocol: "TCP", * port: "80", * intervalSeconds: 30, * timeoutSeconds: 10, * unhealthyThreshold: 2, * healthyThreshold: 10, * }], * }], * }); * ``` * * A block device resource supports the following arguments: */ 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 state Any extra arguments used during the lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, state?: LoadBalancerState, 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; /** * Primary address allocated or in use by this load balancer. The address could be an in the form of a publicly resolvable DNS name or an IP address. */ readonly address: pulumi.Output; /** * Date when the entity was created. The date is in ISO 6801 and UTC. */ readonly createdAt: pulumi.Output; /** * Additional custom properties that may be used to extend the machine. */ readonly customProperties: pulumi.Output<{ [key: string]: any; }>; /** * The id of the deployment that is associated with this resource. */ readonly deploymentId: pulumi.Output; /** * Describes machine within the scope of your organization and is not propagated to the cloud. */ readonly description: pulumi.Output; /** * External entity Id on the provider side. */ readonly externalId: pulumi.Output; /** * The external regionId of the resource. */ readonly externalRegionId: pulumi.Output; /** * The external regionId of the resource. */ readonly externalZoneId: pulumi.Output; /** * An Internet-facing load balancer has a publicly resolvable DNS name, so it can route requests from clients over the Internet to the instances that are registered with the load balancer. */ readonly internetFacing: pulumi.Output; /** * HATEOAS of the entity. */ readonly links: pulumi.Output; /** * A human-friendly name used as an identifier in APIs that support this option. */ readonly name: pulumi.Output; /** * A set of network interface specifications for this load balancer. */ readonly nics: pulumi.Output; /** * The id of the organization this entity belongs to. */ readonly organizationId: pulumi.Output; /** * Email of the user that owns the entity. */ readonly owner: pulumi.Output; /** * The id of the project the current user belongs to. */ readonly projectId: pulumi.Output; /** * The load balancer route configuration regarding ports and protocols. */ readonly routes: pulumi.Output; /** * A set of tag keys and optional values that were set on this resource instance. * example:[ { "key" : "vmware.enumeration.type", "value": "nebsBlock" } ] */ readonly tags: pulumi.Output; /** * A list of links to target load balancer pool members. Links can be to either a machine or a machine's network interface. */ readonly targets: pulumi.Output; /** * Date when the entity was last updated. The date is ISO 8601 and UTC. */ readonly updatedAt: pulumi.Output; /** * 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); } /** * Input properties used for looking up and filtering LoadBalancer resources. */ export interface LoadBalancerState { /** * Primary address allocated or in use by this load balancer. The address could be an in the form of a publicly resolvable DNS name or an IP address. */ address?: pulumi.Input; /** * Date when the entity was created. The date is in ISO 6801 and UTC. */ createdAt?: pulumi.Input; /** * Additional custom properties that may be used to extend the machine. */ customProperties?: pulumi.Input<{ [key: string]: any; }>; /** * The id of the deployment that is associated with this resource. */ deploymentId?: pulumi.Input; /** * Describes machine within the scope of your organization and is not propagated to the cloud. */ description?: pulumi.Input; /** * External entity Id on the provider side. */ externalId?: pulumi.Input; /** * The external regionId of the resource. */ externalRegionId?: pulumi.Input; /** * The external regionId of the resource. */ externalZoneId?: pulumi.Input; /** * An Internet-facing load balancer has a publicly resolvable DNS name, so it can route requests from clients over the Internet to the instances that are registered with the load balancer. */ internetFacing?: pulumi.Input; /** * HATEOAS of the entity. */ links?: pulumi.Input[]>; /** * A human-friendly name used as an identifier in APIs that support this option. */ name?: pulumi.Input; /** * A set of network interface specifications for this load balancer. */ nics?: pulumi.Input[]>; /** * The id of the organization this entity belongs to. */ organizationId?: pulumi.Input; /** * Email of the user that owns the entity. */ owner?: pulumi.Input; /** * The id of the project the current user belongs to. */ projectId?: pulumi.Input; /** * The load balancer route configuration regarding ports and protocols. */ routes?: pulumi.Input[]>; /** * A set of tag keys and optional values that were set on this resource instance. * example:[ { "key" : "vmware.enumeration.type", "value": "nebsBlock" } ] */ tags?: pulumi.Input[]>; /** * A list of links to target load balancer pool members. Links can be to either a machine or a machine's network interface. */ targets?: pulumi.Input[]>; /** * Date when the entity was last updated. The date is ISO 8601 and UTC. */ updatedAt?: pulumi.Input; } /** * The set of arguments for constructing a LoadBalancer resource. */ export interface LoadBalancerArgs { /** * Additional custom properties that may be used to extend the machine. */ customProperties?: pulumi.Input<{ [key: string]: any; }>; /** * The id of the deployment that is associated with this resource. */ deploymentId?: pulumi.Input; /** * Describes machine within the scope of your organization and is not propagated to the cloud. */ description?: pulumi.Input; /** * An Internet-facing load balancer has a publicly resolvable DNS name, so it can route requests from clients over the Internet to the instances that are registered with the load balancer. */ internetFacing?: pulumi.Input; /** * A human-friendly name used as an identifier in APIs that support this option. */ name?: pulumi.Input; /** * A set of network interface specifications for this load balancer. */ nics: pulumi.Input[]>; /** * The id of the project the current user belongs to. */ projectId: pulumi.Input; /** * The load balancer route configuration regarding ports and protocols. */ routes: pulumi.Input[]>; /** * A set of tag keys and optional values that were set on this resource instance. * example:[ { "key" : "vmware.enumeration.type", "value": "nebsBlock" } ] */ tags?: pulumi.Input[]>; /** * A list of links to target load balancer pool members. Links can be to either a machine or a machine's network interface. */ targets?: pulumi.Input[]>; }