#[non_exhaustive]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: Preemptibility,
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>,
/* private fields */
}Expand description
The config settings for Compute Engine resources in an instance group, such as a master or worker group.
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.num_instances: i32Optional. 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: StringOptional. 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: StringOptional. 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-2projects/[project_id]/zones/[zone]/machineTypes/n1-standard-2n1-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: boolOutput only. Specifies that this instance group contains preemptible instances.
preemptibility: PreemptibilityOptional. 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: StringOptional. Specifies the minimum cpu platform for the Instance Group. See Dataproc -> Minimum CPU Platform.
min_num_instances: i32Optional. 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
RUNNINGstate. - If 2 instances are created and 3 instances fail,
the cluster in placed in an
ERRORstate. 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
pub fn new() -> Self
Sourcepub fn set_num_instances<T: Into<i32>>(self, v: T) -> Self
pub fn set_num_instances<T: Into<i32>>(self, v: T) -> Self
Sets the value of num_instances.
Sourcepub fn set_instance_names<T, V>(self, v: T) -> Self
pub fn set_instance_names<T, V>(self, v: T) -> Self
Sets the value of instance_names.
Sourcepub fn set_instance_references<T, V>(self, v: T) -> Self
pub fn set_instance_references<T, V>(self, v: T) -> Self
Sets the value of instance_references.
Sourcepub fn set_image_uri<T: Into<String>>(self, v: T) -> Self
pub fn set_image_uri<T: Into<String>>(self, v: T) -> Self
Sets the value of image_uri.
Sourcepub fn set_machine_type_uri<T: Into<String>>(self, v: T) -> Self
pub fn set_machine_type_uri<T: Into<String>>(self, v: T) -> Self
Sets the value of machine_type_uri.
Sourcepub fn set_disk_config<T>(self, v: T) -> Selfwhere
T: Into<DiskConfig>,
pub fn set_disk_config<T>(self, v: T) -> Selfwhere
T: Into<DiskConfig>,
Sets the value of disk_config.
Sourcepub fn set_or_clear_disk_config<T>(self, v: Option<T>) -> Selfwhere
T: Into<DiskConfig>,
pub fn set_or_clear_disk_config<T>(self, v: Option<T>) -> Selfwhere
T: Into<DiskConfig>,
Sets or clears the value of disk_config.
Sourcepub fn set_is_preemptible<T: Into<bool>>(self, v: T) -> Self
pub fn set_is_preemptible<T: Into<bool>>(self, v: T) -> Self
Sets the value of is_preemptible.
Sourcepub fn set_preemptibility<T: Into<Preemptibility>>(self, v: T) -> Self
pub fn set_preemptibility<T: Into<Preemptibility>>(self, v: T) -> Self
Sets the value of preemptibility.
Sourcepub fn set_managed_group_config<T>(self, v: T) -> Selfwhere
T: Into<ManagedGroupConfig>,
pub fn set_managed_group_config<T>(self, v: T) -> Selfwhere
T: Into<ManagedGroupConfig>,
Sets the value of managed_group_config.
Sourcepub fn set_or_clear_managed_group_config<T>(self, v: Option<T>) -> Selfwhere
T: Into<ManagedGroupConfig>,
pub fn set_or_clear_managed_group_config<T>(self, v: Option<T>) -> Selfwhere
T: Into<ManagedGroupConfig>,
Sets or clears the value of managed_group_config.
Sourcepub fn set_accelerators<T, V>(self, v: T) -> Self
pub fn set_accelerators<T, V>(self, v: T) -> Self
Sets the value of accelerators.
Sourcepub fn set_min_cpu_platform<T: Into<String>>(self, v: T) -> Self
pub fn set_min_cpu_platform<T: Into<String>>(self, v: T) -> Self
Sets the value of min_cpu_platform.
Sourcepub fn set_min_num_instances<T: Into<i32>>(self, v: T) -> Self
pub fn set_min_num_instances<T: Into<i32>>(self, v: T) -> Self
Sets the value of min_num_instances.
Sourcepub fn set_instance_flexibility_policy<T>(self, v: T) -> Selfwhere
T: Into<InstanceFlexibilityPolicy>,
pub fn set_instance_flexibility_policy<T>(self, v: T) -> Selfwhere
T: Into<InstanceFlexibilityPolicy>,
Sets the value of instance_flexibility_policy.
Sourcepub fn set_or_clear_instance_flexibility_policy<T>(self, v: Option<T>) -> Selfwhere
T: Into<InstanceFlexibilityPolicy>,
pub fn set_or_clear_instance_flexibility_policy<T>(self, v: Option<T>) -> Selfwhere
T: Into<InstanceFlexibilityPolicy>,
Sets or clears the value of instance_flexibility_policy.
Sourcepub fn set_startup_config<T>(self, v: T) -> Selfwhere
T: Into<StartupConfig>,
pub fn set_startup_config<T>(self, v: T) -> Selfwhere
T: Into<StartupConfig>,
Sets the value of startup_config.
Sourcepub fn set_or_clear_startup_config<T>(self, v: Option<T>) -> Selfwhere
T: Into<StartupConfig>,
pub fn set_or_clear_startup_config<T>(self, v: Option<T>) -> Selfwhere
T: Into<StartupConfig>,
Sets or clears the value of startup_config.
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 more