Class InstanceFleet
- java.lang.Object
-
- software.amazon.awssdk.services.emr.model.InstanceFleet
-
- All Implemented Interfaces:
Serializable,SdkPojo,ToCopyableBuilder<InstanceFleet.Builder,InstanceFleet>
@Generated("software.amazon.awssdk:codegen") public final class InstanceFleet extends Object implements SdkPojo, Serializable, ToCopyableBuilder<InstanceFleet.Builder,InstanceFleet>
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.
The instance fleet configuration is available only in Amazon EMR releases 4.8.0 and later, excluding 5.0.x versions.
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interfaceInstanceFleet.Builder
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static InstanceFleet.Builderbuilder()Stringcontext()Reserved.booleanequals(Object obj)booleanequalsBySdkFields(Object obj)<T> Optional<T>getValueForField(String fieldName, Class<T> clazz)inthashCode()booleanhasInstanceTypeSpecifications()For responses, this returns true if the service returned a value for the InstanceTypeSpecifications property.Stringid()The unique identifier of the instance fleet.InstanceFleetTypeinstanceFleetType()The node type that the instance fleet hosts.StringinstanceFleetTypeAsString()The node type that the instance fleet hosts.List<InstanceTypeSpecification>instanceTypeSpecifications()An array of specifications for the instance types that comprise an instance fleet.InstanceFleetProvisioningSpecificationslaunchSpecifications()Describes the launch specification for an instance fleet.Stringname()A friendly name for the instance fleet.IntegerprovisionedOnDemandCapacity()The number of On-Demand units that have been provisioned for the instance fleet to fulfillTargetOnDemandCapacity.IntegerprovisionedSpotCapacity()The number of Spot units that have been provisioned for this instance fleet to fulfillTargetSpotCapacity.InstanceFleetResizingSpecificationsresizeSpecifications()The resize specification for the instance fleet.Map<String,SdkField<?>>sdkFieldNameToField()List<SdkField<?>>sdkFields()static Class<? extends InstanceFleet.Builder>serializableBuilderClass()InstanceFleetStatusstatus()The current status of the instance fleet.IntegertargetOnDemandCapacity()The target capacity of On-Demand units for the instance fleet, which determines how many On-Demand Instances to provision.IntegertargetSpotCapacity()The target capacity of Spot units for the instance fleet, which determines how many Spot Instances to provision.InstanceFleet.BuildertoBuilder()StringtoString()Returns a string representation of this object.-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface software.amazon.awssdk.utils.builder.ToCopyableBuilder
copy
-
-
-
-
Method Detail
-
id
public final String id()
The unique identifier of the instance fleet.
- Returns:
- The unique identifier of the instance fleet.
-
name
public final String name()
A friendly name for the instance fleet.
- Returns:
- A friendly name for the instance fleet.
-
status
public final InstanceFleetStatus status()
The current status of the instance fleet.
- Returns:
- The current status of the instance fleet.
-
instanceFleetType
public final InstanceFleetType instanceFleetType()
The node type that the instance fleet hosts. Valid values are MASTER, CORE, or TASK.
If the service returns an enum value that is not available in the current SDK version,
instanceFleetTypewill returnInstanceFleetType.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available frominstanceFleetTypeAsString().- Returns:
- The node type that the instance fleet hosts. Valid values are MASTER, CORE, or TASK.
- See Also:
InstanceFleetType
-
instanceFleetTypeAsString
public final String instanceFleetTypeAsString()
The node type that the instance fleet hosts. Valid values are MASTER, CORE, or TASK.
If the service returns an enum value that is not available in the current SDK version,
instanceFleetTypewill returnInstanceFleetType.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available frominstanceFleetTypeAsString().- Returns:
- The node type that the instance fleet hosts. Valid values are MASTER, CORE, or TASK.
- See Also:
InstanceFleetType
-
targetOnDemandCapacity
public final Integer targetOnDemandCapacity()
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, theWeightedCapacityunits 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 aWeightedCapacityof 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.If not specified or set to 0, only Spot Instances are provisioned for the instance fleet using
TargetSpotCapacity. At least one ofTargetSpotCapacityandTargetOnDemandCapacityshould be greater than 0. For a master instance fleet, only one ofTargetSpotCapacityandTargetOnDemandCapacitycan be specified, and its value must be 1.- Returns:
- 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, theWeightedCapacityunits 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 aWeightedCapacityof 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.If not specified or set to 0, only Spot Instances are provisioned for the instance fleet using
TargetSpotCapacity. At least one ofTargetSpotCapacityandTargetOnDemandCapacityshould be greater than 0. For a master instance fleet, only one ofTargetSpotCapacityandTargetOnDemandCapacitycan be specified, and its value must be 1.
-
targetSpotCapacity
public final Integer targetSpotCapacity()
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, theWeightedCapacityunits 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 aWeightedCapacityof 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.If not specified or set to 0, only On-Demand Instances are provisioned for the instance fleet. At least one of
TargetSpotCapacityandTargetOnDemandCapacityshould be greater than 0. For a master instance fleet, only one ofTargetSpotCapacityandTargetOnDemandCapacitycan be specified, and its value must be 1.- Returns:
- 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, theWeightedCapacityunits 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 aWeightedCapacityof 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.If not specified or set to 0, only On-Demand Instances are provisioned for the instance fleet. At least one of
TargetSpotCapacityandTargetOnDemandCapacityshould be greater than 0. For a master instance fleet, only one ofTargetSpotCapacityandTargetOnDemandCapacitycan be specified, and its value must be 1.
-
provisionedOnDemandCapacity
public final Integer provisionedOnDemandCapacity()
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 thanTargetOnDemandCapacity.- Returns:
- 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 thanTargetOnDemandCapacity.
-
provisionedSpotCapacity
public final Integer provisionedSpotCapacity()
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 thanTargetSpotCapacity.- Returns:
- 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 thanTargetSpotCapacity.
-
hasInstanceTypeSpecifications
public final boolean hasInstanceTypeSpecifications()
For responses, this returns true if the service returned a value for the InstanceTypeSpecifications property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
-
instanceTypeSpecifications
public final List<InstanceTypeSpecification> instanceTypeSpecifications()
An array of specifications for the instance types that comprise an instance fleet.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasInstanceTypeSpecifications()method.- Returns:
- An array of specifications for the instance types that comprise an instance fleet.
-
launchSpecifications
public final InstanceFleetProvisioningSpecifications launchSpecifications()
Describes the launch specification for an instance fleet.
- Returns:
- Describes the launch specification for an instance fleet.
-
resizeSpecifications
public final InstanceFleetResizingSpecifications resizeSpecifications()
The resize specification for the instance fleet.
- Returns:
- The resize specification for the instance fleet.
-
context
public final String context()
Reserved.
- Returns:
- Reserved.
-
toBuilder
public InstanceFleet.Builder toBuilder()
- Specified by:
toBuilderin interfaceToCopyableBuilder<InstanceFleet.Builder,InstanceFleet>
-
builder
public static InstanceFleet.Builder builder()
-
serializableBuilderClass
public static Class<? extends InstanceFleet.Builder> serializableBuilderClass()
-
equalsBySdkFields
public final boolean equalsBySdkFields(Object obj)
- Specified by:
equalsBySdkFieldsin interfaceSdkPojo
-
toString
public final String toString()
Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value.
-
sdkFieldNameToField
public final Map<String,SdkField<?>> sdkFieldNameToField()
- Specified by:
sdkFieldNameToFieldin interfaceSdkPojo
-
-