import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; /** * This resource provides the Auto Scaling Configuration resource in Oracle Cloud Infrastructure Big Data Service service. * Api doc link for the resource: https://docs.oracle.com/iaas/api/#/en/bigdata/latest/AutoScalingConfiguration * * Example terraform configs related to the resource : https://github.com/oracle/terraform-provider-oci/tree/master/examples/big_data_service * * Add an autoscale configuration to the cluster. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as oci from "@pulumi/oci"; * * const testAutoScalingConfiguration = new oci.bigdataservice.AutoScalingConfiguration("test_auto_scaling_configuration", { * bdsInstanceId: testBdsInstance.id, * isEnabled: autoScalingConfigurationIsEnabled === "true", * nodeType: autoScalingConfigurationNodeType, * clusterAdminPassword: autoScalingConfigurationClusterAdminPassword, * displayName: autoScalingConfigurationDisplayName, * policyDetails: { * policyType: autoScalingConfigurationPolicyDetailsPolicyType, * scaleDownConfig: { * memoryStepSize: Number(autoScalingConfigurationPolicyDetailsScaleDownConfigMemoryStepSize), * metric: { * metricType: autoScalingConfigurationPolicyDetailsScaleDownConfigMetricMetricType, * threshold: { * durationInMinutes: Number(autoScalingConfigurationPolicyDetailsScaleDownConfigMetricThresholdDurationInMinutes), * operator: autoScalingConfigurationPolicyDetailsScaleDownConfigMetricThresholdOperator, * value: Number(autoScalingConfigurationPolicyDetailsScaleDownConfigMetricThresholdValue), * }, * }, * minMemoryPerNode: Number(autoScalingConfigurationPolicyDetailsScaleDownConfigMinMemoryPerNode), * minOcpusPerNode: Number(autoScalingConfigurationPolicyDetailsScaleDownConfigMinOcpusPerNode), * ocpuStepSize: Number(autoScalingConfigurationPolicyDetailsScaleDownConfigOcpuStepSize), * }, * scaleUpConfig: { * maxMemoryPerNode: Number(autoScalingConfigurationPolicyDetailsScaleUpConfigMaxMemoryPerNode), * maxOcpusPerNode: Number(autoScalingConfigurationPolicyDetailsScaleUpConfigMaxOcpusPerNode), * memoryStepSize: Number(autoScalingConfigurationPolicyDetailsScaleUpConfigMemoryStepSize), * metric: { * metricType: autoScalingConfigurationPolicyDetailsScaleUpConfigMetricMetricType, * threshold: { * durationInMinutes: Number(autoScalingConfigurationPolicyDetailsScaleUpConfigMetricThresholdDurationInMinutes), * operator: autoScalingConfigurationPolicyDetailsScaleUpConfigMetricThresholdOperator, * value: Number(autoScalingConfigurationPolicyDetailsScaleUpConfigMetricThresholdValue), * }, * }, * ocpuStepSize: Number(autoScalingConfigurationPolicyDetailsScaleUpConfigOcpuStepSize), * }, * }, * secretId: testSecret.id, * }); * ``` * * ## Import * * AutoScalingConfiguration can be imported using the `id`, e.g. * * ```sh * $ pulumi import oci:BigDataService/autoScalingConfiguration:AutoScalingConfiguration test_auto_scaling_configuration "bdsInstances/{bdsInstanceId}/autoScalingConfiguration/{autoScalingConfigurationId}" * ``` */ export declare class AutoScalingConfiguration extends pulumi.CustomResource { /** * Get an existing AutoScalingConfiguration 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?: AutoScalingConfigurationState, opts?: pulumi.CustomResourceOptions): AutoScalingConfiguration; /** * Returns true if the given object is an instance of AutoScalingConfiguration. 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 AutoScalingConfiguration; /** * The OCID of the cluster. */ readonly bdsInstanceId: pulumi.Output; /** * (Updatable) Base-64 encoded password for the cluster (and Cloudera Manager) admin user. */ readonly clusterAdminPassword: pulumi.Output; /** * (Updatable) A user-friendly name. The name does not have to be unique, and it may be changed. Avoid entering confidential information. */ readonly displayName: pulumi.Output; /** * (Updatable) Whether the autoscale configuration is enabled. */ readonly isEnabled: pulumi.Output; /** * A node type that is managed by an autoscale configuration. The only supported types are WORKER, COMPUTE_ONLY_WORKER and KAFKA_BROKER. */ readonly nodeType: pulumi.Output; /** * (Updatable) This model for autoscaling policy is deprecated and not supported for ODH clusters. Use the `AutoScalePolicyDetails` model to manage autoscale policy details for ODH clusters. */ readonly policy: pulumi.Output; /** * (Updatable) Policy definition for the autoscale configuration. * * An autoscaling policy is part of an autoscaling configuration. For more information, see [Autoscaling](https://docs.cloud.oracle.com/iaas/Content/bigdata/create-cluster.htm#cluster-autoscale) * * You can create following type of autoscaling policies: * * **MetricBasedVerticalScalingPolicy:** Vertical autoscaling action is triggered when a performance metric exceeds a threshold * * **MetricBasedHorizontalScalingPolicy:** Horizontal autoscaling action is triggered when a performance metric exceeds a threshold * * **ScheduleBasedVerticalScalingPolicy:** Vertical autoscaling action is triggered at the specific times that you schedule. * * **ScheduleBasedHorizontalScalingPolicy:** Horizontal autoscaling action is triggered at the specific times that you schedule. * * An autoscaling configuration can have one of above supported policies. */ readonly policyDetails: pulumi.Output; /** * (Updatable) The secretId for the clusterAdminPassword. * * ** 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 secretId: pulumi.Output; /** * The state of the autoscale configuration. */ readonly state: pulumi.Output; /** * The time the cluster was created, shown as an RFC 3339 formatted datetime string. */ readonly timeCreated: pulumi.Output; /** * The time the autoscale configuration was updated, shown as an RFC 3339 formatted datetime string. */ readonly timeUpdated: pulumi.Output; /** * Create a AutoScalingConfiguration 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: AutoScalingConfigurationArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering AutoScalingConfiguration resources. */ export interface AutoScalingConfigurationState { /** * The OCID of the cluster. */ bdsInstanceId?: pulumi.Input; /** * (Updatable) Base-64 encoded password for the cluster (and Cloudera Manager) admin user. */ clusterAdminPassword?: pulumi.Input; /** * (Updatable) A user-friendly name. The name does not have to be unique, and it may be changed. Avoid entering confidential information. */ displayName?: pulumi.Input; /** * (Updatable) Whether the autoscale configuration is enabled. */ isEnabled?: pulumi.Input; /** * A node type that is managed by an autoscale configuration. The only supported types are WORKER, COMPUTE_ONLY_WORKER and KAFKA_BROKER. */ nodeType?: pulumi.Input; /** * (Updatable) This model for autoscaling policy is deprecated and not supported for ODH clusters. Use the `AutoScalePolicyDetails` model to manage autoscale policy details for ODH clusters. */ policy?: pulumi.Input; /** * (Updatable) Policy definition for the autoscale configuration. * * An autoscaling policy is part of an autoscaling configuration. For more information, see [Autoscaling](https://docs.cloud.oracle.com/iaas/Content/bigdata/create-cluster.htm#cluster-autoscale) * * You can create following type of autoscaling policies: * * **MetricBasedVerticalScalingPolicy:** Vertical autoscaling action is triggered when a performance metric exceeds a threshold * * **MetricBasedHorizontalScalingPolicy:** Horizontal autoscaling action is triggered when a performance metric exceeds a threshold * * **ScheduleBasedVerticalScalingPolicy:** Vertical autoscaling action is triggered at the specific times that you schedule. * * **ScheduleBasedHorizontalScalingPolicy:** Horizontal autoscaling action is triggered at the specific times that you schedule. * * An autoscaling configuration can have one of above supported policies. */ policyDetails?: pulumi.Input; /** * (Updatable) The secretId for the clusterAdminPassword. * * ** 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 */ secretId?: pulumi.Input; /** * The state of the autoscale configuration. */ state?: pulumi.Input; /** * The time the cluster was created, shown as an RFC 3339 formatted datetime string. */ timeCreated?: pulumi.Input; /** * The time the autoscale configuration was updated, shown as an RFC 3339 formatted datetime string. */ timeUpdated?: pulumi.Input; } /** * The set of arguments for constructing a AutoScalingConfiguration resource. */ export interface AutoScalingConfigurationArgs { /** * The OCID of the cluster. */ bdsInstanceId: pulumi.Input; /** * (Updatable) Base-64 encoded password for the cluster (and Cloudera Manager) admin user. */ clusterAdminPassword?: pulumi.Input; /** * (Updatable) A user-friendly name. The name does not have to be unique, and it may be changed. Avoid entering confidential information. */ displayName?: pulumi.Input; /** * (Updatable) Whether the autoscale configuration is enabled. */ isEnabled: pulumi.Input; /** * A node type that is managed by an autoscale configuration. The only supported types are WORKER, COMPUTE_ONLY_WORKER and KAFKA_BROKER. */ nodeType: pulumi.Input; /** * (Updatable) This model for autoscaling policy is deprecated and not supported for ODH clusters. Use the `AutoScalePolicyDetails` model to manage autoscale policy details for ODH clusters. */ policy?: pulumi.Input; /** * (Updatable) Policy definition for the autoscale configuration. * * An autoscaling policy is part of an autoscaling configuration. For more information, see [Autoscaling](https://docs.cloud.oracle.com/iaas/Content/bigdata/create-cluster.htm#cluster-autoscale) * * You can create following type of autoscaling policies: * * **MetricBasedVerticalScalingPolicy:** Vertical autoscaling action is triggered when a performance metric exceeds a threshold * * **MetricBasedHorizontalScalingPolicy:** Horizontal autoscaling action is triggered when a performance metric exceeds a threshold * * **ScheduleBasedVerticalScalingPolicy:** Vertical autoscaling action is triggered at the specific times that you schedule. * * **ScheduleBasedHorizontalScalingPolicy:** Horizontal autoscaling action is triggered at the specific times that you schedule. * * An autoscaling configuration can have one of above supported policies. */ policyDetails?: pulumi.Input; /** * (Updatable) The secretId for the clusterAdminPassword. * * ** 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 */ secretId?: pulumi.Input; } //# sourceMappingURL=autoScalingConfiguration.d.ts.map