#[non_exhaustive]
pub struct JobFlowInstancesConfig {
Show 17 fields pub master_instance_type: Option<String>, pub slave_instance_type: Option<String>, pub instance_count: Option<i32>, pub instance_groups: Option<Vec<InstanceGroupConfig>>, pub instance_fleets: Option<Vec<InstanceFleetConfig>>, pub ec2_key_name: Option<String>, pub placement: Option<PlacementType>, pub keep_job_flow_alive_when_no_steps: bool, pub termination_protected: bool, pub hadoop_version: Option<String>, pub ec2_subnet_id: Option<String>, pub ec2_subnet_ids: Option<Vec<String>>, pub emr_managed_master_security_group: Option<String>, pub emr_managed_slave_security_group: Option<String>, pub service_access_security_group: Option<String>, pub additional_master_security_groups: Option<Vec<String>>, pub additional_slave_security_groups: Option<Vec<String>>,
}
Expand description

A description of the Amazon EC2 instance on which the cluster (job flow) runs. A valid JobFlowInstancesConfig must contain either InstanceGroups or InstanceFleets. They cannot be used together. You may also have MasterInstanceType, SlaveInstanceType, and InstanceCount (all three must be present), but we don't recommend this configuration.

Fields (Non-exhaustive)

This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.
master_instance_type: Option<String>

The EC2 instance type of the master node.

slave_instance_type: Option<String>

The EC2 instance type of the core and task nodes.

instance_count: Option<i32>

The number of EC2 instances in the cluster.

instance_groups: Option<Vec<InstanceGroupConfig>>

Configuration for the instance groups in a cluster.

instance_fleets: Option<Vec<InstanceFleetConfig>>

The instance fleet configuration is available only in Amazon EMR versions 4.8.0 and later, excluding 5.0.x versions.

Describes the EC2 instances and instance configurations for clusters that use the instance fleet configuration.

ec2_key_name: Option<String>

The name of the EC2 key pair that can be used to connect to the master node using SSH as the user called "hadoop."

placement: Option<PlacementType>

The Availability Zone in which the cluster runs.

keep_job_flow_alive_when_no_steps: bool

Specifies whether the cluster should remain available after completing all steps. Defaults to true. For more information about configuring cluster termination, see Control Cluster Termination in the EMR Management Guide.

termination_protected: bool

Specifies whether to lock the cluster to prevent the Amazon EC2 instances from being terminated by API call, user intervention, or in the event of a job-flow error.

hadoop_version: Option<String>

Applies only to Amazon EMR release versions earlier than 4.0. The Hadoop version for the cluster. Valid inputs are "0.18" (no longer maintained), "0.20" (no longer maintained), "0.20.205" (no longer maintained), "1.0.3", "2.2.0", or "2.4.0". If you do not set this value, the default of 0.18 is used, unless the AmiVersion parameter is set in the RunJobFlow call, in which case the default version of Hadoop for that AMI version is used.

ec2_subnet_id: Option<String>

Applies to clusters that use the uniform instance group configuration. To launch the cluster in Amazon Virtual Private Cloud (Amazon VPC), set this parameter to the identifier of the Amazon VPC subnet where you want the cluster to launch. If you do not specify this value and your account supports EC2-Classic, the cluster launches in EC2-Classic.

ec2_subnet_ids: Option<Vec<String>>

Applies to clusters that use the instance fleet configuration. When multiple EC2 subnet IDs are specified, Amazon EMR evaluates them and launches instances in the optimal subnet.

The instance fleet configuration is available only in Amazon EMR versions 4.8.0 and later, excluding 5.0.x versions.

emr_managed_master_security_group: Option<String>

The identifier of the Amazon EC2 security group for the master node. If you specify EmrManagedMasterSecurityGroup, you must also specify EmrManagedSlaveSecurityGroup.

emr_managed_slave_security_group: Option<String>

The identifier of the Amazon EC2 security group for the core and task nodes. If you specify EmrManagedSlaveSecurityGroup, you must also specify EmrManagedMasterSecurityGroup.

service_access_security_group: Option<String>

The identifier of the Amazon EC2 security group for the Amazon EMR service to access clusters in VPC private subnets.

additional_master_security_groups: Option<Vec<String>>

A list of additional Amazon EC2 security group IDs for the master node.

additional_slave_security_groups: Option<Vec<String>>

A list of additional Amazon EC2 security group IDs for the core and task nodes.

Implementations

The EC2 instance type of the master node.

The EC2 instance type of the core and task nodes.

The number of EC2 instances in the cluster.

Configuration for the instance groups in a cluster.

The instance fleet configuration is available only in Amazon EMR versions 4.8.0 and later, excluding 5.0.x versions.

Describes the EC2 instances and instance configurations for clusters that use the instance fleet configuration.

The name of the EC2 key pair that can be used to connect to the master node using SSH as the user called "hadoop."

The Availability Zone in which the cluster runs.

Specifies whether the cluster should remain available after completing all steps. Defaults to true. For more information about configuring cluster termination, see Control Cluster Termination in the EMR Management Guide.

Specifies whether to lock the cluster to prevent the Amazon EC2 instances from being terminated by API call, user intervention, or in the event of a job-flow error.

Applies only to Amazon EMR release versions earlier than 4.0. The Hadoop version for the cluster. Valid inputs are "0.18" (no longer maintained), "0.20" (no longer maintained), "0.20.205" (no longer maintained), "1.0.3", "2.2.0", or "2.4.0". If you do not set this value, the default of 0.18 is used, unless the AmiVersion parameter is set in the RunJobFlow call, in which case the default version of Hadoop for that AMI version is used.

Applies to clusters that use the uniform instance group configuration. To launch the cluster in Amazon Virtual Private Cloud (Amazon VPC), set this parameter to the identifier of the Amazon VPC subnet where you want the cluster to launch. If you do not specify this value and your account supports EC2-Classic, the cluster launches in EC2-Classic.

Applies to clusters that use the instance fleet configuration. When multiple EC2 subnet IDs are specified, Amazon EMR evaluates them and launches instances in the optimal subnet.

The instance fleet configuration is available only in Amazon EMR versions 4.8.0 and later, excluding 5.0.x versions.

The identifier of the Amazon EC2 security group for the master node. If you specify EmrManagedMasterSecurityGroup, you must also specify EmrManagedSlaveSecurityGroup.

The identifier of the Amazon EC2 security group for the core and task nodes. If you specify EmrManagedSlaveSecurityGroup, you must also specify EmrManagedMasterSecurityGroup.

The identifier of the Amazon EC2 security group for the Amazon EMR service to access clusters in VPC private subnets.

A list of additional Amazon EC2 security group IDs for the master node.

A list of additional Amazon EC2 security group IDs for the core and task nodes.

Creates a new builder-style object to manufacture JobFlowInstancesConfig

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Performs the conversion.

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more

Instruments this type with the current Span, returning an Instrumented wrapper. Read more

Performs the conversion.

The resulting type after obtaining ownership.

Creates owned data from borrowed data, usually by cloning. Read more

🔬 This is a nightly-only experimental API. (toowned_clone_into)

Uses borrowed data to replace owned data, usually by cloning. Read more

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more