Class InstanceFleetConfig
- All Implemented Interfaces:
Serializable
,SdkPojo
,ToCopyableBuilder<InstanceFleetConfig.Builder,
InstanceFleetConfig>
The configuration that defines an instance fleet.
The instance fleet configuration is available only in Amazon EMR releases 4.8.0 and later, excluding 5.0.x versions.
- See Also:
-
Nested Class Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic InstanceFleetConfig.Builder
builder()
final boolean
final boolean
equalsBySdkFields
(Object obj) Indicates whether some other object is "equal to" this one by SDK fields.final <T> Optional
<T> getValueForField
(String fieldName, Class<T> clazz) final int
hashCode()
final boolean
For responses, this returns true if the service returned a value for the InstanceTypeConfigs property.final InstanceFleetType
The node type that the instance fleet hosts.final String
The node type that the instance fleet hosts.final List
<InstanceTypeConfig> The instance type configurations that define the Amazon EC2 instances in the instance fleet.The launch specification for the instance fleet.final String
name()
The friendly name of the instance fleet.The resize specification for the instance fleet.static Class
<? extends InstanceFleetConfig.Builder> final Integer
The target capacity of On-Demand units for the instance fleet, which determines how many On-Demand Instances to provision.final Integer
The target capacity of Spot units for the instance fleet, which determines how many Spot Instances to provision.Take this object and create a builder that contains all of the current property values of this object.final String
toString()
Returns a string representation of this object.Methods inherited from interface software.amazon.awssdk.utils.builder.ToCopyableBuilder
copy
-
Method Details
-
name
The friendly name of the instance fleet.
- Returns:
- The friendly name of the instance fleet.
-
instanceFleetType
The node type that the instance fleet hosts. Valid values are MASTER, CORE, and TASK.
If the service returns an enum value that is not available in the current SDK version,
instanceFleetType
will 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, and TASK.
- See Also:
-
instanceFleetTypeAsString
The node type that the instance fleet hosts. Valid values are MASTER, CORE, and TASK.
If the service returns an enum value that is not available in the current SDK version,
instanceFleetType
will 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, and TASK.
- See Also:
-
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, theWeightedCapacity
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 aWeightedCapacity
of 5 units, the instance is provisioned, and the target capacity is exceeded by 3 units.If not specified or set to 0, only Spot Instances are provisioned for the instance fleet using
TargetSpotCapacity
. At least one ofTargetSpotCapacity
andTargetOnDemandCapacity
should be greater than 0. For a master instance fleet, only one ofTargetSpotCapacity
andTargetOnDemandCapacity
can 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, theWeightedCapacity
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 aWeightedCapacity
of 5 units, the instance is provisioned, and the target capacity is exceeded by 3 units.If not specified or set to 0, only Spot Instances are provisioned for the instance fleet using
TargetSpotCapacity
. At least one ofTargetSpotCapacity
andTargetOnDemandCapacity
should be greater than 0. For a master instance fleet, only one ofTargetSpotCapacity
andTargetOnDemandCapacity
can be specified, and its value must be 1.
-
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, theWeightedCapacity
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 aWeightedCapacity
of 5 units, the instance is provisioned, and the target capacity is exceeded by 3 units.If not specified or set to 0, only On-Demand Instances are provisioned for the instance fleet. At least one of
TargetSpotCapacity
andTargetOnDemandCapacity
should be greater than 0. For a master instance fleet, only one ofTargetSpotCapacity
andTargetOnDemandCapacity
can 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, theWeightedCapacity
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 aWeightedCapacity
of 5 units, the instance is provisioned, and the target capacity is exceeded by 3 units.If not specified or set to 0, only On-Demand Instances are provisioned for the instance fleet. At least one of
TargetSpotCapacity
andTargetOnDemandCapacity
should be greater than 0. For a master instance fleet, only one ofTargetSpotCapacity
andTargetOnDemandCapacity
can be specified, and its value must be 1.
-
hasInstanceTypeConfigs
public final boolean hasInstanceTypeConfigs()For responses, this returns true if the service returned a value for the InstanceTypeConfigs 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. -
instanceTypeConfigs
The instance type configurations that define the Amazon EC2 instances in the 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
hasInstanceTypeConfigs()
method.- Returns:
- The instance type configurations that define the Amazon EC2 instances in the instance fleet.
-
launchSpecifications
The launch specification for the instance fleet.
- Returns:
- The launch specification for the instance fleet.
-
resizeSpecifications
The resize specification for the instance fleet.
- Returns:
- The resize specification for the instance fleet.
-
toBuilder
Description copied from interface:ToCopyableBuilder
Take this object and create a builder that contains all of the current property values of this object.- Specified by:
toBuilder
in interfaceToCopyableBuilder<InstanceFleetConfig.Builder,
InstanceFleetConfig> - Returns:
- a builder for type T
-
builder
-
serializableBuilderClass
-
hashCode
public final int hashCode() -
equals
-
equalsBySdkFields
Description copied from interface:SdkPojo
Indicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in anSdkPojo
class, and is generated based on a service model.If an
SdkPojo
class does not have any inherited fields,equalsBySdkFields
andequals
are essentially the same.- Specified by:
equalsBySdkFields
in interfaceSdkPojo
- Parameters:
obj
- the object to be compared with- Returns:
- true if the other object equals to this object by sdk fields, false otherwise.
-
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. -
getValueForField
-
sdkFields
-