@pulumi/consul
Version:
A Pulumi package for creating and managing consul resources.
183 lines (182 loc) • 7.19 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
/**
* Provides access to the [Autopilot Configuration](https://www.consul.io/docs/guides/autopilot.html)
* of Consul to automatically manage Consul servers.
*
* It includes to automatically cleanup dead servers, monitor the status of the Raft
* cluster and stable server introduction.
*
* ## Example Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as consul from "@pulumi/consul";
*
* const config = new consul.AutopilotConfig("config", {
* cleanupDeadServers: false,
* lastContactThreshold: "1s",
* maxTrailingLogs: 500,
* });
* ```
*/
export declare class AutopilotConfig extends pulumi.CustomResource {
/**
* Get an existing AutopilotConfig 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?: AutopilotConfigState, opts?: pulumi.CustomResourceOptions): AutopilotConfig;
/**
* Returns true if the given object is an instance of AutopilotConfig. 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 AutopilotConfig;
/**
* Whether to remove failing servers when a
* replacement comes online. Defaults to true.
*/
readonly cleanupDeadServers: pulumi.Output<boolean | undefined>;
/**
* The datacenter to use. This overrides the agent's
* default datacenter and the datacenter in the provider setup.
*/
readonly datacenter: pulumi.Output<string | undefined>;
/**
* Whether to disable [upgrade migrations](https://www.consul.io/docs/guides/autopilot.html#redundancy-zones).
* Defaults to false.
*/
readonly disableUpgradeMigration: pulumi.Output<boolean | undefined>;
/**
* The time after which a server is
* considered as unhealthy and will be removed. Defaults to `"200ms"`.
*/
readonly lastContactThreshold: pulumi.Output<string | undefined>;
/**
* The maximum number of Raft log entries a
* server can trail the leader. Defaults to 250.
*/
readonly maxTrailingLogs: pulumi.Output<number | undefined>;
/**
* The [redundancy zone](https://www.consul.io/docs/guides/autopilot.html#redundancy-zones)
* tag to use. Consul will try to keep one voting server by zone to take advantage
* of isolated failure domains. Defaults to an empty string.
*/
readonly redundancyZoneTag: pulumi.Output<string | undefined>;
/**
* The period to wait for a server to be
* healthy and stable before being promoted to a full, voting member. Defaults to
* `"10s"`.
*/
readonly serverStabilizationTime: pulumi.Output<string | undefined>;
/**
* The tag to override the version information
* used during a migration. Defaults to an empty string.
*/
readonly upgradeVersionTag: pulumi.Output<string | undefined>;
/**
* Create a AutopilotConfig 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?: AutopilotConfigArgs, opts?: pulumi.CustomResourceOptions);
}
/**
* Input properties used for looking up and filtering AutopilotConfig resources.
*/
export interface AutopilotConfigState {
/**
* Whether to remove failing servers when a
* replacement comes online. Defaults to true.
*/
cleanupDeadServers?: pulumi.Input<boolean>;
/**
* The datacenter to use. This overrides the agent's
* default datacenter and the datacenter in the provider setup.
*/
datacenter?: pulumi.Input<string>;
/**
* Whether to disable [upgrade migrations](https://www.consul.io/docs/guides/autopilot.html#redundancy-zones).
* Defaults to false.
*/
disableUpgradeMigration?: pulumi.Input<boolean>;
/**
* The time after which a server is
* considered as unhealthy and will be removed. Defaults to `"200ms"`.
*/
lastContactThreshold?: pulumi.Input<string>;
/**
* The maximum number of Raft log entries a
* server can trail the leader. Defaults to 250.
*/
maxTrailingLogs?: pulumi.Input<number>;
/**
* The [redundancy zone](https://www.consul.io/docs/guides/autopilot.html#redundancy-zones)
* tag to use. Consul will try to keep one voting server by zone to take advantage
* of isolated failure domains. Defaults to an empty string.
*/
redundancyZoneTag?: pulumi.Input<string>;
/**
* The period to wait for a server to be
* healthy and stable before being promoted to a full, voting member. Defaults to
* `"10s"`.
*/
serverStabilizationTime?: pulumi.Input<string>;
/**
* The tag to override the version information
* used during a migration. Defaults to an empty string.
*/
upgradeVersionTag?: pulumi.Input<string>;
}
/**
* The set of arguments for constructing a AutopilotConfig resource.
*/
export interface AutopilotConfigArgs {
/**
* Whether to remove failing servers when a
* replacement comes online. Defaults to true.
*/
cleanupDeadServers?: pulumi.Input<boolean>;
/**
* The datacenter to use. This overrides the agent's
* default datacenter and the datacenter in the provider setup.
*/
datacenter?: pulumi.Input<string>;
/**
* Whether to disable [upgrade migrations](https://www.consul.io/docs/guides/autopilot.html#redundancy-zones).
* Defaults to false.
*/
disableUpgradeMigration?: pulumi.Input<boolean>;
/**
* The time after which a server is
* considered as unhealthy and will be removed. Defaults to `"200ms"`.
*/
lastContactThreshold?: pulumi.Input<string>;
/**
* The maximum number of Raft log entries a
* server can trail the leader. Defaults to 250.
*/
maxTrailingLogs?: pulumi.Input<number>;
/**
* The [redundancy zone](https://www.consul.io/docs/guides/autopilot.html#redundancy-zones)
* tag to use. Consul will try to keep one voting server by zone to take advantage
* of isolated failure domains. Defaults to an empty string.
*/
redundancyZoneTag?: pulumi.Input<string>;
/**
* The period to wait for a server to be
* healthy and stable before being promoted to a full, voting member. Defaults to
* `"10s"`.
*/
serverStabilizationTime?: pulumi.Input<string>;
/**
* The tag to override the version information
* used during a migration. Defaults to an empty string.
*/
upgradeVersionTag?: pulumi.Input<string>;
}