Class: Aws::EMR::Types::InstanceFleet

Inherits:
Struct
  • Object
show all
Includes:
Structure
Defined in:
lib/aws-sdk-emr/types.rb

Overview

Describes an instance fleet, which is a group of Amazon EC2 instances that host a particular node type (master, core, or task) in an Amazon EMR cluster. Instance fleets can consist of a mix of instance types and On-Demand and Spot Instances, which are provisioned to meet a defined target capacity.

<note markdown=“1”> The instance fleet configuration is available only in Amazon EMR releases 4.8.0 and later, excluding 5.0.x versions.

</note>

Constant Summary collapse

SENSITIVE =
[]

Instance Attribute Summary collapse

Instance Attribute Details

#contextString

Reserved.

Returns:

  • (String)


2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
2396
2397
# File 'lib/aws-sdk-emr/types.rb', line 2382

class InstanceFleet < Struct.new(
  :id,
  :name,
  :status,
  :instance_fleet_type,
  :target_on_demand_capacity,
  :target_spot_capacity,
  :provisioned_on_demand_capacity,
  :provisioned_spot_capacity,
  :instance_type_specifications,
  :launch_specifications,
  :resize_specifications,
  :context)
  SENSITIVE = []
  include Aws::Structure
end

#idString

The unique identifier of the instance fleet.

Returns:

  • (String)


2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
2396
2397
# File 'lib/aws-sdk-emr/types.rb', line 2382

class InstanceFleet < Struct.new(
  :id,
  :name,
  :status,
  :instance_fleet_type,
  :target_on_demand_capacity,
  :target_spot_capacity,
  :provisioned_on_demand_capacity,
  :provisioned_spot_capacity,
  :instance_type_specifications,
  :launch_specifications,
  :resize_specifications,
  :context)
  SENSITIVE = []
  include Aws::Structure
end

#instance_fleet_typeString

The node type that the instance fleet hosts. Valid values are MASTER, CORE, or TASK.

Returns:

  • (String)


2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
2396
2397
# File 'lib/aws-sdk-emr/types.rb', line 2382

class InstanceFleet < Struct.new(
  :id,
  :name,
  :status,
  :instance_fleet_type,
  :target_on_demand_capacity,
  :target_spot_capacity,
  :provisioned_on_demand_capacity,
  :provisioned_spot_capacity,
  :instance_type_specifications,
  :launch_specifications,
  :resize_specifications,
  :context)
  SENSITIVE = []
  include Aws::Structure
end

#instance_type_specificationsArray<Types::InstanceTypeSpecification>

An array of specifications for the instance types that comprise an instance fleet.



2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
2396
2397
# File 'lib/aws-sdk-emr/types.rb', line 2382

class InstanceFleet < Struct.new(
  :id,
  :name,
  :status,
  :instance_fleet_type,
  :target_on_demand_capacity,
  :target_spot_capacity,
  :provisioned_on_demand_capacity,
  :provisioned_spot_capacity,
  :instance_type_specifications,
  :launch_specifications,
  :resize_specifications,
  :context)
  SENSITIVE = []
  include Aws::Structure
end

#launch_specificationsTypes::InstanceFleetProvisioningSpecifications

Describes the launch specification for an instance fleet.



2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
2396
2397
# File 'lib/aws-sdk-emr/types.rb', line 2382

class InstanceFleet < Struct.new(
  :id,
  :name,
  :status,
  :instance_fleet_type,
  :target_on_demand_capacity,
  :target_spot_capacity,
  :provisioned_on_demand_capacity,
  :provisioned_spot_capacity,
  :instance_type_specifications,
  :launch_specifications,
  :resize_specifications,
  :context)
  SENSITIVE = []
  include Aws::Structure
end

#nameString

A friendly name for the instance fleet.

Returns:

  • (String)


2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
2396
2397
# File 'lib/aws-sdk-emr/types.rb', line 2382

class InstanceFleet < Struct.new(
  :id,
  :name,
  :status,
  :instance_fleet_type,
  :target_on_demand_capacity,
  :target_spot_capacity,
  :provisioned_on_demand_capacity,
  :provisioned_spot_capacity,
  :instance_type_specifications,
  :launch_specifications,
  :resize_specifications,
  :context)
  SENSITIVE = []
  include Aws::Structure
end

#provisioned_on_demand_capacityInteger

The number of On-Demand units that have been provisioned for the instance fleet to fulfill ‘TargetOnDemandCapacity`. This provisioned capacity might be less than or greater than `TargetOnDemandCapacity`.

Returns:

  • (Integer)


2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
2396
2397
# File 'lib/aws-sdk-emr/types.rb', line 2382

class InstanceFleet < Struct.new(
  :id,
  :name,
  :status,
  :instance_fleet_type,
  :target_on_demand_capacity,
  :target_spot_capacity,
  :provisioned_on_demand_capacity,
  :provisioned_spot_capacity,
  :instance_type_specifications,
  :launch_specifications,
  :resize_specifications,
  :context)
  SENSITIVE = []
  include Aws::Structure
end

#provisioned_spot_capacityInteger

The number of Spot units that have been provisioned for this instance fleet to fulfill ‘TargetSpotCapacity`. This provisioned capacity might be less than or greater than `TargetSpotCapacity`.

Returns:

  • (Integer)


2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
2396
2397
# File 'lib/aws-sdk-emr/types.rb', line 2382

class InstanceFleet < Struct.new(
  :id,
  :name,
  :status,
  :instance_fleet_type,
  :target_on_demand_capacity,
  :target_spot_capacity,
  :provisioned_on_demand_capacity,
  :provisioned_spot_capacity,
  :instance_type_specifications,
  :launch_specifications,
  :resize_specifications,
  :context)
  SENSITIVE = []
  include Aws::Structure
end

#resize_specificationsTypes::InstanceFleetResizingSpecifications

The resize specification for the instance fleet.



2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
2396
2397
# File 'lib/aws-sdk-emr/types.rb', line 2382

class InstanceFleet < Struct.new(
  :id,
  :name,
  :status,
  :instance_fleet_type,
  :target_on_demand_capacity,
  :target_spot_capacity,
  :provisioned_on_demand_capacity,
  :provisioned_spot_capacity,
  :instance_type_specifications,
  :launch_specifications,
  :resize_specifications,
  :context)
  SENSITIVE = []
  include Aws::Structure
end

#statusTypes::InstanceFleetStatus

The current status of the instance fleet.



2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
2396
2397
# File 'lib/aws-sdk-emr/types.rb', line 2382

class InstanceFleet < Struct.new(
  :id,
  :name,
  :status,
  :instance_fleet_type,
  :target_on_demand_capacity,
  :target_spot_capacity,
  :provisioned_on_demand_capacity,
  :provisioned_spot_capacity,
  :instance_type_specifications,
  :launch_specifications,
  :resize_specifications,
  :context)
  SENSITIVE = []
  include Aws::Structure
end

#target_on_demand_capacityInteger

The target capacity of On-Demand units for the instance fleet, which determines how many On-Demand Instances to provision. When the instance fleet launches, Amazon EMR tries to provision On-Demand Instances as specified by InstanceTypeConfig. Each instance configuration has a specified ‘WeightedCapacity`. When an On-Demand Instance is provisioned, the `WeightedCapacity` units count toward the target capacity. Amazon EMR provisions instances until the target capacity is totally fulfilled, even if this results in an overage. For example, if there are 2 units remaining to fulfill capacity, and Amazon EMR can only provision an instance with a `WeightedCapacity` of 5 units, the instance is provisioned, and the target capacity is exceeded by 3 units. You can use InstanceFleet$ProvisionedOnDemandCapacity to determine the Spot capacity units that have been provisioned for the instance fleet.

<note markdown=“1”> If not specified or set to 0, only Spot Instances are provisioned for the instance fleet using ‘TargetSpotCapacity`. At least one of `TargetSpotCapacity` and `TargetOnDemandCapacity` should be greater than 0. For a master instance fleet, only one of `TargetSpotCapacity` and `TargetOnDemandCapacity` can be specified, and its value must be 1.

</note>

Returns:

  • (Integer)


2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
2396
2397
# File 'lib/aws-sdk-emr/types.rb', line 2382

class InstanceFleet < Struct.new(
  :id,
  :name,
  :status,
  :instance_fleet_type,
  :target_on_demand_capacity,
  :target_spot_capacity,
  :provisioned_on_demand_capacity,
  :provisioned_spot_capacity,
  :instance_type_specifications,
  :launch_specifications,
  :resize_specifications,
  :context)
  SENSITIVE = []
  include Aws::Structure
end

#target_spot_capacityInteger

The target capacity of Spot units for the instance fleet, which determines how many Spot Instances to provision. When the instance fleet launches, Amazon EMR tries to provision Spot Instances as specified by InstanceTypeConfig. Each instance configuration has a specified ‘WeightedCapacity`. When a Spot instance is provisioned, the `WeightedCapacity` units count toward the target capacity. Amazon EMR provisions instances until the target capacity is totally fulfilled, even if this results in an overage. For example, if there are 2 units remaining to fulfill capacity, and Amazon EMR can only provision an instance with a `WeightedCapacity` of 5 units, the instance is provisioned, and the target capacity is exceeded by 3 units. You can use InstanceFleet$ProvisionedSpotCapacity to determine the Spot capacity units that have been provisioned for the instance fleet.

<note markdown=“1”> If not specified or set to 0, only On-Demand Instances are provisioned for the instance fleet. At least one of ‘TargetSpotCapacity` and `TargetOnDemandCapacity` should be greater than 0. For a master instance fleet, only one of `TargetSpotCapacity` and `TargetOnDemandCapacity` can be specified, and its value must be 1.

</note>

Returns:

  • (Integer)


2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
2396
2397
# File 'lib/aws-sdk-emr/types.rb', line 2382

class InstanceFleet < Struct.new(
  :id,
  :name,
  :status,
  :instance_fleet_type,
  :target_on_demand_capacity,
  :target_spot_capacity,
  :provisioned_on_demand_capacity,
  :provisioned_spot_capacity,
  :instance_type_specifications,
  :launch_specifications,
  :resize_specifications,
  :context)
  SENSITIVE = []
  include Aws::Structure
end