Struct google_api_proto::google::cloud::dataproc::v1::InstanceGroupConfig
source · pub struct InstanceGroupConfig {Show 14 fields
pub num_instances: i32,
pub instance_names: Vec<String>,
pub instance_references: Vec<InstanceReference>,
pub image_uri: String,
pub machine_type_uri: String,
pub disk_config: Option<DiskConfig>,
pub is_preemptible: bool,
pub preemptibility: i32,
pub managed_group_config: Option<ManagedGroupConfig>,
pub accelerators: Vec<AcceleratorConfig>,
pub min_cpu_platform: String,
pub min_num_instances: i32,
pub instance_flexibility_policy: Option<InstanceFlexibilityPolicy>,
pub startup_config: Option<StartupConfig>,
}
Expand description
The config settings for Compute Engine resources in an instance group, such as a master or worker group.
Fields§
§num_instances: i32
Optional. The number of VM instances in the instance group. For HA cluster master_config groups, must be set to 3. For standard cluster master_config groups, must be set to 1.
instance_names: Vec<String>
Output only. The list of instance names. Dataproc derives the names
from cluster_name
, num_instances
, and the instance group.
instance_references: Vec<InstanceReference>
Output only. List of references to Compute Engine instances.
image_uri: String
Optional. The Compute Engine image resource used for cluster instances.
The URI can represent an image or image family.
Image examples:
<https://www.googleapis.com/compute/v1/projects/\[project_id\]/global/images/\[image-id\]
>projects/\[project_id\]/global/images/\[image-id\]
image-id
Image family examples. Dataproc will use the most recent image from the family:
<https://www.googleapis.com/compute/v1/projects/\[project_id\]/global/images/family/\[custom-image-family-name\]
>projects/\[project_id\]/global/images/family/\[custom-image-family-name\]
If the URI is unspecified, it will be inferred from
SoftwareConfig.image_version
or the system default.
machine_type_uri: String
Optional. The Compute Engine machine type used for cluster instances.
A full URL, partial URI, or short name are valid. Examples:
<https://www.googleapis.com/compute/v1/projects/\[project_id\]/zones/\[zone\]/machineTypes/n1-standard-2
>projects/\[project_id\]/zones/\[zone\]/machineTypes/n1-standard-2
n1-standard-2
Auto Zone Exception: If you are using the Dataproc
Auto Zone
Placement
feature, you must use the short name of the machine type
resource, for example, n1-standard-2
.
disk_config: Option<DiskConfig>
Optional. Disk option config settings.
is_preemptible: bool
Output only. Specifies that this instance group contains preemptible instances.
preemptibility: i32
Optional. Specifies the preemptibility of the instance group.
The default value for master and worker groups is
NON_PREEMPTIBLE
. This default cannot be changed.
The default value for secondary instances is
PREEMPTIBLE
.
managed_group_config: Option<ManagedGroupConfig>
Output only. The config for Compute Engine Instance Group Manager that manages this group. This is only used for preemptible instance groups.
accelerators: Vec<AcceleratorConfig>
Optional. The Compute Engine accelerator configuration for these instances.
min_cpu_platform: String
Optional. Specifies the minimum cpu platform for the Instance Group. See Dataproc -> Minimum CPU Platform.
min_num_instances: i32
Optional. The minimum number of primary worker instances to create.
If min_num_instances
is set, cluster creation will succeed if
the number of primary workers created is at least equal to the
min_num_instances
number.
Example: Cluster creation request with num_instances
= 5
and
min_num_instances
= 3
:
- If 4 VMs are created and 1 instance fails,
the failed VM is deleted. The cluster is
resized to 4 instances and placed in a
RUNNING
state. - If 2 instances are created and 3 instances fail,
the cluster in placed in an
ERROR
state. The failed VMs are not deleted.
instance_flexibility_policy: Option<InstanceFlexibilityPolicy>
Optional. Instance flexibility Policy allowing a mixture of VM shapes and provisioning models.
startup_config: Option<StartupConfig>
Optional. Configuration to handle the startup of instances during cluster create and update process.
Implementations§
source§impl InstanceGroupConfig
impl InstanceGroupConfig
sourcepub fn preemptibility(&self) -> Preemptibility
pub fn preemptibility(&self) -> Preemptibility
Returns the enum value of preemptibility
, or the default if the field is set to an invalid enum value.
sourcepub fn set_preemptibility(&mut self, value: Preemptibility)
pub fn set_preemptibility(&mut self, value: Preemptibility)
Sets preemptibility
to the provided enum value.
Trait Implementations§
source§impl Clone for InstanceGroupConfig
impl Clone for InstanceGroupConfig
source§fn clone(&self) -> InstanceGroupConfig
fn clone(&self) -> InstanceGroupConfig
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for InstanceGroupConfig
impl Debug for InstanceGroupConfig
source§impl Default for InstanceGroupConfig
impl Default for InstanceGroupConfig
source§impl Message for InstanceGroupConfig
impl Message for InstanceGroupConfig
source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
source§fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
source§fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
. Read moresource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
.source§impl PartialEq for InstanceGroupConfig
impl PartialEq for InstanceGroupConfig
source§fn eq(&self, other: &InstanceGroupConfig) -> bool
fn eq(&self, other: &InstanceGroupConfig) -> bool
self
and other
values to be equal, and is used
by ==
.impl StructuralPartialEq for InstanceGroupConfig
Auto Trait Implementations§
impl Freeze for InstanceGroupConfig
impl RefUnwindSafe for InstanceGroupConfig
impl Send for InstanceGroupConfig
impl Sync for InstanceGroupConfig
impl Unpin for InstanceGroupConfig
impl UnwindSafe for InstanceGroupConfig
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T
in a tonic::Request