import * as pulumi from "@pulumi/pulumi"; import { input as inputs, output as outputs } from "../../types"; /** * Creates a node pool for a cluster. */ export declare class ClusterNodePool extends pulumi.CustomResource { /** * Get an existing ClusterNodePool 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 opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): ClusterNodePool; /** * Returns true if the given object is an instance of ClusterNodePool. 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 ClusterNodePool; /** * Autoscaler configuration for this NodePool. Autoscaler is enabled only if a valid configuration is present. */ readonly autoscaling: pulumi.Output; /** * Which conditions caused the current node pool state. */ readonly conditions: pulumi.Output; /** * The node configuration of the pool. */ readonly config: pulumi.Output; /** * The initial node count for the pool. You must ensure that your Compute Engine [resource quota](https://cloud.google.com/compute/quotas) is sufficient for this number of instances. You must also have available firewall and routes quota. */ readonly initialNodeCount: pulumi.Output; /** * [Output only] The resource URLs of the [managed instance groups](https://cloud.google.com/compute/docs/instance-groups/creating-groups-of-managed-instances) associated with this node pool. */ readonly instanceGroupUrls: pulumi.Output; /** * The list of Google Compute Engine [zones](https://cloud.google.com/compute/docs/zones#available) in which the NodePool's nodes should be located. If this value is unspecified during node pool creation, the [Cluster.Locations](https://cloud.google.com/kubernetes-engine/docs/reference/rest/v1/projects.locations.clusters#Cluster.FIELDS.locations) value will be used, instead. Warning: changing node pool locations will result in nodes being added and/or removed. */ readonly locations: pulumi.Output; /** * NodeManagement configuration for this NodePool. */ readonly management: pulumi.Output; /** * The constraint on the maximum number of pods that can be run simultaneously on a node in the node pool. */ readonly maxPodsConstraint: pulumi.Output; /** * The name of the node pool. */ readonly name: pulumi.Output; /** * [Output only] The pod CIDR block size per node in this node pool. */ readonly podIpv4CidrSize: pulumi.Output; /** * [Output only] Server-defined URL for the resource. */ readonly selfLink: pulumi.Output; /** * [Output only] The status of the nodes in this pool instance. */ readonly status: pulumi.Output; /** * Upgrade settings control disruption and speed of the upgrade. */ readonly upgradeSettings: pulumi.Output; /** * The version of the Kubernetes of this node. */ readonly version: pulumi.Output; /** * Create a ClusterNodePool 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: ClusterNodePoolArgs, opts?: pulumi.CustomResourceOptions); } /** * The set of arguments for constructing a ClusterNodePool resource. */ export interface ClusterNodePoolArgs { /** * Autoscaler configuration for this NodePool. Autoscaler is enabled only if a valid configuration is present. */ readonly autoscaling?: pulumi.Input; readonly clustersId: pulumi.Input; /** * Which conditions caused the current node pool state. */ readonly conditions?: pulumi.Input[]>; /** * The node configuration of the pool. */ readonly config?: pulumi.Input; /** * The initial node count for the pool. You must ensure that your Compute Engine [resource quota](https://cloud.google.com/compute/quotas) is sufficient for this number of instances. You must also have available firewall and routes quota. */ readonly initialNodeCount?: pulumi.Input; /** * [Output only] The resource URLs of the [managed instance groups](https://cloud.google.com/compute/docs/instance-groups/creating-groups-of-managed-instances) associated with this node pool. */ readonly instanceGroupUrls?: pulumi.Input[]>; /** * The list of Google Compute Engine [zones](https://cloud.google.com/compute/docs/zones#available) in which the NodePool's nodes should be located. If this value is unspecified during node pool creation, the [Cluster.Locations](https://cloud.google.com/kubernetes-engine/docs/reference/rest/v1/projects.locations.clusters#Cluster.FIELDS.locations) value will be used, instead. Warning: changing node pool locations will result in nodes being added and/or removed. */ readonly locations?: pulumi.Input[]>; readonly locationsId: pulumi.Input; /** * NodeManagement configuration for this NodePool. */ readonly management?: pulumi.Input; /** * The constraint on the maximum number of pods that can be run simultaneously on a node in the node pool. */ readonly maxPodsConstraint?: pulumi.Input; /** * The name of the node pool. */ readonly name?: pulumi.Input; readonly nodePoolsId: pulumi.Input; /** * The parent (project, location, cluster id) where the node pool will be created. Specified in the format `projects/*/locations/*/clusters/*`. */ readonly parent?: pulumi.Input; /** * [Output only] The pod CIDR block size per node in this node pool. */ readonly podIpv4CidrSize?: pulumi.Input; readonly projectsId: pulumi.Input; /** * [Output only] Server-defined URL for the resource. */ readonly selfLink?: pulumi.Input; /** * [Output only] The status of the nodes in this pool instance. */ readonly status?: pulumi.Input; /** * Upgrade settings control disruption and speed of the upgrade. */ readonly upgradeSettings?: pulumi.Input; /** * The version of the Kubernetes of this node. */ readonly version?: pulumi.Input; }