#[non_exhaustive]pub struct GceClusterConfig {Show 13 fields
pub zone_uri: String,
pub network_uri: String,
pub subnetwork_uri: String,
pub internal_ip_only: Option<bool>,
pub private_ipv6_google_access: PrivateIpv6GoogleAccess,
pub service_account: String,
pub service_account_scopes: Vec<String>,
pub tags: Vec<String>,
pub metadata: HashMap<String, String>,
pub reservation_affinity: Option<ReservationAffinity>,
pub node_group_affinity: Option<NodeGroupAffinity>,
pub shielded_instance_config: Option<ShieldedInstanceConfig>,
pub confidential_instance_config: Option<ConfidentialInstanceConfig>,
/* private fields */
}Expand description
Common config settings for resources of Compute Engine cluster instances, applicable to all instances in the cluster.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.zone_uri: StringOptional. 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]
network_uri: StringOptional. 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 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/defaultprojects/[project_id]/global/networks/defaultdefault
subnetwork_uri: StringOptional. 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/sub0projects/[project_id]/regions/[region]/subnetworks/sub0sub0
internal_ip_only: Option<bool>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.
private_ipv6_google_access: PrivateIpv6GoogleAccessOptional. The type of IPv6 access for a cluster.
service_account: StringOptional. The Dataproc service account (also see VM Data Plane identity) used by Dataproc cluster VM instances to access Google Cloud Platform services.
If not specified, the Compute Engine default service account is used.
service_account_scopes: Vec<String>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.write
If no scopes are specified, the following defaults are also provided:
The Compute Engine network tags to add to all instances (see Tagging instances).
metadata: HashMap<String, String>Optional. The Compute Engine metadata entries to add to all instances (see Project and instance metadata).
reservation_affinity: Option<ReservationAffinity>Optional. Reservation Affinity for consuming Zonal reservation.
node_group_affinity: Option<NodeGroupAffinity>Optional. Node Group Affinity for sole-tenant clusters.
shielded_instance_config: Option<ShieldedInstanceConfig>Optional. Shielded Instance Config for clusters using Compute Engine Shielded VMs.
confidential_instance_config: Option<ConfidentialInstanceConfig>Optional. Confidential Instance Config for clusters using Confidential VMs.
Implementations§
Source§impl GceClusterConfig
impl GceClusterConfig
pub fn new() -> Self
Sourcepub fn set_zone_uri<T: Into<String>>(self, v: T) -> Self
pub fn set_zone_uri<T: Into<String>>(self, v: T) -> Self
Sets the value of zone_uri.
Sourcepub fn set_network_uri<T: Into<String>>(self, v: T) -> Self
pub fn set_network_uri<T: Into<String>>(self, v: T) -> Self
Sets the value of network_uri.
Sourcepub fn set_subnetwork_uri<T: Into<String>>(self, v: T) -> Self
pub fn set_subnetwork_uri<T: Into<String>>(self, v: T) -> Self
Sets the value of subnetwork_uri.
Sourcepub fn set_internal_ip_only<T>(self, v: T) -> Self
pub fn set_internal_ip_only<T>(self, v: T) -> Self
Sets the value of internal_ip_only.
Sourcepub fn set_or_clear_internal_ip_only<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_internal_ip_only<T>(self, v: Option<T>) -> Self
Sets or clears the value of internal_ip_only.
Sourcepub fn set_private_ipv6_google_access<T: Into<PrivateIpv6GoogleAccess>>(
self,
v: T,
) -> Self
pub fn set_private_ipv6_google_access<T: Into<PrivateIpv6GoogleAccess>>( self, v: T, ) -> Self
Sets the value of private_ipv6_google_access.
Sourcepub fn set_service_account<T: Into<String>>(self, v: T) -> Self
pub fn set_service_account<T: Into<String>>(self, v: T) -> Self
Sets the value of service_account.
Sourcepub fn set_service_account_scopes<T, V>(self, v: T) -> Self
pub fn set_service_account_scopes<T, V>(self, v: T) -> Self
Sets the value of service_account_scopes.
Sets the value of tags.
Sourcepub fn set_metadata<T, K, V>(self, v: T) -> Self
pub fn set_metadata<T, K, V>(self, v: T) -> Self
Sets the value of metadata.
Sourcepub fn set_reservation_affinity<T>(self, v: T) -> Selfwhere
T: Into<ReservationAffinity>,
pub fn set_reservation_affinity<T>(self, v: T) -> Selfwhere
T: Into<ReservationAffinity>,
Sets the value of reservation_affinity.
Sourcepub fn set_or_clear_reservation_affinity<T>(self, v: Option<T>) -> Selfwhere
T: Into<ReservationAffinity>,
pub fn set_or_clear_reservation_affinity<T>(self, v: Option<T>) -> Selfwhere
T: Into<ReservationAffinity>,
Sets or clears the value of reservation_affinity.
Sourcepub fn set_node_group_affinity<T>(self, v: T) -> Selfwhere
T: Into<NodeGroupAffinity>,
pub fn set_node_group_affinity<T>(self, v: T) -> Selfwhere
T: Into<NodeGroupAffinity>,
Sets the value of node_group_affinity.
Sourcepub fn set_or_clear_node_group_affinity<T>(self, v: Option<T>) -> Selfwhere
T: Into<NodeGroupAffinity>,
pub fn set_or_clear_node_group_affinity<T>(self, v: Option<T>) -> Selfwhere
T: Into<NodeGroupAffinity>,
Sets or clears the value of node_group_affinity.
Sourcepub fn set_shielded_instance_config<T>(self, v: T) -> Selfwhere
T: Into<ShieldedInstanceConfig>,
pub fn set_shielded_instance_config<T>(self, v: T) -> Selfwhere
T: Into<ShieldedInstanceConfig>,
Sets the value of shielded_instance_config.
Sourcepub fn set_or_clear_shielded_instance_config<T>(self, v: Option<T>) -> Selfwhere
T: Into<ShieldedInstanceConfig>,
pub fn set_or_clear_shielded_instance_config<T>(self, v: Option<T>) -> Selfwhere
T: Into<ShieldedInstanceConfig>,
Sets or clears the value of shielded_instance_config.
Sourcepub fn set_confidential_instance_config<T>(self, v: T) -> Selfwhere
T: Into<ConfidentialInstanceConfig>,
pub fn set_confidential_instance_config<T>(self, v: T) -> Selfwhere
T: Into<ConfidentialInstanceConfig>,
Sets the value of confidential_instance_config.
Sourcepub fn set_or_clear_confidential_instance_config<T>(self, v: Option<T>) -> Selfwhere
T: Into<ConfidentialInstanceConfig>,
pub fn set_or_clear_confidential_instance_config<T>(self, v: Option<T>) -> Selfwhere
T: Into<ConfidentialInstanceConfig>,
Sets or clears the value of confidential_instance_config.
Trait Implementations§
Source§impl Clone for GceClusterConfig
impl Clone for GceClusterConfig
Source§fn clone(&self) -> GceClusterConfig
fn clone(&self) -> GceClusterConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more