import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../../types/input"; import * as outputs from "../../types/output"; /** * Creates a node pool for a cluster. */ export declare class NodePool extends pulumi.CustomResource { /** * Get an existing NodePool 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): NodePool; /** * Returns true if the given object is an instance of NodePool. 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 NodePool; /** * Autoscaler configuration for this NodePool. Autoscaler is enabled only if a valid configuration is present. */ readonly autoscaling: pulumi.Output; /** * Enable best effort provisioning for nodes */ readonly bestEffortProvisioning: pulumi.Output; readonly clusterId: pulumi.Output; /** * Which conditions caused the current node pool state. */ readonly conditions: pulumi.Output; /** * The node configuration of the pool. */ readonly config: pulumi.Output; /** * This checksum is computed by the server based on the value of node pool fields, and may be sent on update requests to ensure the client has an up-to-date value before proceeding. */ readonly etag: 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. During the node pool blue-green upgrade operation, the URLs contain both blue and green resources. */ readonly instanceGroupUrls: pulumi.Output; readonly location: 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; /** * Networking configuration for this NodePool. If specified, it overrides the cluster-level defaults. */ readonly networkConfig: pulumi.Output; /** * Specifies the node placement policy. */ readonly placementPolicy: pulumi.Output; /** * [Output only] The pod CIDR block size per node in this node pool. */ readonly podIpv4CidrSize: pulumi.Output; readonly project: pulumi.Output; /** * Specifies the configuration of queued provisioning. */ readonly queuedProvisioning: 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; /** * [Output only] Deprecated. Use conditions instead. Additional information about the current status of this node pool instance, if available. * * @deprecated [Output only] Deprecated. Use conditions instead. Additional information about the current status of this node pool instance, if available. */ readonly statusMessage: pulumi.Output; /** * [Output only] Update info contains relevant information during a node pool update. */ readonly updateInfo: pulumi.Output; /** * Upgrade settings control disruption and speed of the upgrade. */ readonly upgradeSettings: pulumi.Output; /** * The version of Kubernetes running on this NodePool's nodes. If unspecified, it defaults as described [here](https://cloud.google.com/kubernetes-engine/versioning#specifying_node_version). */ readonly version: pulumi.Output; /** * Create a NodePool 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: NodePoolArgs, opts?: pulumi.CustomResourceOptions); } /** * The set of arguments for constructing a NodePool resource. */ export interface NodePoolArgs { /** * Autoscaler configuration for this NodePool. Autoscaler is enabled only if a valid configuration is present. */ autoscaling?: pulumi.Input; /** * Enable best effort provisioning for nodes */ bestEffortProvisioning?: pulumi.Input; /** * Deprecated. The name of the cluster. This field has been deprecated and replaced by the parent field. * * @deprecated Required. Deprecated. The name of the cluster. This field has been deprecated and replaced by the parent field. */ clusterId: pulumi.Input; /** * Which conditions caused the current node pool state. */ conditions?: pulumi.Input[]>; /** * The node configuration of the pool. */ config?: pulumi.Input; /** * This checksum is computed by the server based on the value of node pool fields, and may be sent on update requests to ensure the client has an up-to-date value before proceeding. */ etag?: 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. */ initialNodeCount?: pulumi.Input; location?: 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. */ locations?: pulumi.Input[]>; /** * NodeManagement configuration for this NodePool. */ management?: pulumi.Input; /** * The constraint on the maximum number of pods that can be run simultaneously on a node in the node pool. */ maxPodsConstraint?: pulumi.Input; /** * The name of the node pool. */ name?: pulumi.Input; /** * Networking configuration for this NodePool. If specified, it overrides the cluster-level defaults. */ networkConfig?: pulumi.Input; /** * The parent (project, location, cluster name) where the node pool will be created. Specified in the format `projects/*/locations/*/clusters/*`. */ parent?: pulumi.Input; /** * Specifies the node placement policy. */ placementPolicy?: pulumi.Input; /** * Deprecated. The Google Developers Console [project ID or project number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). This field has been deprecated and replaced by the parent field. * * @deprecated Required. Deprecated. The Google Developers Console [project ID or project number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). This field has been deprecated and replaced by the parent field. */ project?: pulumi.Input; /** * Specifies the configuration of queued provisioning. */ queuedProvisioning?: pulumi.Input; /** * Upgrade settings control disruption and speed of the upgrade. */ upgradeSettings?: pulumi.Input; /** * The version of Kubernetes running on this NodePool's nodes. If unspecified, it defaults as described [here](https://cloud.google.com/kubernetes-engine/versioning#specifying_node_version). */ version?: pulumi.Input; /** * Deprecated. The name of the Google Compute Engine [zone](https://cloud.google.com/compute/docs/zones#available) in which the cluster resides. This field has been deprecated and replaced by the parent field. * * @deprecated Required. Deprecated. The name of the Google Compute Engine [zone](https://cloud.google.com/compute/docs/zones#available) in which the cluster resides. This field has been deprecated and replaced by the parent field. */ zone?: pulumi.Input; }