UNPKG

@piclemx/pulumi-opensearch

Version:

A Pulumi package for creating and managing Opensearch resources. Based on terraform-provider-opensearch: version v2.2.1

520 lines (519 loc) 25.3 kB
import * as pulumi from "@pulumi/pulumi"; /** * Manages a cluster's (persistent) settings. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as opensearch from "@piclemx/pulumi-opensearch"; * * const global = new opensearch.ClusterSettings("global", { * actionAutoCreateIndex: "my-index-000001,index10,-index1*,+ind*", * clusterMaxShardsPerNode: 10, * }); * ``` */ export declare class ClusterSettings extends pulumi.CustomResource { /** * Get an existing ClusterSettings 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?: ClusterSettingsState, opts?: pulumi.CustomResourceOptions): ClusterSettings; /** * Returns true if the given object is an instance of ClusterSettings. 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 ClusterSettings; /** * Whether to automatically create an index if it doesn’t already exist and apply any configured index template */ readonly actionAutoCreateIndex: pulumi.Output<string | undefined>; /** * When set to true, you must specify the index name to delete an index and it is not possible to delete all indices with _all or use wildcards */ readonly actionDestructiveRequiresName: pulumi.Output<boolean | undefined>; /** * Make the whole cluster read only and metadata is not allowed to be modified */ readonly clusterBlocksReadOnly: pulumi.Output<boolean | undefined>; /** * Make the whole cluster read only, but allows to delete indices to free up resources */ readonly clusterBlocksReadOnlyAllowDelete: pulumi.Output<boolean | undefined>; /** * If false, you cannot close open indices */ readonly clusterIndicesCloseEnable: pulumi.Output<boolean | undefined>; /** * A time string controlling how often OpenSearch should check on disk usage for each node in the cluster */ readonly clusterInfoUpdateInterval: pulumi.Output<string | undefined>; /** * The total number of primary and replica shards for the cluster, this number is multiplied by the number of non-frozen data nodes; shards for closed indices do not count toward this limit */ readonly clusterMaxShardsPerNode: pulumi.Output<number | undefined>; /** * The total number of primary and replica frozen shards, for the cluster; Ssards for closed indices do not count toward this limit, a cluster with no frozen data nodes is unlimited. */ readonly clusterMaxShardsPerNodeFrozen: pulumi.Output<number | undefined>; /** * Specifies which operations are rejected when there is no active master in a cluster (all, write) */ readonly clusterNoMasterBlock: pulumi.Output<string | undefined>; /** * Whether allocation for persistent tasks is active (all, none) */ readonly clusterPersistentTasksAllocationEnable: pulumi.Output<string | undefined>; /** * A time string controling how often assignment checks are performed to react to whether persistent tasks can be assigned to nodes */ readonly clusterPersistentTasksAllocationRecheckInterval: pulumi.Output<string | undefined>; /** * Specify when shard rebalancing is allowed (always, indices*primaries*active, indices*all*active) */ readonly clusterRoutingAllocationAllowRebalance: pulumi.Output<string | undefined>; /** * Use custom node attributes to take hardware configuration into account when allocating shards */ readonly clusterRoutingAllocationAwarenessAttributes: pulumi.Output<string | undefined>; /** * Weight factor for the number of shards per index allocated on a node, increasing this raises the tendency to equalize the number of shards per index across all nodes */ readonly clusterRoutingAllocationBalanceIndex: pulumi.Output<number | undefined>; /** * Weight factor for the total number of shards allocated on a node, increasing this raises the tendency to equalize the number of shards across all nodes */ readonly clusterRoutingAllocationBalanceShard: pulumi.Output<number | undefined>; /** * Minimal optimization value of operations that should be performed, raising this will cause the cluster to be less aggressive about optimizing the shard balance */ readonly clusterRoutingAllocationBalanceThreshold: pulumi.Output<number | undefined>; /** * How many concurrent shard rebalances are allowed cluster wide */ readonly clusterRoutingAllocationClusterConcurrentRebalance: pulumi.Output<number | undefined>; /** * Whether the allocator will take into account shards that are currently being relocated to the target node when computing a node’s disk usage */ readonly clusterRoutingAllocationDiskIncludeRelocations: pulumi.Output<boolean | undefined>; /** * Whether the disk allocation decider is active */ readonly clusterRoutingAllocationDiskThresholdEnabled: pulumi.Output<boolean | undefined>; /** * Allocator will attempt to relocate shards away from a node whose disk usage is above this percentage disk used */ readonly clusterRoutingAllocationDiskWatermarkHigh: pulumi.Output<string | undefined>; /** * Allocator will not allocate shards to nodes that have more than this percentage disk used */ readonly clusterRoutingAllocationDiskWatermarkLow: pulumi.Output<string | undefined>; /** * Enable or disable allocation for specific kinds of shards (all, primaries, new_primaries, none) */ readonly clusterRoutingAllocationEnable: pulumi.Output<string | undefined>; /** * How many incoming recoveries where the target shard (likely the replica unless a shard is relocating) are allocated on the node */ readonly clusterRoutingAllocationNodeConcurrentIncomingRecoveries: pulumi.Output<number | undefined>; /** * How many outgoing recoveries where the source shard (likely the primary unless a shard is relocating) are allocated on the node */ readonly clusterRoutingAllocationNodeConcurrentOutgoingRecoveries: pulumi.Output<number | undefined>; /** * A shortcut to set both incoming and outgoing recoveries */ readonly clusterRoutingAllocationNodeConcurrentRecoveries: pulumi.Output<number | undefined>; /** * Set a (usually) higher rate for primary recovery on node restart (usually from disk, so fast) */ readonly clusterRoutingAllocationNodeInitialPrimariesRecoveries: pulumi.Output<number | undefined>; /** * Perform a check to prevent allocation of multiple instances of the same shard on a single host, if multiple nodes are started on the host */ readonly clusterRoutingAllocationSameShardHost: pulumi.Output<boolean | undefined>; /** * Maximum number of primary and replica shards allocated to each node */ readonly clusterRoutingAllocationTotalShardsPerNode: pulumi.Output<number | undefined>; /** * Allow rebalancing for specific kinds of shards (all, primaries, replicas, none) */ readonly clusterRoutingRebalanceEnable: pulumi.Output<string | undefined>; /** * The percentage of memory above which if loading a field into the field data cache would cause the cache to exceed this limit, an error is returned */ readonly indicesBreakerFielddataLimit: pulumi.Output<string | undefined>; /** * A constant that all field data estimations are multiplied by */ readonly indicesBreakerFielddataOverhead: pulumi.Output<number | undefined>; /** * The percentabge of memory above which per-request data structures (e.g. calculating aggregations) are prevented from exceeding */ readonly indicesBreakerRequestLimit: pulumi.Output<string | undefined>; /** * A constant that all request estimations are multiplied by */ readonly indicesBreakerRequestOverhead: pulumi.Output<number | undefined>; /** * The percentage of total amount of memory that can be used across all breakers */ readonly indicesBreakerTotalLimit: pulumi.Output<string | undefined>; /** * Maximum total inbound and outbound recovery traffic for each node, in mb */ readonly indicesRecoveryMaxBytesPerSec: pulumi.Output<string | undefined>; /** * The percentage limit of memory usage on a node of all currently active incoming requests on transport or HTTP level */ readonly networkBreakerInflightRequestsLimit: pulumi.Output<string | undefined>; /** * A constant that all in flight requests estimations are multiplied by */ readonly networkBreakerInflightRequestsOverhead: pulumi.Output<number | undefined>; /** * Limit for the number of unique dynamic scripts within a certain interval that are allowed to be compiled, expressed as compilations divided by a time string */ readonly scriptMaxCompilationsRate: pulumi.Output<string | undefined>; /** * A time string setting a cluster-wide default timeout for all search requests */ readonly searchDefaultSearchTimeout: pulumi.Output<string | undefined>; /** * Create a ClusterSettings 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?: ClusterSettingsArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering ClusterSettings resources. */ export interface ClusterSettingsState { /** * Whether to automatically create an index if it doesn’t already exist and apply any configured index template */ actionAutoCreateIndex?: pulumi.Input<string>; /** * When set to true, you must specify the index name to delete an index and it is not possible to delete all indices with _all or use wildcards */ actionDestructiveRequiresName?: pulumi.Input<boolean>; /** * Make the whole cluster read only and metadata is not allowed to be modified */ clusterBlocksReadOnly?: pulumi.Input<boolean>; /** * Make the whole cluster read only, but allows to delete indices to free up resources */ clusterBlocksReadOnlyAllowDelete?: pulumi.Input<boolean>; /** * If false, you cannot close open indices */ clusterIndicesCloseEnable?: pulumi.Input<boolean>; /** * A time string controlling how often OpenSearch should check on disk usage for each node in the cluster */ clusterInfoUpdateInterval?: pulumi.Input<string>; /** * The total number of primary and replica shards for the cluster, this number is multiplied by the number of non-frozen data nodes; shards for closed indices do not count toward this limit */ clusterMaxShardsPerNode?: pulumi.Input<number>; /** * The total number of primary and replica frozen shards, for the cluster; Ssards for closed indices do not count toward this limit, a cluster with no frozen data nodes is unlimited. */ clusterMaxShardsPerNodeFrozen?: pulumi.Input<number>; /** * Specifies which operations are rejected when there is no active master in a cluster (all, write) */ clusterNoMasterBlock?: pulumi.Input<string>; /** * Whether allocation for persistent tasks is active (all, none) */ clusterPersistentTasksAllocationEnable?: pulumi.Input<string>; /** * A time string controling how often assignment checks are performed to react to whether persistent tasks can be assigned to nodes */ clusterPersistentTasksAllocationRecheckInterval?: pulumi.Input<string>; /** * Specify when shard rebalancing is allowed (always, indices*primaries*active, indices*all*active) */ clusterRoutingAllocationAllowRebalance?: pulumi.Input<string>; /** * Use custom node attributes to take hardware configuration into account when allocating shards */ clusterRoutingAllocationAwarenessAttributes?: pulumi.Input<string>; /** * Weight factor for the number of shards per index allocated on a node, increasing this raises the tendency to equalize the number of shards per index across all nodes */ clusterRoutingAllocationBalanceIndex?: pulumi.Input<number>; /** * Weight factor for the total number of shards allocated on a node, increasing this raises the tendency to equalize the number of shards across all nodes */ clusterRoutingAllocationBalanceShard?: pulumi.Input<number>; /** * Minimal optimization value of operations that should be performed, raising this will cause the cluster to be less aggressive about optimizing the shard balance */ clusterRoutingAllocationBalanceThreshold?: pulumi.Input<number>; /** * How many concurrent shard rebalances are allowed cluster wide */ clusterRoutingAllocationClusterConcurrentRebalance?: pulumi.Input<number>; /** * Whether the allocator will take into account shards that are currently being relocated to the target node when computing a node’s disk usage */ clusterRoutingAllocationDiskIncludeRelocations?: pulumi.Input<boolean>; /** * Whether the disk allocation decider is active */ clusterRoutingAllocationDiskThresholdEnabled?: pulumi.Input<boolean>; /** * Allocator will attempt to relocate shards away from a node whose disk usage is above this percentage disk used */ clusterRoutingAllocationDiskWatermarkHigh?: pulumi.Input<string>; /** * Allocator will not allocate shards to nodes that have more than this percentage disk used */ clusterRoutingAllocationDiskWatermarkLow?: pulumi.Input<string>; /** * Enable or disable allocation for specific kinds of shards (all, primaries, new_primaries, none) */ clusterRoutingAllocationEnable?: pulumi.Input<string>; /** * How many incoming recoveries where the target shard (likely the replica unless a shard is relocating) are allocated on the node */ clusterRoutingAllocationNodeConcurrentIncomingRecoveries?: pulumi.Input<number>; /** * How many outgoing recoveries where the source shard (likely the primary unless a shard is relocating) are allocated on the node */ clusterRoutingAllocationNodeConcurrentOutgoingRecoveries?: pulumi.Input<number>; /** * A shortcut to set both incoming and outgoing recoveries */ clusterRoutingAllocationNodeConcurrentRecoveries?: pulumi.Input<number>; /** * Set a (usually) higher rate for primary recovery on node restart (usually from disk, so fast) */ clusterRoutingAllocationNodeInitialPrimariesRecoveries?: pulumi.Input<number>; /** * Perform a check to prevent allocation of multiple instances of the same shard on a single host, if multiple nodes are started on the host */ clusterRoutingAllocationSameShardHost?: pulumi.Input<boolean>; /** * Maximum number of primary and replica shards allocated to each node */ clusterRoutingAllocationTotalShardsPerNode?: pulumi.Input<number>; /** * Allow rebalancing for specific kinds of shards (all, primaries, replicas, none) */ clusterRoutingRebalanceEnable?: pulumi.Input<string>; /** * The percentage of memory above which if loading a field into the field data cache would cause the cache to exceed this limit, an error is returned */ indicesBreakerFielddataLimit?: pulumi.Input<string>; /** * A constant that all field data estimations are multiplied by */ indicesBreakerFielddataOverhead?: pulumi.Input<number>; /** * The percentabge of memory above which per-request data structures (e.g. calculating aggregations) are prevented from exceeding */ indicesBreakerRequestLimit?: pulumi.Input<string>; /** * A constant that all request estimations are multiplied by */ indicesBreakerRequestOverhead?: pulumi.Input<number>; /** * The percentage of total amount of memory that can be used across all breakers */ indicesBreakerTotalLimit?: pulumi.Input<string>; /** * Maximum total inbound and outbound recovery traffic for each node, in mb */ indicesRecoveryMaxBytesPerSec?: pulumi.Input<string>; /** * The percentage limit of memory usage on a node of all currently active incoming requests on transport or HTTP level */ networkBreakerInflightRequestsLimit?: pulumi.Input<string>; /** * A constant that all in flight requests estimations are multiplied by */ networkBreakerInflightRequestsOverhead?: pulumi.Input<number>; /** * Limit for the number of unique dynamic scripts within a certain interval that are allowed to be compiled, expressed as compilations divided by a time string */ scriptMaxCompilationsRate?: pulumi.Input<string>; /** * A time string setting a cluster-wide default timeout for all search requests */ searchDefaultSearchTimeout?: pulumi.Input<string>; } /** * The set of arguments for constructing a ClusterSettings resource. */ export interface ClusterSettingsArgs { /** * Whether to automatically create an index if it doesn’t already exist and apply any configured index template */ actionAutoCreateIndex?: pulumi.Input<string>; /** * When set to true, you must specify the index name to delete an index and it is not possible to delete all indices with _all or use wildcards */ actionDestructiveRequiresName?: pulumi.Input<boolean>; /** * Make the whole cluster read only and metadata is not allowed to be modified */ clusterBlocksReadOnly?: pulumi.Input<boolean>; /** * Make the whole cluster read only, but allows to delete indices to free up resources */ clusterBlocksReadOnlyAllowDelete?: pulumi.Input<boolean>; /** * If false, you cannot close open indices */ clusterIndicesCloseEnable?: pulumi.Input<boolean>; /** * A time string controlling how often OpenSearch should check on disk usage for each node in the cluster */ clusterInfoUpdateInterval?: pulumi.Input<string>; /** * The total number of primary and replica shards for the cluster, this number is multiplied by the number of non-frozen data nodes; shards for closed indices do not count toward this limit */ clusterMaxShardsPerNode?: pulumi.Input<number>; /** * The total number of primary and replica frozen shards, for the cluster; Ssards for closed indices do not count toward this limit, a cluster with no frozen data nodes is unlimited. */ clusterMaxShardsPerNodeFrozen?: pulumi.Input<number>; /** * Specifies which operations are rejected when there is no active master in a cluster (all, write) */ clusterNoMasterBlock?: pulumi.Input<string>; /** * Whether allocation for persistent tasks is active (all, none) */ clusterPersistentTasksAllocationEnable?: pulumi.Input<string>; /** * A time string controling how often assignment checks are performed to react to whether persistent tasks can be assigned to nodes */ clusterPersistentTasksAllocationRecheckInterval?: pulumi.Input<string>; /** * Specify when shard rebalancing is allowed (always, indices*primaries*active, indices*all*active) */ clusterRoutingAllocationAllowRebalance?: pulumi.Input<string>; /** * Use custom node attributes to take hardware configuration into account when allocating shards */ clusterRoutingAllocationAwarenessAttributes?: pulumi.Input<string>; /** * Weight factor for the number of shards per index allocated on a node, increasing this raises the tendency to equalize the number of shards per index across all nodes */ clusterRoutingAllocationBalanceIndex?: pulumi.Input<number>; /** * Weight factor for the total number of shards allocated on a node, increasing this raises the tendency to equalize the number of shards across all nodes */ clusterRoutingAllocationBalanceShard?: pulumi.Input<number>; /** * Minimal optimization value of operations that should be performed, raising this will cause the cluster to be less aggressive about optimizing the shard balance */ clusterRoutingAllocationBalanceThreshold?: pulumi.Input<number>; /** * How many concurrent shard rebalances are allowed cluster wide */ clusterRoutingAllocationClusterConcurrentRebalance?: pulumi.Input<number>; /** * Whether the allocator will take into account shards that are currently being relocated to the target node when computing a node’s disk usage */ clusterRoutingAllocationDiskIncludeRelocations?: pulumi.Input<boolean>; /** * Whether the disk allocation decider is active */ clusterRoutingAllocationDiskThresholdEnabled?: pulumi.Input<boolean>; /** * Allocator will attempt to relocate shards away from a node whose disk usage is above this percentage disk used */ clusterRoutingAllocationDiskWatermarkHigh?: pulumi.Input<string>; /** * Allocator will not allocate shards to nodes that have more than this percentage disk used */ clusterRoutingAllocationDiskWatermarkLow?: pulumi.Input<string>; /** * Enable or disable allocation for specific kinds of shards (all, primaries, new_primaries, none) */ clusterRoutingAllocationEnable?: pulumi.Input<string>; /** * How many incoming recoveries where the target shard (likely the replica unless a shard is relocating) are allocated on the node */ clusterRoutingAllocationNodeConcurrentIncomingRecoveries?: pulumi.Input<number>; /** * How many outgoing recoveries where the source shard (likely the primary unless a shard is relocating) are allocated on the node */ clusterRoutingAllocationNodeConcurrentOutgoingRecoveries?: pulumi.Input<number>; /** * A shortcut to set both incoming and outgoing recoveries */ clusterRoutingAllocationNodeConcurrentRecoveries?: pulumi.Input<number>; /** * Set a (usually) higher rate for primary recovery on node restart (usually from disk, so fast) */ clusterRoutingAllocationNodeInitialPrimariesRecoveries?: pulumi.Input<number>; /** * Perform a check to prevent allocation of multiple instances of the same shard on a single host, if multiple nodes are started on the host */ clusterRoutingAllocationSameShardHost?: pulumi.Input<boolean>; /** * Maximum number of primary and replica shards allocated to each node */ clusterRoutingAllocationTotalShardsPerNode?: pulumi.Input<number>; /** * Allow rebalancing for specific kinds of shards (all, primaries, replicas, none) */ clusterRoutingRebalanceEnable?: pulumi.Input<string>; /** * The percentage of memory above which if loading a field into the field data cache would cause the cache to exceed this limit, an error is returned */ indicesBreakerFielddataLimit?: pulumi.Input<string>; /** * A constant that all field data estimations are multiplied by */ indicesBreakerFielddataOverhead?: pulumi.Input<number>; /** * The percentabge of memory above which per-request data structures (e.g. calculating aggregations) are prevented from exceeding */ indicesBreakerRequestLimit?: pulumi.Input<string>; /** * A constant that all request estimations are multiplied by */ indicesBreakerRequestOverhead?: pulumi.Input<number>; /** * The percentage of total amount of memory that can be used across all breakers */ indicesBreakerTotalLimit?: pulumi.Input<string>; /** * Maximum total inbound and outbound recovery traffic for each node, in mb */ indicesRecoveryMaxBytesPerSec?: pulumi.Input<string>; /** * The percentage limit of memory usage on a node of all currently active incoming requests on transport or HTTP level */ networkBreakerInflightRequestsLimit?: pulumi.Input<string>; /** * A constant that all in flight requests estimations are multiplied by */ networkBreakerInflightRequestsOverhead?: pulumi.Input<number>; /** * Limit for the number of unique dynamic scripts within a certain interval that are allowed to be compiled, expressed as compilations divided by a time string */ scriptMaxCompilationsRate?: pulumi.Input<string>; /** * A time string setting a cluster-wide default timeout for all search requests */ searchDefaultSearchTimeout?: pulumi.Input<string>; }