Class FleetLaunchTemplateOverridesRequest

    • Method Detail

      • instanceType

        public final InstanceType instanceType()

        The instance type.

        mac1.metal is not supported as a launch template override.

        If you specify InstanceType, you can't specify InstanceRequirements.

        If the service returns an enum value that is not available in the current SDK version, instanceType will return InstanceType.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from instanceTypeAsString().

        Returns:
        The instance type.

        mac1.metal is not supported as a launch template override.

        If you specify InstanceType, you can't specify InstanceRequirements.

        See Also:
        InstanceType
      • instanceTypeAsString

        public final String instanceTypeAsString()

        The instance type.

        mac1.metal is not supported as a launch template override.

        If you specify InstanceType, you can't specify InstanceRequirements.

        If the service returns an enum value that is not available in the current SDK version, instanceType will return InstanceType.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from instanceTypeAsString().

        Returns:
        The instance type.

        mac1.metal is not supported as a launch template override.

        If you specify InstanceType, you can't specify InstanceRequirements.

        See Also:
        InstanceType
      • maxPrice

        public final String maxPrice()

        The maximum price per unit hour that you are willing to pay for a Spot Instance. We do not recommend using this parameter because it can lead to increased interruptions. If you do not specify this parameter, you will pay the current Spot price.

        If you specify a maximum price, your instances will be interrupted more frequently than if you do not specify this parameter.

        If you specify a maximum price, it must be more than USD $0.001. Specifying a value below USD $0.001 will result in an InvalidParameterValue error message.

        Returns:
        The maximum price per unit hour that you are willing to pay for a Spot Instance. We do not recommend using this parameter because it can lead to increased interruptions. If you do not specify this parameter, you will pay the current Spot price.

        If you specify a maximum price, your instances will be interrupted more frequently than if you do not specify this parameter.

        If you specify a maximum price, it must be more than USD $0.001. Specifying a value below USD $0.001 will result in an InvalidParameterValue error message.

      • subnetId

        public final String subnetId()

        The IDs of the subnets in which to launch the instances. Separate multiple subnet IDs using commas (for example, subnet-1234abcdeexample1, subnet-0987cdef6example2). A request of type instant can have only one subnet ID.

        Returns:
        The IDs of the subnets in which to launch the instances. Separate multiple subnet IDs using commas (for example, subnet-1234abcdeexample1, subnet-0987cdef6example2). A request of type instant can have only one subnet ID.
      • availabilityZone

        public final String availabilityZone()

        The Availability Zone in which to launch the instances. For example, us-east-2a.

        Either AvailabilityZone or AvailabilityZoneId must be specified in the request, but not both.

        Returns:
        The Availability Zone in which to launch the instances. For example, us-east-2a.

        Either AvailabilityZone or AvailabilityZoneId must be specified in the request, but not both.

      • weightedCapacity

        public final Double weightedCapacity()

        The number of units provided by the specified instance type. These are the same units that you chose to set the target capacity in terms of instances, or a performance characteristic such as vCPUs, memory, or I/O.

        If the target capacity divided by this value is not a whole number, Amazon EC2 rounds the number of instances to the next whole number. If this value is not specified, the default is 1.

        When specifying weights, the price used in the lowest-price and price-capacity-optimized allocation strategies is per unit hour (where the instance price is divided by the specified weight). However, if all the specified weights are above the requested TargetCapacity, resulting in only 1 instance being launched, the price used is per instance hour.

        Returns:
        The number of units provided by the specified instance type. These are the same units that you chose to set the target capacity in terms of instances, or a performance characteristic such as vCPUs, memory, or I/O.

        If the target capacity divided by this value is not a whole number, Amazon EC2 rounds the number of instances to the next whole number. If this value is not specified, the default is 1.

        When specifying weights, the price used in the lowest-price and price-capacity-optimized allocation strategies is per unit hour (where the instance price is divided by the specified weight). However, if all the specified weights are above the requested TargetCapacity, resulting in only 1 instance being launched, the price used is per instance hour.

      • priority

        public final Double priority()

        The priority for the launch template override. The highest priority is launched first.

        If the On-Demand AllocationStrategy is set to prioritized, EC2 Fleet uses priority to determine which launch template override to use first in fulfilling On-Demand capacity.

        If the Spot AllocationStrategy is set to capacity-optimized-prioritized, EC2 Fleet uses priority on a best-effort basis to determine which launch template override to use in fulfilling Spot capacity, but optimizes for capacity first.

        Valid values are whole numbers starting at 0. The lower the number, the higher the priority. If no number is set, the launch template override has the lowest priority. You can set the same priority for different launch template overrides.

        Returns:
        The priority for the launch template override. The highest priority is launched first.

        If the On-Demand AllocationStrategy is set to prioritized, EC2 Fleet uses priority to determine which launch template override to use first in fulfilling On-Demand capacity.

        If the Spot AllocationStrategy is set to capacity-optimized-prioritized, EC2 Fleet uses priority on a best-effort basis to determine which launch template override to use in fulfilling Spot capacity, but optimizes for capacity first.

        Valid values are whole numbers starting at 0. The lower the number, the higher the priority. If no number is set, the launch template override has the lowest priority. You can set the same priority for different launch template overrides.

      • placement

        public final Placement placement()

        The location where the instance launched, if applicable.

        Returns:
        The location where the instance launched, if applicable.
      • hasBlockDeviceMappings

        public final boolean hasBlockDeviceMappings()
        For responses, this returns true if the service returned a value for the BlockDeviceMappings property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() 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.
      • blockDeviceMappings

        public final List<FleetBlockDeviceMappingRequest> blockDeviceMappings()

        The block device mappings, which define the EBS volumes and instance store volumes to attach to the instance at launch.

        Supported only for fleets of type instant.

        For more information, see Block device mappings for volumes on Amazon EC2 instances in the Amazon EC2 User Guide.

        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 hasBlockDeviceMappings() method.

        Returns:
        The block device mappings, which define the EBS volumes and instance store volumes to attach to the instance at launch.

        Supported only for fleets of type instant.

        For more information, see Block device mappings for volumes on Amazon EC2 instances in the Amazon EC2 User Guide.

      • instanceRequirements

        public final InstanceRequirementsRequest instanceRequirements()

        The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with those attributes.

        If you specify InstanceRequirements, you can't specify InstanceType.

        Returns:
        The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with those attributes.

        If you specify InstanceRequirements, you can't specify InstanceType.

      • imageId

        public final String imageId()

        The ID of the AMI in the format ami-17characters00000.

        Alternatively, you can specify a Systems Manager parameter, using one of the following formats. The Systems Manager parameter will resolve to an AMI ID on launch.

        To reference a public parameter:

        • resolve:ssm:public-parameter

        To reference a parameter stored in the same account:

        • resolve:ssm:parameter-name

        • resolve:ssm:parameter-name:version-number

        • resolve:ssm:parameter-name:label

        To reference a parameter shared from another Amazon Web Services account:

        • resolve:ssm:parameter-ARN

        • resolve:ssm:parameter-ARN:version-number

        • resolve:ssm:parameter-ARN:label

        For more information, see Use a Systems Manager parameter instead of an AMI ID in the Amazon EC2 User Guide.

        This parameter is only available for fleets of type instant. For fleets of type maintain and request, you must specify the AMI ID in the launch template.

        Returns:
        The ID of the AMI in the format ami-17characters00000.

        Alternatively, you can specify a Systems Manager parameter, using one of the following formats. The Systems Manager parameter will resolve to an AMI ID on launch.

        To reference a public parameter:

        • resolve:ssm:public-parameter

        To reference a parameter stored in the same account:

        • resolve:ssm:parameter-name

        • resolve:ssm:parameter-name:version-number

        • resolve:ssm:parameter-name:label

        To reference a parameter shared from another Amazon Web Services account:

        • resolve:ssm:parameter-ARN

        • resolve:ssm:parameter-ARN:version-number

        • resolve:ssm:parameter-ARN:label

        For more information, see Use a Systems Manager parameter instead of an AMI ID in the Amazon EC2 User Guide.

        This parameter is only available for fleets of type instant. For fleets of type maintain and request, you must specify the AMI ID in the launch template.

      • availabilityZoneId

        public final String availabilityZoneId()

        The ID of the Availability Zone in which to launch the instances. For example, use2-az1.

        Either AvailabilityZone or AvailabilityZoneId must be specified in the request, but not both.

        Returns:
        The ID of the Availability Zone in which to launch the instances. For example, use2-az1.

        Either AvailabilityZone or AvailabilityZoneId must be specified in the request, but not both.

      • hashCode

        public final int hashCode()
        Overrides:
        hashCode in class Object
      • equals

        public final boolean equals​(Object obj)
        Overrides:
        equals in class Object
      • 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.
        Overrides:
        toString in class Object
      • getValueForField

        public final <T> Optional<T> getValueForField​(String fieldName,
                                                      Class<T> clazz)