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

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

/*
 * 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;

/**
 * Common config settings for resources of Compute Engine cluster instances, applicable to all
 * instances in the cluster.
 *
 * 

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 GceClusterConfig extends com.google.api.client.json.GenericJson { /** * Optional. Confidential Instance Config for clusters using Confidential VMs * (https://cloud.google.com/compute/confidential-vm/docs). * The value may be {@code null}. */ @com.google.api.client.util.Key private ConfidentialInstanceConfig confidentialInstanceConfig; /** * Optional. This setting applies to subnetwork-enabled networks. It is set to true by default in * clusters created with image versions 2.2.x.When set to true: All cluster VMs have internal IP * addresses. Google Private Access (https://cloud.google.com/vpc/docs/private-google-access) must * be enabled to access Dataproc and other Google Cloud APIs. Off-cluster dependencies must be * configured to be accessible without external IP addresses.When set to false: Cluster VMs are * not restricted to internal IP addresses. Ephemeral external IP addresses are assigned to each * cluster VM. * The value may be {@code null}. */ @com.google.api.client.util.Key private java.lang.Boolean internalIpOnly; /** * Optional. The Compute Engine metadata entries to add to all instances (see Project and instance * metadata (https://cloud.google.com/compute/docs/storing-retrieving- * metadata#project_and_instance_metadata)). * The value may be {@code null}. */ @com.google.api.client.util.Key private java.util.Map metadata; /** * Optional. The Compute Engine network to be used for machine communications. Cannot be specified * with subnetwork_uri. If neither network_uri nor subnetwork_uri is specified, the "default" * network of the project is used, if it exists. Cannot be a "Custom Subnet Network" (see Using * Subnetworks (https://cloud.google.com/compute/docs/subnetworks) for more information).A full * URL, partial URI, or short name are valid. Examples: * https://www.googleapis.com/compute/v1/projects/[project_id]/global/networks/default * projects/[project_id]/global/networks/default default * The value may be {@code null}. */ @com.google.api.client.util.Key private java.lang.String networkUri; /** * Optional. Node Group Affinity for sole-tenant clusters. * The value may be {@code null}. */ @com.google.api.client.util.Key private NodeGroupAffinity nodeGroupAffinity; /** * Optional. The type of IPv6 access for a cluster. * The value may be {@code null}. */ @com.google.api.client.util.Key private java.lang.String privateIpv6GoogleAccess; /** * Optional. Reservation Affinity for consuming Zonal reservation. * The value may be {@code null}. */ @com.google.api.client.util.Key private ReservationAffinity reservationAffinity; /** * Optional. The Dataproc service account * (https://cloud.google.com/dataproc/docs/concepts/configuring-clusters/service- * accounts#service_accounts_in_dataproc) (also see VM Data Plane identity * (https://cloud.google.com/dataproc/docs/concepts/iam/dataproc- * principals#vm_service_account_data_plane_identity)) used by Dataproc cluster VM instances to * access Google Cloud Platform services.If not specified, the Compute Engine default service * account (https://cloud.google.com/compute/docs/access/service-accounts#default_service_account) * is used. * The value may be {@code null}. */ @com.google.api.client.util.Key private java.lang.String serviceAccount; /** * Optional. The URIs of service account scopes to be included in Compute Engine instances. The * following base set of scopes is always included: * https://www.googleapis.com/auth/cloud.useraccounts.readonly * https://www.googleapis.com/auth/devstorage.read_write * https://www.googleapis.com/auth/logging.writeIf no scopes are specified, the following defaults * are also provided: https://www.googleapis.com/auth/bigquery * https://www.googleapis.com/auth/bigtable.admin.table * https://www.googleapis.com/auth/bigtable.data * https://www.googleapis.com/auth/devstorage.full_control * The value may be {@code null}. */ @com.google.api.client.util.Key private java.util.List serviceAccountScopes; /** * Optional. Shielded Instance Config for clusters using Compute Engine Shielded VMs * (https://cloud.google.com/security/shielded-cloud/shielded-vm). * The value may be {@code null}. */ @com.google.api.client.util.Key private ShieldedInstanceConfig shieldedInstanceConfig; /** * Optional. The Compute Engine subnetwork to be used for machine communications. Cannot be * specified with network_uri.A full URL, partial URI, or short name are valid. Examples: * https://www.googleapis.com/compute/v1/projects/[project_id]/regions/[region]/subnetworks/sub0 * projects/[project_id]/regions/[region]/subnetworks/sub0 sub0 * The value may be {@code null}. */ @com.google.api.client.util.Key private java.lang.String subnetworkUri; /** * The Compute Engine network tags to add to all instances (see Tagging instances * (https://cloud.google.com/vpc/docs/add-remove-network-tags)). * The value may be {@code null}. */ @com.google.api.client.util.Key private java.util.List tags; /** * Optional. The Compute Engine zone where the Dataproc cluster will be located. If omitted, the * service will pick a zone in the cluster's Compute Engine region. On a get request, zone will * always be present.A full URL, partial URI, or short name are valid. Examples: * https://www.googleapis.com/compute/v1/projects/[project_id]/zones/[zone] * projects/[project_id]/zones/[zone] [zone] * The value may be {@code null}. */ @com.google.api.client.util.Key private java.lang.String zoneUri; /** * Optional. Confidential Instance Config for clusters using Confidential VMs * (https://cloud.google.com/compute/confidential-vm/docs). * @return value or {@code null} for none */ public ConfidentialInstanceConfig getConfidentialInstanceConfig() { return confidentialInstanceConfig; } /** * Optional. Confidential Instance Config for clusters using Confidential VMs * (https://cloud.google.com/compute/confidential-vm/docs). * @param confidentialInstanceConfig confidentialInstanceConfig or {@code null} for none */ public GceClusterConfig setConfidentialInstanceConfig(ConfidentialInstanceConfig confidentialInstanceConfig) { this.confidentialInstanceConfig = confidentialInstanceConfig; return this; } /** * Optional. This setting applies to subnetwork-enabled networks. It is set to true by default in * clusters created with image versions 2.2.x.When set to true: All cluster VMs have internal IP * addresses. Google Private Access (https://cloud.google.com/vpc/docs/private-google-access) must * be enabled to access Dataproc and other Google Cloud APIs. Off-cluster dependencies must be * configured to be accessible without external IP addresses.When set to false: Cluster VMs are * not restricted to internal IP addresses. Ephemeral external IP addresses are assigned to each * cluster VM. * @return value or {@code null} for none */ public java.lang.Boolean getInternalIpOnly() { return internalIpOnly; } /** * Optional. This setting applies to subnetwork-enabled networks. It is set to true by default in * clusters created with image versions 2.2.x.When set to true: All cluster VMs have internal IP * addresses. Google Private Access (https://cloud.google.com/vpc/docs/private-google-access) must * be enabled to access Dataproc and other Google Cloud APIs. Off-cluster dependencies must be * configured to be accessible without external IP addresses.When set to false: Cluster VMs are * not restricted to internal IP addresses. Ephemeral external IP addresses are assigned to each * cluster VM. * @param internalIpOnly internalIpOnly or {@code null} for none */ public GceClusterConfig setInternalIpOnly(java.lang.Boolean internalIpOnly) { this.internalIpOnly = internalIpOnly; return this; } /** * Optional. The Compute Engine metadata entries to add to all instances (see Project and instance * metadata (https://cloud.google.com/compute/docs/storing-retrieving- * metadata#project_and_instance_metadata)). * @return value or {@code null} for none */ public java.util.Map getMetadata() { return metadata; } /** * Optional. The Compute Engine metadata entries to add to all instances (see Project and instance * metadata (https://cloud.google.com/compute/docs/storing-retrieving- * metadata#project_and_instance_metadata)). * @param metadata metadata or {@code null} for none */ public GceClusterConfig setMetadata(java.util.Map metadata) { this.metadata = metadata; return this; } /** * Optional. The Compute Engine network to be used for machine communications. Cannot be specified * with subnetwork_uri. If neither network_uri nor subnetwork_uri is specified, the "default" * network of the project is used, if it exists. Cannot be a "Custom Subnet Network" (see Using * Subnetworks (https://cloud.google.com/compute/docs/subnetworks) for more information).A full * URL, partial URI, or short name are valid. Examples: * https://www.googleapis.com/compute/v1/projects/[project_id]/global/networks/default * projects/[project_id]/global/networks/default default * @return value or {@code null} for none */ public java.lang.String getNetworkUri() { return networkUri; } /** * Optional. The Compute Engine network to be used for machine communications. Cannot be specified * with subnetwork_uri. If neither network_uri nor subnetwork_uri is specified, the "default" * network of the project is used, if it exists. Cannot be a "Custom Subnet Network" (see Using * Subnetworks (https://cloud.google.com/compute/docs/subnetworks) for more information).A full * URL, partial URI, or short name are valid. Examples: * https://www.googleapis.com/compute/v1/projects/[project_id]/global/networks/default * projects/[project_id]/global/networks/default default * @param networkUri networkUri or {@code null} for none */ public GceClusterConfig setNetworkUri(java.lang.String networkUri) { this.networkUri = networkUri; return this; } /** * Optional. Node Group Affinity for sole-tenant clusters. * @return value or {@code null} for none */ public NodeGroupAffinity getNodeGroupAffinity() { return nodeGroupAffinity; } /** * Optional. Node Group Affinity for sole-tenant clusters. * @param nodeGroupAffinity nodeGroupAffinity or {@code null} for none */ public GceClusterConfig setNodeGroupAffinity(NodeGroupAffinity nodeGroupAffinity) { this.nodeGroupAffinity = nodeGroupAffinity; return this; } /** * Optional. The type of IPv6 access for a cluster. * @return value or {@code null} for none */ public java.lang.String getPrivateIpv6GoogleAccess() { return privateIpv6GoogleAccess; } /** * Optional. The type of IPv6 access for a cluster. * @param privateIpv6GoogleAccess privateIpv6GoogleAccess or {@code null} for none */ public GceClusterConfig setPrivateIpv6GoogleAccess(java.lang.String privateIpv6GoogleAccess) { this.privateIpv6GoogleAccess = privateIpv6GoogleAccess; return this; } /** * Optional. Reservation Affinity for consuming Zonal reservation. * @return value or {@code null} for none */ public ReservationAffinity getReservationAffinity() { return reservationAffinity; } /** * Optional. Reservation Affinity for consuming Zonal reservation. * @param reservationAffinity reservationAffinity or {@code null} for none */ public GceClusterConfig setReservationAffinity(ReservationAffinity reservationAffinity) { this.reservationAffinity = reservationAffinity; return this; } /** * Optional. The Dataproc service account * (https://cloud.google.com/dataproc/docs/concepts/configuring-clusters/service- * accounts#service_accounts_in_dataproc) (also see VM Data Plane identity * (https://cloud.google.com/dataproc/docs/concepts/iam/dataproc- * principals#vm_service_account_data_plane_identity)) used by Dataproc cluster VM instances to * access Google Cloud Platform services.If not specified, the Compute Engine default service * account (https://cloud.google.com/compute/docs/access/service-accounts#default_service_account) * is used. * @return value or {@code null} for none */ public java.lang.String getServiceAccount() { return serviceAccount; } /** * Optional. The Dataproc service account * (https://cloud.google.com/dataproc/docs/concepts/configuring-clusters/service- * accounts#service_accounts_in_dataproc) (also see VM Data Plane identity * (https://cloud.google.com/dataproc/docs/concepts/iam/dataproc- * principals#vm_service_account_data_plane_identity)) used by Dataproc cluster VM instances to * access Google Cloud Platform services.If not specified, the Compute Engine default service * account (https://cloud.google.com/compute/docs/access/service-accounts#default_service_account) * is used. * @param serviceAccount serviceAccount or {@code null} for none */ public GceClusterConfig setServiceAccount(java.lang.String serviceAccount) { this.serviceAccount = serviceAccount; return this; } /** * Optional. The URIs of service account scopes to be included in Compute Engine instances. The * following base set of scopes is always included: * https://www.googleapis.com/auth/cloud.useraccounts.readonly * https://www.googleapis.com/auth/devstorage.read_write * https://www.googleapis.com/auth/logging.writeIf no scopes are specified, the following defaults * are also provided: https://www.googleapis.com/auth/bigquery * https://www.googleapis.com/auth/bigtable.admin.table * https://www.googleapis.com/auth/bigtable.data * https://www.googleapis.com/auth/devstorage.full_control * @return value or {@code null} for none */ public java.util.List getServiceAccountScopes() { return serviceAccountScopes; } /** * Optional. The URIs of service account scopes to be included in Compute Engine instances. The * following base set of scopes is always included: * https://www.googleapis.com/auth/cloud.useraccounts.readonly * https://www.googleapis.com/auth/devstorage.read_write * https://www.googleapis.com/auth/logging.writeIf no scopes are specified, the following defaults * are also provided: https://www.googleapis.com/auth/bigquery * https://www.googleapis.com/auth/bigtable.admin.table * https://www.googleapis.com/auth/bigtable.data * https://www.googleapis.com/auth/devstorage.full_control * @param serviceAccountScopes serviceAccountScopes or {@code null} for none */ public GceClusterConfig setServiceAccountScopes(java.util.List serviceAccountScopes) { this.serviceAccountScopes = serviceAccountScopes; return this; } /** * Optional. Shielded Instance Config for clusters using Compute Engine Shielded VMs * (https://cloud.google.com/security/shielded-cloud/shielded-vm). * @return value or {@code null} for none */ public ShieldedInstanceConfig getShieldedInstanceConfig() { return shieldedInstanceConfig; } /** * Optional. Shielded Instance Config for clusters using Compute Engine Shielded VMs * (https://cloud.google.com/security/shielded-cloud/shielded-vm). * @param shieldedInstanceConfig shieldedInstanceConfig or {@code null} for none */ public GceClusterConfig setShieldedInstanceConfig(ShieldedInstanceConfig shieldedInstanceConfig) { this.shieldedInstanceConfig = shieldedInstanceConfig; return this; } /** * Optional. The Compute Engine subnetwork to be used for machine communications. Cannot be * specified with network_uri.A full URL, partial URI, or short name are valid. Examples: * https://www.googleapis.com/compute/v1/projects/[project_id]/regions/[region]/subnetworks/sub0 * projects/[project_id]/regions/[region]/subnetworks/sub0 sub0 * @return value or {@code null} for none */ public java.lang.String getSubnetworkUri() { return subnetworkUri; } /** * Optional. The Compute Engine subnetwork to be used for machine communications. Cannot be * specified with network_uri.A full URL, partial URI, or short name are valid. Examples: * https://www.googleapis.com/compute/v1/projects/[project_id]/regions/[region]/subnetworks/sub0 * projects/[project_id]/regions/[region]/subnetworks/sub0 sub0 * @param subnetworkUri subnetworkUri or {@code null} for none */ public GceClusterConfig setSubnetworkUri(java.lang.String subnetworkUri) { this.subnetworkUri = subnetworkUri; return this; } /** * The Compute Engine network tags to add to all instances (see Tagging instances * (https://cloud.google.com/vpc/docs/add-remove-network-tags)). * @return value or {@code null} for none */ public java.util.List getTags() { return tags; } /** * The Compute Engine network tags to add to all instances (see Tagging instances * (https://cloud.google.com/vpc/docs/add-remove-network-tags)). * @param tags tags or {@code null} for none */ public GceClusterConfig setTags(java.util.List tags) { this.tags = tags; return this; } /** * Optional. The Compute Engine zone where the Dataproc cluster will be located. If omitted, the * service will pick a zone in the cluster's Compute Engine region. On a get request, zone will * always be present.A full URL, partial URI, or short name are valid. Examples: * https://www.googleapis.com/compute/v1/projects/[project_id]/zones/[zone] * projects/[project_id]/zones/[zone] [zone] * @return value or {@code null} for none */ public java.lang.String getZoneUri() { return zoneUri; } /** * Optional. The Compute Engine zone where the Dataproc cluster will be located. If omitted, the * service will pick a zone in the cluster's Compute Engine region. On a get request, zone will * always be present.A full URL, partial URI, or short name are valid. Examples: * https://www.googleapis.com/compute/v1/projects/[project_id]/zones/[zone] * projects/[project_id]/zones/[zone] [zone] * @param zoneUri zoneUri or {@code null} for none */ public GceClusterConfig setZoneUri(java.lang.String zoneUri) { this.zoneUri = zoneUri; return this; } @Override public GceClusterConfig set(String fieldName, Object value) { return (GceClusterConfig) super.set(fieldName, value); } @Override public GceClusterConfig clone() { return (GceClusterConfig) super.clone(); } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy