All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pulumi.gcp.bigtable.kotlin.outputs.InstanceClusterAutoscalingConfig.kt Maven / Gradle / Ivy

Go to download

Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.

There is a newer version: 8.10.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.gcp.bigtable.kotlin.outputs

import kotlin.Int
import kotlin.Suppress

/**
 *
 * @property cpuTarget The target CPU utilization for autoscaling, in percentage. Must be between 10 and 80.
 * @property maxNodes The maximum number of nodes for autoscaling.
 * @property minNodes The minimum number of nodes for autoscaling.
 * @property storageTarget The target storage utilization for autoscaling, in GB, for each node in a cluster. This number is limited between 2560 (2.5TiB) and 5120 (5TiB) for a SSD cluster and between 8192 (8TiB) and 16384 (16 TiB) for an HDD cluster. If not set, whatever is already set for the cluster will not change, or if the cluster is just being created, it will use the default value of 2560 for SSD clusters and 8192 for HDD clusters.
 * !> **Warning**: Only one of `autoscaling_config` or `num_nodes` should be set for a cluster. If both are set, `num_nodes` is ignored. If none is set, autoscaling will be disabled and sized to the current node count.
 */
public data class InstanceClusterAutoscalingConfig(
    public val cpuTarget: Int,
    public val maxNodes: Int,
    public val minNodes: Int,
    public val storageTarget: Int? = null,
) {
    public companion object {
        public fun toKotlin(javaType: com.pulumi.gcp.bigtable.outputs.InstanceClusterAutoscalingConfig): InstanceClusterAutoscalingConfig = InstanceClusterAutoscalingConfig(
            cpuTarget = javaType.cpuTarget(),
            maxNodes = javaType.maxNodes(),
            minNodes = javaType.minNodes(),
            storageTarget = javaType.storageTarget().map({ args0 -> args0 }).orElse(null),
        )
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy