import * as pulumi from "@pulumi/pulumi"; /** * This resource provides the Backend resource in Oracle Cloud Infrastructure Network Load Balancer service. * Api doc link for the resource: https://docs.oracle.com/iaas/api/#/en/networkloadbalancer/latest/Backend * * Example terraform configs related to the resource : https://github.com/oracle/terraform-provider-oci/tree/master/examples/network_load_balancer * * Adds a backend server to a backend set. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as oci from "@pulumi/oci"; * * const testBackend = new oci.networkloadbalancer.Backend("test_backend", { * backendSetName: testBackendSet.name, * networkLoadBalancerId: testNetworkLoadBalancer.id, * port: Number(backendPort), * ipAddress: backendIpAddress, * isBackup: backendIsBackup === "true", * isDrain: backendIsDrain === "true", * isOffline: backendIsOffline === "true", * name: backendName, * targetId: testTarget.id, * weight: Number(backendWeight), * }); * ``` * * ## Import * * Backends can be imported using the `id`, e.g. * * ```sh * $ pulumi import oci:NetworkLoadBalancer/backend:Backend test_backend "networkLoadBalancers/{networkLoadBalancerId}/backendSets/{backendSetName}/backends/{backendName}" * ``` */ export declare class Backend extends pulumi.CustomResource { /** * Get an existing Backend 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?: BackendState, opts?: pulumi.CustomResourceOptions): Backend; /** * Returns true if the given object is an instance of Backend. 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 Backend; /** * The name of the backend set to which to add the backend server. Example: `exampleBackendSet` */ readonly backendSetName: pulumi.Output; /** * The IP address of the backend server. Example: `10.0.0.3` */ readonly ipAddress: pulumi.Output; /** * (Updatable) Whether the network load balancer should treat this server as a backup unit. If `true`, then the network load balancer forwards no ingress traffic to this backend server unless all other backend servers not marked as "isBackup" fail the health check policy. Example: `false` */ readonly isBackup: pulumi.Output; /** * (Updatable) Whether the network load balancer should drain this server. Servers marked "isDrain" stop receiving new connections but will continue to receive traffic on existing connections until the connection is terminated. Example: `false` */ readonly isDrain: pulumi.Output; /** * (Updatable) Whether the network load balancer should treat this server as offline. Offline servers receive no incoming traffic. Example: `false` */ readonly isOffline: pulumi.Output; /** * Optional unique name identifying the backend within the backend set. If not specified, then one will be generated. Example: `webServer1` */ readonly name: pulumi.Output; /** * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the network load balancer to update. */ readonly networkLoadBalancerId: pulumi.Output; /** * The communication port for the backend server. Example: `8080` */ readonly port: pulumi.Output; /** * The IP OCID/Instance OCID associated with the backend server. Example: `ocid1.privateip..oc1.<unique_ID>` */ readonly targetId: pulumi.Output; /** * (Updatable) The network load balancing policy weight assigned to the server. Backend servers with a higher weight receive a larger proportion of incoming traffic. For example, a server weighted '3' receives three times the number of new connections as a server weighted '1'. For more information about network load balancer policies, see [Network Load Balancer Policies](https://docs.cloud.oracle.com/iaas/Content/NetworkLoadBalancer/introduction.htm#Policies). Example: `3` * * ** IMPORTANT ** * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values */ readonly weight: pulumi.Output; /** * Create a Backend 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: BackendArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering Backend resources. */ export interface BackendState { /** * The name of the backend set to which to add the backend server. Example: `exampleBackendSet` */ backendSetName?: pulumi.Input; /** * The IP address of the backend server. Example: `10.0.0.3` */ ipAddress?: pulumi.Input; /** * (Updatable) Whether the network load balancer should treat this server as a backup unit. If `true`, then the network load balancer forwards no ingress traffic to this backend server unless all other backend servers not marked as "isBackup" fail the health check policy. Example: `false` */ isBackup?: pulumi.Input; /** * (Updatable) Whether the network load balancer should drain this server. Servers marked "isDrain" stop receiving new connections but will continue to receive traffic on existing connections until the connection is terminated. Example: `false` */ isDrain?: pulumi.Input; /** * (Updatable) Whether the network load balancer should treat this server as offline. Offline servers receive no incoming traffic. Example: `false` */ isOffline?: pulumi.Input; /** * Optional unique name identifying the backend within the backend set. If not specified, then one will be generated. Example: `webServer1` */ name?: pulumi.Input; /** * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the network load balancer to update. */ networkLoadBalancerId?: pulumi.Input; /** * The communication port for the backend server. Example: `8080` */ port?: pulumi.Input; /** * The IP OCID/Instance OCID associated with the backend server. Example: `ocid1.privateip..oc1.<unique_ID>` */ targetId?: pulumi.Input; /** * (Updatable) The network load balancing policy weight assigned to the server. Backend servers with a higher weight receive a larger proportion of incoming traffic. For example, a server weighted '3' receives three times the number of new connections as a server weighted '1'. For more information about network load balancer policies, see [Network Load Balancer Policies](https://docs.cloud.oracle.com/iaas/Content/NetworkLoadBalancer/introduction.htm#Policies). Example: `3` * * ** IMPORTANT ** * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values */ weight?: pulumi.Input; } /** * The set of arguments for constructing a Backend resource. */ export interface BackendArgs { /** * The name of the backend set to which to add the backend server. Example: `exampleBackendSet` */ backendSetName: pulumi.Input; /** * The IP address of the backend server. Example: `10.0.0.3` */ ipAddress?: pulumi.Input; /** * (Updatable) Whether the network load balancer should treat this server as a backup unit. If `true`, then the network load balancer forwards no ingress traffic to this backend server unless all other backend servers not marked as "isBackup" fail the health check policy. Example: `false` */ isBackup?: pulumi.Input; /** * (Updatable) Whether the network load balancer should drain this server. Servers marked "isDrain" stop receiving new connections but will continue to receive traffic on existing connections until the connection is terminated. Example: `false` */ isDrain?: pulumi.Input; /** * (Updatable) Whether the network load balancer should treat this server as offline. Offline servers receive no incoming traffic. Example: `false` */ isOffline?: pulumi.Input; /** * Optional unique name identifying the backend within the backend set. If not specified, then one will be generated. Example: `webServer1` */ name?: pulumi.Input; /** * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the network load balancer to update. */ networkLoadBalancerId: pulumi.Input; /** * The communication port for the backend server. Example: `8080` */ port: pulumi.Input; /** * The IP OCID/Instance OCID associated with the backend server. Example: `ocid1.privateip..oc1.<unique_ID>` */ targetId?: pulumi.Input; /** * (Updatable) The network load balancing policy weight assigned to the server. Backend servers with a higher weight receive a larger proportion of incoming traffic. For example, a server weighted '3' receives three times the number of new connections as a server weighted '1'. For more information about network load balancer policies, see [Network Load Balancer Policies](https://docs.cloud.oracle.com/iaas/Content/NetworkLoadBalancer/introduction.htm#Policies). Example: `3` * * ** IMPORTANT ** * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values */ weight?: pulumi.Input; } //# sourceMappingURL=backend.d.ts.map