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

com.google.api.services.dataproc.model.GkeNodeConfig Maven / Gradle / Ivy

There is a newer version: v1-rev20250111-2.0.0
Show newest version
/*
 * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
 * in compliance with the License. You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software distributed under the License
 * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
 * or implied. See the License for the specific language governing permissions and limitations under
 * the License.
 */
/*
 * This code was generated by https://github.com/googleapis/google-api-java-client-services/
 * Modify at your own risk.
 */

package com.google.api.services.dataproc.model;

/**
 * Parameters that describe cluster nodes.
 *
 * 

This is the Java data model class that specifies how to parse/serialize into the JSON that is * transmitted over HTTP when working with the Cloud Dataproc API. For a detailed explanation see: * https://developers.google.com/api-client-library/java/google-http-java-client/json *

* * @author Google, Inc. */ @SuppressWarnings("javadoc") public final class GkeNodeConfig extends com.google.api.client.json.GenericJson { /** * Optional. A list of hardware accelerators (https://cloud.google.com/compute/docs/gpus) to * attach to each node. * The value may be {@code null}. */ @com.google.api.client.util.Key private java.util.List accelerators; /** * Optional. The Customer Managed Encryption Key (CMEK) (https://cloud.google.com/kubernetes- * engine/docs/how-to/using-cmek) used to encrypt the boot disk attached to each node in the node * pool. Specify the key using the following format: * projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{crypto_key} * The value may be {@code null}. */ @com.google.api.client.util.Key private java.lang.String bootDiskKmsKey; /** * Optional. The number of local SSD disks to attach to the node, which is limited by the maximum * number of disks allowable per zone (see Adding Local SSDs * (https://cloud.google.com/compute/docs/disks/local-ssd)). * The value may be {@code null}. */ @com.google.api.client.util.Key private java.lang.Integer localSsdCount; /** * Optional. The name of a Compute Engine machine type * (https://cloud.google.com/compute/docs/machine-types). * The value may be {@code null}. */ @com.google.api.client.util.Key private java.lang.String machineType; /** * Optional. Minimum CPU platform (https://cloud.google.com/compute/docs/instances/specify-min- * cpu-platform) to be used by this instance. The instance may be scheduled on the specified or a * newer CPU platform. Specify the friendly names of CPU platforms, such as "Intel Haswell"` or * Intel Sandy Bridge". * The value may be {@code null}. */ @com.google.api.client.util.Key private java.lang.String minCpuPlatform; /** * Optional. Whether the nodes are created as legacy preemptible VM instances * (https://cloud.google.com/compute/docs/instances/preemptible). Also see Spot VMs, preemptible * VM instances without a maximum lifetime. Legacy and Spot preemptible nodes cannot be used in a * node pool with the CONTROLLER role or in the DEFAULT node pool if the CONTROLLER role is not * assigned (the DEFAULT node pool will assume the CONTROLLER role). * The value may be {@code null}. */ @com.google.api.client.util.Key private java.lang.Boolean preemptible; /** * Optional. Whether the nodes are created as Spot VM instances * (https://cloud.google.com/compute/docs/instances/spot). Spot VMs are the latest update to * legacy preemptible VMs. Spot VMs do not have a maximum lifetime. Legacy and Spot preemptible * nodes cannot be used in a node pool with the CONTROLLER role or in the DEFAULT node pool if the * CONTROLLER role is not assigned (the DEFAULT node pool will assume the CONTROLLER role). * The value may be {@code null}. */ @com.google.api.client.util.Key private java.lang.Boolean spot; /** * Optional. A list of hardware accelerators (https://cloud.google.com/compute/docs/gpus) to * attach to each node. * @return value or {@code null} for none */ public java.util.List getAccelerators() { return accelerators; } /** * Optional. A list of hardware accelerators (https://cloud.google.com/compute/docs/gpus) to * attach to each node. * @param accelerators accelerators or {@code null} for none */ public GkeNodeConfig setAccelerators(java.util.List accelerators) { this.accelerators = accelerators; return this; } /** * Optional. The Customer Managed Encryption Key (CMEK) (https://cloud.google.com/kubernetes- * engine/docs/how-to/using-cmek) used to encrypt the boot disk attached to each node in the node * pool. Specify the key using the following format: * projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{crypto_key} * @return value or {@code null} for none */ public java.lang.String getBootDiskKmsKey() { return bootDiskKmsKey; } /** * Optional. The Customer Managed Encryption Key (CMEK) (https://cloud.google.com/kubernetes- * engine/docs/how-to/using-cmek) used to encrypt the boot disk attached to each node in the node * pool. Specify the key using the following format: * projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{crypto_key} * @param bootDiskKmsKey bootDiskKmsKey or {@code null} for none */ public GkeNodeConfig setBootDiskKmsKey(java.lang.String bootDiskKmsKey) { this.bootDiskKmsKey = bootDiskKmsKey; return this; } /** * Optional. The number of local SSD disks to attach to the node, which is limited by the maximum * number of disks allowable per zone (see Adding Local SSDs * (https://cloud.google.com/compute/docs/disks/local-ssd)). * @return value or {@code null} for none */ public java.lang.Integer getLocalSsdCount() { return localSsdCount; } /** * Optional. The number of local SSD disks to attach to the node, which is limited by the maximum * number of disks allowable per zone (see Adding Local SSDs * (https://cloud.google.com/compute/docs/disks/local-ssd)). * @param localSsdCount localSsdCount or {@code null} for none */ public GkeNodeConfig setLocalSsdCount(java.lang.Integer localSsdCount) { this.localSsdCount = localSsdCount; return this; } /** * Optional. The name of a Compute Engine machine type * (https://cloud.google.com/compute/docs/machine-types). * @return value or {@code null} for none */ public java.lang.String getMachineType() { return machineType; } /** * Optional. The name of a Compute Engine machine type * (https://cloud.google.com/compute/docs/machine-types). * @param machineType machineType or {@code null} for none */ public GkeNodeConfig setMachineType(java.lang.String machineType) { this.machineType = machineType; return this; } /** * Optional. Minimum CPU platform (https://cloud.google.com/compute/docs/instances/specify-min- * cpu-platform) to be used by this instance. The instance may be scheduled on the specified or a * newer CPU platform. Specify the friendly names of CPU platforms, such as "Intel Haswell"` or * Intel Sandy Bridge". * @return value or {@code null} for none */ public java.lang.String getMinCpuPlatform() { return minCpuPlatform; } /** * Optional. Minimum CPU platform (https://cloud.google.com/compute/docs/instances/specify-min- * cpu-platform) to be used by this instance. The instance may be scheduled on the specified or a * newer CPU platform. Specify the friendly names of CPU platforms, such as "Intel Haswell"` or * Intel Sandy Bridge". * @param minCpuPlatform minCpuPlatform or {@code null} for none */ public GkeNodeConfig setMinCpuPlatform(java.lang.String minCpuPlatform) { this.minCpuPlatform = minCpuPlatform; return this; } /** * Optional. Whether the nodes are created as legacy preemptible VM instances * (https://cloud.google.com/compute/docs/instances/preemptible). Also see Spot VMs, preemptible * VM instances without a maximum lifetime. Legacy and Spot preemptible nodes cannot be used in a * node pool with the CONTROLLER role or in the DEFAULT node pool if the CONTROLLER role is not * assigned (the DEFAULT node pool will assume the CONTROLLER role). * @return value or {@code null} for none */ public java.lang.Boolean getPreemptible() { return preemptible; } /** * Optional. Whether the nodes are created as legacy preemptible VM instances * (https://cloud.google.com/compute/docs/instances/preemptible). Also see Spot VMs, preemptible * VM instances without a maximum lifetime. Legacy and Spot preemptible nodes cannot be used in a * node pool with the CONTROLLER role or in the DEFAULT node pool if the CONTROLLER role is not * assigned (the DEFAULT node pool will assume the CONTROLLER role). * @param preemptible preemptible or {@code null} for none */ public GkeNodeConfig setPreemptible(java.lang.Boolean preemptible) { this.preemptible = preemptible; return this; } /** * Optional. Whether the nodes are created as Spot VM instances * (https://cloud.google.com/compute/docs/instances/spot). Spot VMs are the latest update to * legacy preemptible VMs. Spot VMs do not have a maximum lifetime. Legacy and Spot preemptible * nodes cannot be used in a node pool with the CONTROLLER role or in the DEFAULT node pool if the * CONTROLLER role is not assigned (the DEFAULT node pool will assume the CONTROLLER role). * @return value or {@code null} for none */ public java.lang.Boolean getSpot() { return spot; } /** * Optional. Whether the nodes are created as Spot VM instances * (https://cloud.google.com/compute/docs/instances/spot). Spot VMs are the latest update to * legacy preemptible VMs. Spot VMs do not have a maximum lifetime. Legacy and Spot preemptible * nodes cannot be used in a node pool with the CONTROLLER role or in the DEFAULT node pool if the * CONTROLLER role is not assigned (the DEFAULT node pool will assume the CONTROLLER role). * @param spot spot or {@code null} for none */ public GkeNodeConfig setSpot(java.lang.Boolean spot) { this.spot = spot; return this; } @Override public GkeNodeConfig set(String fieldName, Object value) { return (GkeNodeConfig) super.set(fieldName, value); } @Override public GkeNodeConfig clone() { return (GkeNodeConfig) super.clone(); } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy