@pulumi/f5bigip
Version:
A Pulumi package for creating and managing F5 BigIP resources.
226 lines • 9.32 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
/**
* ## # f5bigip.GtmDatacenter
*
* Manages F5 BIG-IP GTM (Global Traffic Manager) Datacenter resources.
*
* A GTM datacenter is a logical representation of a physical location where servers reside. Datacenters are fundamental building blocks in GTM topology and are used for geographic load balancing and disaster recovery.
*
* ## Example Usage
*
* ### Basic Datacenter
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as f5bigip from "@pulumi/f5bigip";
*
* const example = new f5bigip.GtmDatacenter("example", {
* name: "example_datacenter",
* partition: "Common",
* location: "Seattle, WA",
* contact: "admin@example.com",
* description: "Primary datacenter for west coast operations",
* enabled: true,
* proberPreference: "inside-datacenter",
* proberFallback: "any-available",
* });
* ```
*
* ### Datacenter with Custom Prober Settings
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as f5bigip from "@pulumi/f5bigip";
*
* const customProber = new f5bigip.GtmDatacenter("custom_prober", {
* name: "custom_datacenter",
* partition: "Common",
* location: "New York, NY",
* contact: "ops@example.com",
* description: "East coast datacenter with custom prober configuration",
* enabled: true,
* proberPreference: "pool",
* proberFallback: "outside-datacenter",
* });
* ```
*
* ### Disabled Datacenter
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as f5bigip from "@pulumi/f5bigip";
*
* const maintenance = new f5bigip.GtmDatacenter("maintenance", {
* name: "maintenance_dc",
* partition: "Common",
* location: "Chicago, IL",
* contact: "maintenance@example.com",
* description: "Datacenter currently under maintenance",
* enabled: false,
* proberPreference: "inside-datacenter",
* proberFallback: "any-available",
* });
* ```
*
* ## Notes
*
* * Datacenters are required before you can create GTM servers and pools.
* * The `name` and `partition` cannot be changed after creation. You must destroy and recreate the resource to change these values.
* * Disabling a datacenter (`enabled = false`) removes it from load balancing decisions but preserves its configuration.
* * Prober settings control how BIG-IP monitors the health of resources in this datacenter.
*
* ## Import
*
* GTM datacenters can be imported using the full path, e.g.
*
* ```sh
* $ pulumi import f5bigip:index/gtmDatacenter:GtmDatacenter example /Common/example_datacenter
* ```
*/
export declare class GtmDatacenter extends pulumi.CustomResource {
/**
* Get an existing GtmDatacenter 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<pulumi.ID>, state?: GtmDatacenterState, opts?: pulumi.CustomResourceOptions): GtmDatacenter;
/**
* Returns true if the given object is an instance of GtmDatacenter. 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 GtmDatacenter;
/**
* Contact information for the datacenter administrator.
*/
readonly contact: pulumi.Output<string | undefined>;
/**
* Description of the datacenter.
*/
readonly description: pulumi.Output<string | undefined>;
/**
* Enable or disable the datacenter. Default is `true`. When set to `false`, the datacenter is disabled and will not be used for load balancing decisions.
*/
readonly enabled: pulumi.Output<boolean | undefined>;
/**
* Physical location of the datacenter. This is a free-form text field.
*/
readonly location: pulumi.Output<string | undefined>;
/**
* Name of the GTM datacenter. Cannot be changed after creation.
*/
readonly name: pulumi.Output<string>;
/**
* Partition in which to create the datacenter. Default is `Common`. Cannot be changed after creation.
*/
readonly partition: pulumi.Output<string | undefined>;
/**
* Specifies the type of prober to use as fallback when the preferred prober is unavailable. Default is `any-available`. Valid options are:
* - `any-available` - Use any available prober
* - `inside-datacenter` - Fallback to probers inside this datacenter
* - `outside-datacenter` - Fallback to probers outside this datacenter
*/
readonly proberFallback: pulumi.Output<string | undefined>;
/**
* Specifies the type of prober to prefer when monitoring resources in this datacenter. Default is `inside-datacenter`. Valid options are:
* - `inside-datacenter` - Prefer probers inside this datacenter
* - `outside-datacenter` - Prefer probers outside this datacenter
*/
readonly proberPreference: pulumi.Output<string | undefined>;
/**
* Create a GtmDatacenter 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: GtmDatacenterArgs, opts?: pulumi.CustomResourceOptions);
}
/**
* Input properties used for looking up and filtering GtmDatacenter resources.
*/
export interface GtmDatacenterState {
/**
* Contact information for the datacenter administrator.
*/
contact?: pulumi.Input<string | undefined>;
/**
* Description of the datacenter.
*/
description?: pulumi.Input<string | undefined>;
/**
* Enable or disable the datacenter. Default is `true`. When set to `false`, the datacenter is disabled and will not be used for load balancing decisions.
*/
enabled?: pulumi.Input<boolean | undefined>;
/**
* Physical location of the datacenter. This is a free-form text field.
*/
location?: pulumi.Input<string | undefined>;
/**
* Name of the GTM datacenter. Cannot be changed after creation.
*/
name?: pulumi.Input<string | undefined>;
/**
* Partition in which to create the datacenter. Default is `Common`. Cannot be changed after creation.
*/
partition?: pulumi.Input<string | undefined>;
/**
* Specifies the type of prober to use as fallback when the preferred prober is unavailable. Default is `any-available`. Valid options are:
* - `any-available` - Use any available prober
* - `inside-datacenter` - Fallback to probers inside this datacenter
* - `outside-datacenter` - Fallback to probers outside this datacenter
*/
proberFallback?: pulumi.Input<string | undefined>;
/**
* Specifies the type of prober to prefer when monitoring resources in this datacenter. Default is `inside-datacenter`. Valid options are:
* - `inside-datacenter` - Prefer probers inside this datacenter
* - `outside-datacenter` - Prefer probers outside this datacenter
*/
proberPreference?: pulumi.Input<string | undefined>;
}
/**
* The set of arguments for constructing a GtmDatacenter resource.
*/
export interface GtmDatacenterArgs {
/**
* Contact information for the datacenter administrator.
*/
contact?: pulumi.Input<string | undefined>;
/**
* Description of the datacenter.
*/
description?: pulumi.Input<string | undefined>;
/**
* Enable or disable the datacenter. Default is `true`. When set to `false`, the datacenter is disabled and will not be used for load balancing decisions.
*/
enabled?: pulumi.Input<boolean | undefined>;
/**
* Physical location of the datacenter. This is a free-form text field.
*/
location?: pulumi.Input<string | undefined>;
/**
* Name of the GTM datacenter. Cannot be changed after creation.
*/
name: pulumi.Input<string>;
/**
* Partition in which to create the datacenter. Default is `Common`. Cannot be changed after creation.
*/
partition?: pulumi.Input<string | undefined>;
/**
* Specifies the type of prober to use as fallback when the preferred prober is unavailable. Default is `any-available`. Valid options are:
* - `any-available` - Use any available prober
* - `inside-datacenter` - Fallback to probers inside this datacenter
* - `outside-datacenter` - Fallback to probers outside this datacenter
*/
proberFallback?: pulumi.Input<string | undefined>;
/**
* Specifies the type of prober to prefer when monitoring resources in this datacenter. Default is `inside-datacenter`. Valid options are:
* - `inside-datacenter` - Prefer probers inside this datacenter
* - `outside-datacenter` - Prefer probers outside this datacenter
*/
proberPreference?: pulumi.Input<string | undefined>;
}
//# sourceMappingURL=gtmDatacenter.d.ts.map