UNPKG

@pulumi/f5bigip

Version:

A Pulumi package for creating and managing F5 BigIP resources.

249 lines (248 loc) • 15.6 kB
import * as pulumi from "@pulumi/pulumi"; /** * `f5bigip.ltm.ProfileFastL4` Configures a custom LTM fastL4 profile for use by health checks. * * Resources should be named with their `full path`. The full path is the combination of the `partition + name` of the resource (For example `/Common/my-fastl4profile`) or `partition + directory + name` of the resource (example: `/Common/test/my-fastl4profile`) * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as f5bigip from "@pulumi/f5bigip"; * * const profileFastl4 = new f5bigip.ltm.ProfileFastL4("profile_fastl4", { * name: "/Common/sjfastl4profile", * defaultsFrom: "/Common/fastL4", * clientTimeout: 40, * explicitflowMigration: "enabled", * hardwareSyncookie: "enabled", * idleTimeout: "200", * iptosToclient: "pass-through", * iptosToserver: "pass-through", * keepaliveInterval: "disabled", * }); * ``` * * ## Import * * BIG-IP LTM fastl4 profiles can be imported using the `name`, e.g. * * ```sh * $ pulumi import f5bigip:ltm/profileFastL4:ProfileFastL4 test-fastl4 /Common/test-fastl4 * ``` */ export declare class ProfileFastL4 extends pulumi.CustomResource { /** * Get an existing ProfileFastL4 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?: ProfileFastL4State, opts?: pulumi.CustomResourceOptions): ProfileFastL4; /** * Returns true if the given object is an instance of ProfileFastL4. 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 ProfileFastL4; /** * Specifies late binding client timeout in seconds. This setting specifies the number of seconds allowed for a client to transmit enough data to select a server when late binding is enabled. If it expires timeout-recovery mode will dictate what action to take. */ readonly clientTimeout: pulumi.Output<number>; /** * Specifies the profile that you want to use as the parent profile. Your new profile inherits all settings and values from the parent profile specified. */ readonly defaultsFrom: pulumi.Output<string>; /** * Enables or disables late binding explicit flow migration that allows iRules to control when flows move from software to hardware. Explicit flow migration is disabled by default hence BIG-IP automatically migrates flows from software to hardware. */ readonly explicitflowMigration: pulumi.Output<string>; /** * Enables or disables hardware SYN cookie support when PVA10 is present on the system. Note that when you set the hardware syncookie option to enabled, you may also want to set the following bigdb database variables using the "/sys modify db" command, based on your requirements: pva.SynCookies.Full.ConnectionThreshold (default: 500000), pva.SynCookies.Assist.ConnectionThreshold (default: 500000) pva.SynCookies.ClientWindow (default: 0). The default value is disabled. */ readonly hardwareSyncookie: pulumi.Output<string>; /** * Specifies an idle timeout in seconds. This setting specifies the number of seconds that a connection is idle before the connection is eligible for deletion.When you specify an idle timeout for the Fast L4 profile, the value must be greater than the bigdb database variable Pva.Scrub time in msec for it to work properly.The default value is 300 seconds. */ readonly idleTimeout: pulumi.Output<string>; /** * Specifies an IP ToS number for the client side. This option specifies the Type of Service level that the traffic management system assigns to IP packets when sending them to clients. The default value is 65535 (pass-through), which indicates, do not modify. */ readonly iptosToclient: pulumi.Output<string>; /** * Specifies an IP ToS number for the server side. This setting specifies the Type of Service level that the traffic management system assigns to IP packets when sending them to servers. The default value is 65535 (pass-through), which indicates, do not modify. */ readonly iptosToserver: pulumi.Output<string>; /** * Specifies the keep alive probe interval, in seconds. The default value is disabled (0 seconds). */ readonly keepaliveInterval: pulumi.Output<string>; /** * Enables intelligent selection of a back-end server or pool, using an iRule to make the selection. The default is `disabled`. */ readonly lateBinding: pulumi.Output<string>; /** * Specifies, when checked (enabled), that the system closes a loosely-initiated connection when the system receives the first FIN packet from either the client or the server. The default is disabled. */ readonly looseClose: pulumi.Output<string>; /** * Specifies, when checked (enabled), that the system initializes a connection when it receives any TCP packet, rather that requiring a SYN packet for connection initiation. The default is disabled. We recommend that if you enable the Loose Initiation option, you also enable the Loose Close option. */ readonly looseInitiation: pulumi.Output<string>; /** * Name of the LTM fastL4 Profile.The full path is the combination of the `partition + name` of the resource (For example `/Common/my-fastl4profile`) or `partition + directory + name` of the resource (example: `/Common/test/my-fastl4profile`) */ readonly name: pulumi.Output<string>; /** * name of partition */ readonly partition: pulumi.Output<string>; /** * Specifies the amount of data the BIG-IP system can accept without acknowledging the server. The default is 0 (zero). */ readonly receiveWindowsize: pulumi.Output<number>; /** * Specifies the acceptable duration for a TCP handshake, that is, the maximum idle time between a client synchronization (SYN) and a client acknowledgment (ACK).The default is `5 seconds`. */ readonly tcpHandshakeTimeout: pulumi.Output<string>; /** * Create a ProfileFastL4 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: ProfileFastL4Args, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering ProfileFastL4 resources. */ export interface ProfileFastL4State { /** * Specifies late binding client timeout in seconds. This setting specifies the number of seconds allowed for a client to transmit enough data to select a server when late binding is enabled. If it expires timeout-recovery mode will dictate what action to take. */ clientTimeout?: pulumi.Input<number>; /** * Specifies the profile that you want to use as the parent profile. Your new profile inherits all settings and values from the parent profile specified. */ defaultsFrom?: pulumi.Input<string>; /** * Enables or disables late binding explicit flow migration that allows iRules to control when flows move from software to hardware. Explicit flow migration is disabled by default hence BIG-IP automatically migrates flows from software to hardware. */ explicitflowMigration?: pulumi.Input<string>; /** * Enables or disables hardware SYN cookie support when PVA10 is present on the system. Note that when you set the hardware syncookie option to enabled, you may also want to set the following bigdb database variables using the "/sys modify db" command, based on your requirements: pva.SynCookies.Full.ConnectionThreshold (default: 500000), pva.SynCookies.Assist.ConnectionThreshold (default: 500000) pva.SynCookies.ClientWindow (default: 0). The default value is disabled. */ hardwareSyncookie?: pulumi.Input<string>; /** * Specifies an idle timeout in seconds. This setting specifies the number of seconds that a connection is idle before the connection is eligible for deletion.When you specify an idle timeout for the Fast L4 profile, the value must be greater than the bigdb database variable Pva.Scrub time in msec for it to work properly.The default value is 300 seconds. */ idleTimeout?: pulumi.Input<string>; /** * Specifies an IP ToS number for the client side. This option specifies the Type of Service level that the traffic management system assigns to IP packets when sending them to clients. The default value is 65535 (pass-through), which indicates, do not modify. */ iptosToclient?: pulumi.Input<string>; /** * Specifies an IP ToS number for the server side. This setting specifies the Type of Service level that the traffic management system assigns to IP packets when sending them to servers. The default value is 65535 (pass-through), which indicates, do not modify. */ iptosToserver?: pulumi.Input<string>; /** * Specifies the keep alive probe interval, in seconds. The default value is disabled (0 seconds). */ keepaliveInterval?: pulumi.Input<string>; /** * Enables intelligent selection of a back-end server or pool, using an iRule to make the selection. The default is `disabled`. */ lateBinding?: pulumi.Input<string>; /** * Specifies, when checked (enabled), that the system closes a loosely-initiated connection when the system receives the first FIN packet from either the client or the server. The default is disabled. */ looseClose?: pulumi.Input<string>; /** * Specifies, when checked (enabled), that the system initializes a connection when it receives any TCP packet, rather that requiring a SYN packet for connection initiation. The default is disabled. We recommend that if you enable the Loose Initiation option, you also enable the Loose Close option. */ looseInitiation?: pulumi.Input<string>; /** * Name of the LTM fastL4 Profile.The full path is the combination of the `partition + name` of the resource (For example `/Common/my-fastl4profile`) or `partition + directory + name` of the resource (example: `/Common/test/my-fastl4profile`) */ name?: pulumi.Input<string>; /** * name of partition */ partition?: pulumi.Input<string>; /** * Specifies the amount of data the BIG-IP system can accept without acknowledging the server. The default is 0 (zero). */ receiveWindowsize?: pulumi.Input<number>; /** * Specifies the acceptable duration for a TCP handshake, that is, the maximum idle time between a client synchronization (SYN) and a client acknowledgment (ACK).The default is `5 seconds`. */ tcpHandshakeTimeout?: pulumi.Input<string>; } /** * The set of arguments for constructing a ProfileFastL4 resource. */ export interface ProfileFastL4Args { /** * Specifies late binding client timeout in seconds. This setting specifies the number of seconds allowed for a client to transmit enough data to select a server when late binding is enabled. If it expires timeout-recovery mode will dictate what action to take. */ clientTimeout?: pulumi.Input<number>; /** * Specifies the profile that you want to use as the parent profile. Your new profile inherits all settings and values from the parent profile specified. */ defaultsFrom?: pulumi.Input<string>; /** * Enables or disables late binding explicit flow migration that allows iRules to control when flows move from software to hardware. Explicit flow migration is disabled by default hence BIG-IP automatically migrates flows from software to hardware. */ explicitflowMigration?: pulumi.Input<string>; /** * Enables or disables hardware SYN cookie support when PVA10 is present on the system. Note that when you set the hardware syncookie option to enabled, you may also want to set the following bigdb database variables using the "/sys modify db" command, based on your requirements: pva.SynCookies.Full.ConnectionThreshold (default: 500000), pva.SynCookies.Assist.ConnectionThreshold (default: 500000) pva.SynCookies.ClientWindow (default: 0). The default value is disabled. */ hardwareSyncookie?: pulumi.Input<string>; /** * Specifies an idle timeout in seconds. This setting specifies the number of seconds that a connection is idle before the connection is eligible for deletion.When you specify an idle timeout for the Fast L4 profile, the value must be greater than the bigdb database variable Pva.Scrub time in msec for it to work properly.The default value is 300 seconds. */ idleTimeout?: pulumi.Input<string>; /** * Specifies an IP ToS number for the client side. This option specifies the Type of Service level that the traffic management system assigns to IP packets when sending them to clients. The default value is 65535 (pass-through), which indicates, do not modify. */ iptosToclient?: pulumi.Input<string>; /** * Specifies an IP ToS number for the server side. This setting specifies the Type of Service level that the traffic management system assigns to IP packets when sending them to servers. The default value is 65535 (pass-through), which indicates, do not modify. */ iptosToserver?: pulumi.Input<string>; /** * Specifies the keep alive probe interval, in seconds. The default value is disabled (0 seconds). */ keepaliveInterval?: pulumi.Input<string>; /** * Enables intelligent selection of a back-end server or pool, using an iRule to make the selection. The default is `disabled`. */ lateBinding?: pulumi.Input<string>; /** * Specifies, when checked (enabled), that the system closes a loosely-initiated connection when the system receives the first FIN packet from either the client or the server. The default is disabled. */ looseClose?: pulumi.Input<string>; /** * Specifies, when checked (enabled), that the system initializes a connection when it receives any TCP packet, rather that requiring a SYN packet for connection initiation. The default is disabled. We recommend that if you enable the Loose Initiation option, you also enable the Loose Close option. */ looseInitiation?: pulumi.Input<string>; /** * Name of the LTM fastL4 Profile.The full path is the combination of the `partition + name` of the resource (For example `/Common/my-fastl4profile`) or `partition + directory + name` of the resource (example: `/Common/test/my-fastl4profile`) */ name: pulumi.Input<string>; /** * name of partition */ partition?: pulumi.Input<string>; /** * Specifies the amount of data the BIG-IP system can accept without acknowledging the server. The default is 0 (zero). */ receiveWindowsize?: pulumi.Input<number>; /** * Specifies the acceptable duration for a TCP handshake, that is, the maximum idle time between a client synchronization (SYN) and a client acknowledgment (ACK).The default is `5 seconds`. */ tcpHandshakeTimeout?: pulumi.Input<string>; }