1. Packages
  2. Spotinst
  3. API Docs
  4. ecs
  5. Ocean
Spotinst v3.53.0 published on Friday, Sep 22, 2023 by Pulumi

spotinst.ecs.Ocean

Explore with Pulumi AI

spotinst logo
Spotinst v3.53.0 published on Friday, Sep 22, 2023 by Pulumi

    Manages a Spotinst Ocean ECS resource.

    Example Usage

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    
    return await Deployment.RunAsync(() => 
    {
        return new Dictionary<string, object?>
        {
            ["oceanId"] = spotinst_ocean_ecs.Example.Id,
        };
    });
    
    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		ctx.Export("oceanId", spotinst_ocean_ecs.Example.Id)
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.spotinst.ecs.Ocean;
    import com.pulumi.spotinst.ecs.OceanArgs;
    import com.pulumi.spotinst.ecs.inputs.OceanBlockDeviceMappingArgs;
    import com.pulumi.spotinst.ecs.inputs.OceanBlockDeviceMappingEbsArgs;
    import com.pulumi.spotinst.ecs.inputs.OceanBlockDeviceMappingEbsDynamicVolumeSizeArgs;
    import com.pulumi.spotinst.ecs.inputs.OceanClusterOrientationArgs;
    import com.pulumi.spotinst.ecs.inputs.OceanInstanceMetadataOptionsArgs;
    import com.pulumi.spotinst.ecs.inputs.OceanLoggingArgs;
    import com.pulumi.spotinst.ecs.inputs.OceanLoggingExportArgs;
    import com.pulumi.spotinst.ecs.inputs.OceanOptimizeImagesArgs;
    import com.pulumi.spotinst.ecs.inputs.OceanTagArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var example = new Ocean("example", OceanArgs.builder()        
                .associatePublicIpAddress(false)
                .blockDeviceMappings(OceanBlockDeviceMappingArgs.builder()
                    .deviceName("/dev/xvda1")
                    .ebs(OceanBlockDeviceMappingEbsArgs.builder()
                        .deleteOnTermination("true")
                        .dynamicVolumeSize(OceanBlockDeviceMappingEbsDynamicVolumeSizeArgs.builder()
                            .baseSize(50)
                            .resource("CPU")
                            .sizePerResourceUnit(20)
                            .build())
                        .encrypted("false")
                        .throughput(500)
                        .volumeSize(50)
                        .volumeType("gp2")
                        .build())
                    .build())
                .clusterName("sample-ecs-cluster")
                .clusterOrientations(OceanClusterOrientationArgs.builder()
                    .availabilityVsCost("balanced")
                    .build())
                .desiredCapacity("0")
                .drainingTimeout(120)
                .ebsOptimized(true)
                .iamInstanceProfile("iam-profile")
                .imageId("ami-12345")
                .instanceTypes(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))
                .instanceMetadataOptions(OceanInstanceMetadataOptionsArgs.builder()
                    .httpPutResponseHopLimit(10)
                    .httpTokens("required")
                    .build())
                .keyPair("KeyPair")
                .logging(OceanLoggingArgs.builder()
                    .export(OceanLoggingExportArgs.builder()
                        .s3(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))
                        .build())
                    .build())
                .maxSize("1")
                .minSize("0")
                .monitoring(true)
                .optimizeImages(OceanOptimizeImagesArgs.builder()
                    .performAt("timeWindow")
                    .shouldOptimizeEcsAmi(true)
                    .timeWindows(                
                        "Sun:02:00-Sun:12:00",
                        "Sun:05:00-Sun:16:00")
                    .build())
                .region("us-west-2")
                .securityGroupIds("sg-12345")
                .spotPercentage(100)
                .subnetIds("subnet-12345")
                .tags(OceanTagArgs.builder()
                    .key("fakeKey")
                    .value("fakeValue")
                    .build())
                .useAsTemplateOnly(true)
                .userData("echo hello world")
                .utilizeCommitments(false)
                .utilizeReservedInstances(false)
                .build());
    
        }
    }
    
    import pulumi
    
    pulumi.export("oceanId", spotinst_ocean_ecs["example"]["id"])
    
    import * as pulumi from "@pulumi/pulumi";
    
    export const oceanId = spotinst_ocean_ecs.example.id;
    
    resources:
      example:
        type: spotinst:ecs:Ocean
        properties:
          associatePublicIpAddress: false
          blockDeviceMappings:
            - deviceName: /dev/xvda1
              ebs:
                deleteOnTermination: 'true'
                dynamicVolumeSize:
                  baseSize: 50
                  resource: CPU
                  sizePerResourceUnit: 20
                encrypted: 'false'
                throughput: 500
                volumeSize: 50
                volumeType: gp2
          clusterName: sample-ecs-cluster
          clusterOrientations:
            - availabilityVsCost: balanced
          desiredCapacity: '0'
          drainingTimeout: 120
          ebsOptimized: true
          iamInstanceProfile: iam-profile
          imageId: ami-12345
          instanceTypes:
            - filters:
                - architectures:
                    - x86_64
                    - i386
                  categories:
                    - Accelerated_computing
                    - Compute_optimized
                  diskTypes:
                    - EBS
                    - SSD
                  excludeFamilies:
                    - m*
                  excludeMetal: false
                  hypervisor:
                    - xen
                  includeFamilies:
                    - c*
                    - t*
                  isEnaSupported: false
                  maxGpu: 4
                  maxMemoryGib: 16
                  maxNetworkPerformance: 20
                  maxVcpu: 16
                  minEnis: 2
                  minGpu: 0
                  minMemoryGib: 8
                  minNetworkPerformance: 2
                  minVcpu: 2
                  rootDeviceTypes:
                    - ebs
                  virtualizationTypes:
                    - hvm
          instanceMetadataOptions:
            httpPutResponseHopLimit: 10
            httpTokens: required
          keyPair: KeyPair
          logging:
            export:
              s3:
                - id: di-abcd123
          maxSize: '1'
          minSize: '0'
          monitoring: true
          optimizeImages:
            performAt: timeWindow
            shouldOptimizeEcsAmi: true
            timeWindows:
              - Sun:02:00-Sun:12:00
              - Sun:05:00-Sun:16:00
          region: us-west-2
          securityGroupIds:
            - sg-12345
          spotPercentage: 100
          subnetIds:
            - subnet-12345
          tags:
            - key: fakeKey
              value: fakeValue
          useAsTemplateOnly: true
          userData: echo hello world
          utilizeCommitments: false
          utilizeReservedInstances: false
    

    Coming soon!

    Coming soon!

    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            ctx.export("oceanId", spotinst_ocean_ecs.example().id());
        }
    }
    

    Coming soon!

    Coming soon!

    outputs:
      oceanId: ${spotinst_ocean_ecs.example.id}
    

    Create Ocean Resource

    new Ocean(name: string, args: OceanArgs, opts?: CustomResourceOptions);
    @overload
    def Ocean(resource_name: str,
              opts: Optional[ResourceOptions] = None,
              associate_public_ip_address: Optional[bool] = None,
              autoscaler: Optional[OceanAutoscalerArgs] = None,
              blacklists: Optional[Sequence[str]] = None,
              block_device_mappings: Optional[Sequence[OceanBlockDeviceMappingArgs]] = None,
              cluster_name: Optional[str] = None,
              cluster_orientations: Optional[Sequence[OceanClusterOrientationArgs]] = None,
              desired_capacity: Optional[int] = None,
              draining_timeout: Optional[int] = None,
              ebs_optimized: Optional[bool] = None,
              filters: Optional[OceanFiltersArgs] = None,
              iam_instance_profile: Optional[str] = None,
              image_id: Optional[str] = None,
              instance_metadata_options: Optional[OceanInstanceMetadataOptionsArgs] = None,
              key_pair: Optional[str] = None,
              logging: Optional[OceanLoggingArgs] = None,
              max_size: Optional[int] = None,
              min_size: Optional[int] = None,
              monitoring: Optional[bool] = None,
              name: Optional[str] = None,
              optimize_images: Optional[OceanOptimizeImagesArgs] = None,
              region: Optional[str] = None,
              scheduled_tasks: Optional[Sequence[OceanScheduledTaskArgs]] = None,
              security_group_ids: Optional[Sequence[str]] = None,
              spot_percentage: Optional[int] = None,
              subnet_ids: Optional[Sequence[str]] = None,
              tags: Optional[Sequence[OceanTagArgs]] = None,
              update_policy: Optional[OceanUpdatePolicyArgs] = None,
              use_as_template_only: Optional[bool] = None,
              user_data: Optional[str] = None,
              utilize_commitments: Optional[bool] = None,
              utilize_reserved_instances: Optional[bool] = None,
              whitelists: Optional[Sequence[str]] = None)
    @overload
    def Ocean(resource_name: str,
              args: OceanArgs,
              opts: Optional[ResourceOptions] = None)
    func NewOcean(ctx *Context, name string, args OceanArgs, opts ...ResourceOption) (*Ocean, error)
    public Ocean(string name, OceanArgs args, CustomResourceOptions? opts = null)
    public Ocean(String name, OceanArgs args)
    public Ocean(String name, OceanArgs args, CustomResourceOptions options)
    
    type: spotinst:ecs:Ocean
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    
    name string
    The unique name of the resource.
    args OceanArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args OceanArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args OceanArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args OceanArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args OceanArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Ocean Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    The Ocean resource accepts the following input properties:

    ClusterName string

    The name of the ECS cluster.

    Region string

    The region the cluster will run in.

    SecurityGroupIds List<string>

    One or more security group ids.

    SubnetIds List<string>

    A comma-separated list of subnet identifiers for the Ocean cluster. Subnet IDs should be configured with auto assign public ip.

    AssociatePublicIpAddress bool

    Configure public IP address allocation.

    Autoscaler Pulumi.SpotInst.Ecs.Inputs.OceanAutoscaler

    Describes the Ocean ECS autoscaler.

    Blacklists List<string>

    Instance types not allowed in the Ocean cluster. Cannot be configured if whitelist/filters is configured.

    BlockDeviceMappings List<Pulumi.SpotInst.Ecs.Inputs.OceanBlockDeviceMapping>

    Object. List of block devices that are exposed to the instance, specify either virtual devices and EBS volumes.

    ClusterOrientations List<Pulumi.SpotInst.Ecs.Inputs.OceanClusterOrientation>
    DesiredCapacity int

    The number of instances to launch and maintain in the cluster.

    DrainingTimeout int

    The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.

    EbsOptimized bool

    Enable EBS optimized for cluster. Flag will enable optimized capacity for high bandwidth connectivity to the EB service for non EBS optimized instance types. For instances that are EBS optimized this flag will be ignored.

    Filters Pulumi.SpotInst.Ecs.Inputs.OceanFilters

    List of filters. The Instance types that match with all filters compose the Ocean's whitelist parameter. Cannot be configured together with whitelist/blacklist.

    IamInstanceProfile string

    The instance profile iam role.

    ImageId string

    ID of the image used to launch the instances.

    InstanceMetadataOptions Pulumi.SpotInst.Ecs.Inputs.OceanInstanceMetadataOptions

    Ocean instance metadata options object for IMDSv2.

    KeyPair string

    The key pair to attach the instances.

    Logging Pulumi.SpotInst.Ecs.Inputs.OceanLogging

    Logging configuration.

    MaxSize int

    The upper limit of instances the cluster can scale up to.

    MinSize int

    The lower limit of instances the cluster can scale down to.

    Monitoring bool

    Enable detailed monitoring for cluster. Flag will enable Cloud Watch detailed monitoring (one minute increments). Note: there are additional hourly costs for this service based on the region used.

    Name string

    The Ocean cluster name.

    OptimizeImages Pulumi.SpotInst.Ecs.Inputs.OceanOptimizeImages

    Object. Set auto image update settings.

    ScheduledTasks List<Pulumi.SpotInst.Ecs.Inputs.OceanScheduledTask>

    While used, you can control whether the group should perform a deployment after an update to the configuration.

    SpotPercentage int

    The percentage of Spot instances that would spin up from the desired_capacity number.

    Tags List<Pulumi.SpotInst.Ecs.Inputs.OceanTag>

    Optionally adds tags to instances launched in an Ocean cluster.

    UpdatePolicy Pulumi.SpotInst.Ecs.Inputs.OceanUpdatePolicy
    UseAsTemplateOnly bool

    launch specification defined on the Ocean object will function only as a template for virtual node groups.

    UserData string

    Base64-encoded MIME user data to make available to the instances.

    UtilizeCommitments bool

    If savings plans exist, Ocean will utilize them before launching Spot instances.

    UtilizeReservedInstances bool

    If Reserved instances exist, Ocean will utilize them before launching Spot instances.

    Whitelists List<string>

    Instance types allowed in the Ocean cluster. Cannot be configured if blacklist/filters is configured.

    ClusterName string

    The name of the ECS cluster.

    Region string

    The region the cluster will run in.

    SecurityGroupIds []string

    One or more security group ids.

    SubnetIds []string

    A comma-separated list of subnet identifiers for the Ocean cluster. Subnet IDs should be configured with auto assign public ip.

    AssociatePublicIpAddress bool

    Configure public IP address allocation.

    Autoscaler OceanAutoscalerArgs

    Describes the Ocean ECS autoscaler.

    Blacklists []string

    Instance types not allowed in the Ocean cluster. Cannot be configured if whitelist/filters is configured.

    BlockDeviceMappings []OceanBlockDeviceMappingArgs

    Object. List of block devices that are exposed to the instance, specify either virtual devices and EBS volumes.

    ClusterOrientations []OceanClusterOrientationArgs
    DesiredCapacity int

    The number of instances to launch and maintain in the cluster.

    DrainingTimeout int

    The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.

    EbsOptimized bool

    Enable EBS optimized for cluster. Flag will enable optimized capacity for high bandwidth connectivity to the EB service for non EBS optimized instance types. For instances that are EBS optimized this flag will be ignored.

    Filters OceanFiltersArgs

    List of filters. The Instance types that match with all filters compose the Ocean's whitelist parameter. Cannot be configured together with whitelist/blacklist.

    IamInstanceProfile string

    The instance profile iam role.

    ImageId string

    ID of the image used to launch the instances.

    InstanceMetadataOptions OceanInstanceMetadataOptionsArgs

    Ocean instance metadata options object for IMDSv2.

    KeyPair string

    The key pair to attach the instances.

    Logging OceanLoggingArgs

    Logging configuration.

    MaxSize int

    The upper limit of instances the cluster can scale up to.

    MinSize int

    The lower limit of instances the cluster can scale down to.

    Monitoring bool

    Enable detailed monitoring for cluster. Flag will enable Cloud Watch detailed monitoring (one minute increments). Note: there are additional hourly costs for this service based on the region used.

    Name string

    The Ocean cluster name.

    OptimizeImages OceanOptimizeImagesArgs

    Object. Set auto image update settings.

    ScheduledTasks []OceanScheduledTaskArgs

    While used, you can control whether the group should perform a deployment after an update to the configuration.

    SpotPercentage int

    The percentage of Spot instances that would spin up from the desired_capacity number.

    Tags []OceanTagArgs

    Optionally adds tags to instances launched in an Ocean cluster.

    UpdatePolicy OceanUpdatePolicyArgs
    UseAsTemplateOnly bool

    launch specification defined on the Ocean object will function only as a template for virtual node groups.

    UserData string

    Base64-encoded MIME user data to make available to the instances.

    UtilizeCommitments bool

    If savings plans exist, Ocean will utilize them before launching Spot instances.

    UtilizeReservedInstances bool

    If Reserved instances exist, Ocean will utilize them before launching Spot instances.

    Whitelists []string

    Instance types allowed in the Ocean cluster. Cannot be configured if blacklist/filters is configured.

    clusterName String

    The name of the ECS cluster.

    region String

    The region the cluster will run in.

    securityGroupIds List<String>

    One or more security group ids.

    subnetIds List<String>

    A comma-separated list of subnet identifiers for the Ocean cluster. Subnet IDs should be configured with auto assign public ip.

    associatePublicIpAddress Boolean

    Configure public IP address allocation.

    autoscaler OceanAutoscaler

    Describes the Ocean ECS autoscaler.

    blacklists List<String>

    Instance types not allowed in the Ocean cluster. Cannot be configured if whitelist/filters is configured.

    blockDeviceMappings List<OceanBlockDeviceMapping>

    Object. List of block devices that are exposed to the instance, specify either virtual devices and EBS volumes.

    clusterOrientations List<OceanClusterOrientation>
    desiredCapacity Integer

    The number of instances to launch and maintain in the cluster.

    drainingTimeout Integer

    The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.

    ebsOptimized Boolean

    Enable EBS optimized for cluster. Flag will enable optimized capacity for high bandwidth connectivity to the EB service for non EBS optimized instance types. For instances that are EBS optimized this flag will be ignored.

    filters OceanFilters

    List of filters. The Instance types that match with all filters compose the Ocean's whitelist parameter. Cannot be configured together with whitelist/blacklist.

    iamInstanceProfile String

    The instance profile iam role.

    imageId String

    ID of the image used to launch the instances.

    instanceMetadataOptions OceanInstanceMetadataOptions

    Ocean instance metadata options object for IMDSv2.

    keyPair String

    The key pair to attach the instances.

    logging OceanLogging

    Logging configuration.

    maxSize Integer

    The upper limit of instances the cluster can scale up to.

    minSize Integer

    The lower limit of instances the cluster can scale down to.

    monitoring Boolean

    Enable detailed monitoring for cluster. Flag will enable Cloud Watch detailed monitoring (one minute increments). Note: there are additional hourly costs for this service based on the region used.

    name String

    The Ocean cluster name.

    optimizeImages OceanOptimizeImages

    Object. Set auto image update settings.

    scheduledTasks List<OceanScheduledTask>

    While used, you can control whether the group should perform a deployment after an update to the configuration.

    spotPercentage Integer

    The percentage of Spot instances that would spin up from the desired_capacity number.

    tags List<OceanTag>

    Optionally adds tags to instances launched in an Ocean cluster.

    updatePolicy OceanUpdatePolicy
    useAsTemplateOnly Boolean

    launch specification defined on the Ocean object will function only as a template for virtual node groups.

    userData String

    Base64-encoded MIME user data to make available to the instances.

    utilizeCommitments Boolean

    If savings plans exist, Ocean will utilize them before launching Spot instances.

    utilizeReservedInstances Boolean

    If Reserved instances exist, Ocean will utilize them before launching Spot instances.

    whitelists List<String>

    Instance types allowed in the Ocean cluster. Cannot be configured if blacklist/filters is configured.

    clusterName string

    The name of the ECS cluster.

    region string

    The region the cluster will run in.

    securityGroupIds string[]

    One or more security group ids.

    subnetIds string[]

    A comma-separated list of subnet identifiers for the Ocean cluster. Subnet IDs should be configured with auto assign public ip.

    associatePublicIpAddress boolean

    Configure public IP address allocation.

    autoscaler OceanAutoscaler

    Describes the Ocean ECS autoscaler.

    blacklists string[]

    Instance types not allowed in the Ocean cluster. Cannot be configured if whitelist/filters is configured.

    blockDeviceMappings OceanBlockDeviceMapping[]

    Object. List of block devices that are exposed to the instance, specify either virtual devices and EBS volumes.

    clusterOrientations OceanClusterOrientation[]
    desiredCapacity number

    The number of instances to launch and maintain in the cluster.

    drainingTimeout number

    The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.

    ebsOptimized boolean

    Enable EBS optimized for cluster. Flag will enable optimized capacity for high bandwidth connectivity to the EB service for non EBS optimized instance types. For instances that are EBS optimized this flag will be ignored.

    filters OceanFilters

    List of filters. The Instance types that match with all filters compose the Ocean's whitelist parameter. Cannot be configured together with whitelist/blacklist.

    iamInstanceProfile string

    The instance profile iam role.

    imageId string

    ID of the image used to launch the instances.

    instanceMetadataOptions OceanInstanceMetadataOptions

    Ocean instance metadata options object for IMDSv2.

    keyPair string

    The key pair to attach the instances.

    logging OceanLogging

    Logging configuration.

    maxSize number

    The upper limit of instances the cluster can scale up to.

    minSize number

    The lower limit of instances the cluster can scale down to.

    monitoring boolean

    Enable detailed monitoring for cluster. Flag will enable Cloud Watch detailed monitoring (one minute increments). Note: there are additional hourly costs for this service based on the region used.

    name string

    The Ocean cluster name.

    optimizeImages OceanOptimizeImages

    Object. Set auto image update settings.

    scheduledTasks OceanScheduledTask[]

    While used, you can control whether the group should perform a deployment after an update to the configuration.

    spotPercentage number

    The percentage of Spot instances that would spin up from the desired_capacity number.

    tags OceanTag[]

    Optionally adds tags to instances launched in an Ocean cluster.

    updatePolicy OceanUpdatePolicy
    useAsTemplateOnly boolean

    launch specification defined on the Ocean object will function only as a template for virtual node groups.

    userData string

    Base64-encoded MIME user data to make available to the instances.

    utilizeCommitments boolean

    If savings plans exist, Ocean will utilize them before launching Spot instances.

    utilizeReservedInstances boolean

    If Reserved instances exist, Ocean will utilize them before launching Spot instances.

    whitelists string[]

    Instance types allowed in the Ocean cluster. Cannot be configured if blacklist/filters is configured.

    cluster_name str

    The name of the ECS cluster.

    region str

    The region the cluster will run in.

    security_group_ids Sequence[str]

    One or more security group ids.

    subnet_ids Sequence[str]

    A comma-separated list of subnet identifiers for the Ocean cluster. Subnet IDs should be configured with auto assign public ip.

    associate_public_ip_address bool

    Configure public IP address allocation.

    autoscaler OceanAutoscalerArgs

    Describes the Ocean ECS autoscaler.

    blacklists Sequence[str]

    Instance types not allowed in the Ocean cluster. Cannot be configured if whitelist/filters is configured.

    block_device_mappings Sequence[OceanBlockDeviceMappingArgs]

    Object. List of block devices that are exposed to the instance, specify either virtual devices and EBS volumes.

    cluster_orientations Sequence[OceanClusterOrientationArgs]
    desired_capacity int

    The number of instances to launch and maintain in the cluster.

    draining_timeout int

    The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.

    ebs_optimized bool

    Enable EBS optimized for cluster. Flag will enable optimized capacity for high bandwidth connectivity to the EB service for non EBS optimized instance types. For instances that are EBS optimized this flag will be ignored.

    filters OceanFiltersArgs

    List of filters. The Instance types that match with all filters compose the Ocean's whitelist parameter. Cannot be configured together with whitelist/blacklist.

    iam_instance_profile str

    The instance profile iam role.

    image_id str

    ID of the image used to launch the instances.

    instance_metadata_options OceanInstanceMetadataOptionsArgs

    Ocean instance metadata options object for IMDSv2.

    key_pair str

    The key pair to attach the instances.

    logging OceanLoggingArgs

    Logging configuration.

    max_size int

    The upper limit of instances the cluster can scale up to.

    min_size int

    The lower limit of instances the cluster can scale down to.

    monitoring bool

    Enable detailed monitoring for cluster. Flag will enable Cloud Watch detailed monitoring (one minute increments). Note: there are additional hourly costs for this service based on the region used.

    name str

    The Ocean cluster name.

    optimize_images OceanOptimizeImagesArgs

    Object. Set auto image update settings.

    scheduled_tasks Sequence[OceanScheduledTaskArgs]

    While used, you can control whether the group should perform a deployment after an update to the configuration.

    spot_percentage int

    The percentage of Spot instances that would spin up from the desired_capacity number.

    tags Sequence[OceanTagArgs]

    Optionally adds tags to instances launched in an Ocean cluster.

    update_policy OceanUpdatePolicyArgs
    use_as_template_only bool

    launch specification defined on the Ocean object will function only as a template for virtual node groups.

    user_data str

    Base64-encoded MIME user data to make available to the instances.

    utilize_commitments bool

    If savings plans exist, Ocean will utilize them before launching Spot instances.

    utilize_reserved_instances bool

    If Reserved instances exist, Ocean will utilize them before launching Spot instances.

    whitelists Sequence[str]

    Instance types allowed in the Ocean cluster. Cannot be configured if blacklist/filters is configured.

    clusterName String

    The name of the ECS cluster.

    region String

    The region the cluster will run in.

    securityGroupIds List<String>

    One or more security group ids.

    subnetIds List<String>

    A comma-separated list of subnet identifiers for the Ocean cluster. Subnet IDs should be configured with auto assign public ip.

    associatePublicIpAddress Boolean

    Configure public IP address allocation.

    autoscaler Property Map

    Describes the Ocean ECS autoscaler.

    blacklists List<String>

    Instance types not allowed in the Ocean cluster. Cannot be configured if whitelist/filters is configured.

    blockDeviceMappings List<Property Map>

    Object. List of block devices that are exposed to the instance, specify either virtual devices and EBS volumes.

    clusterOrientations List<Property Map>
    desiredCapacity Number

    The number of instances to launch and maintain in the cluster.

    drainingTimeout Number

    The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.

    ebsOptimized Boolean

    Enable EBS optimized for cluster. Flag will enable optimized capacity for high bandwidth connectivity to the EB service for non EBS optimized instance types. For instances that are EBS optimized this flag will be ignored.

    filters Property Map

    List of filters. The Instance types that match with all filters compose the Ocean's whitelist parameter. Cannot be configured together with whitelist/blacklist.

    iamInstanceProfile String

    The instance profile iam role.

    imageId String

    ID of the image used to launch the instances.

    instanceMetadataOptions Property Map

    Ocean instance metadata options object for IMDSv2.

    keyPair String

    The key pair to attach the instances.

    logging Property Map

    Logging configuration.

    maxSize Number

    The upper limit of instances the cluster can scale up to.

    minSize Number

    The lower limit of instances the cluster can scale down to.

    monitoring Boolean

    Enable detailed monitoring for cluster. Flag will enable Cloud Watch detailed monitoring (one minute increments). Note: there are additional hourly costs for this service based on the region used.

    name String

    The Ocean cluster name.

    optimizeImages Property Map

    Object. Set auto image update settings.

    scheduledTasks List<Property Map>

    While used, you can control whether the group should perform a deployment after an update to the configuration.

    spotPercentage Number

    The percentage of Spot instances that would spin up from the desired_capacity number.

    tags List<Property Map>

    Optionally adds tags to instances launched in an Ocean cluster.

    updatePolicy Property Map
    useAsTemplateOnly Boolean

    launch specification defined on the Ocean object will function only as a template for virtual node groups.

    userData String

    Base64-encoded MIME user data to make available to the instances.

    utilizeCommitments Boolean

    If savings plans exist, Ocean will utilize them before launching Spot instances.

    utilizeReservedInstances Boolean

    If Reserved instances exist, Ocean will utilize them before launching Spot instances.

    whitelists List<String>

    Instance types allowed in the Ocean cluster. Cannot be configured if blacklist/filters is configured.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the Ocean resource produces the following output properties:

    Id string

    The provider-assigned unique ID for this managed resource.

    Id string

    The provider-assigned unique ID for this managed resource.

    id String

    The provider-assigned unique ID for this managed resource.

    id string

    The provider-assigned unique ID for this managed resource.

    id str

    The provider-assigned unique ID for this managed resource.

    id String

    The provider-assigned unique ID for this managed resource.

    Look up Existing Ocean Resource

    Get an existing Ocean resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: OceanState, opts?: CustomResourceOptions): Ocean
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            associate_public_ip_address: Optional[bool] = None,
            autoscaler: Optional[OceanAutoscalerArgs] = None,
            blacklists: Optional[Sequence[str]] = None,
            block_device_mappings: Optional[Sequence[OceanBlockDeviceMappingArgs]] = None,
            cluster_name: Optional[str] = None,
            cluster_orientations: Optional[Sequence[OceanClusterOrientationArgs]] = None,
            desired_capacity: Optional[int] = None,
            draining_timeout: Optional[int] = None,
            ebs_optimized: Optional[bool] = None,
            filters: Optional[OceanFiltersArgs] = None,
            iam_instance_profile: Optional[str] = None,
            image_id: Optional[str] = None,
            instance_metadata_options: Optional[OceanInstanceMetadataOptionsArgs] = None,
            key_pair: Optional[str] = None,
            logging: Optional[OceanLoggingArgs] = None,
            max_size: Optional[int] = None,
            min_size: Optional[int] = None,
            monitoring: Optional[bool] = None,
            name: Optional[str] = None,
            optimize_images: Optional[OceanOptimizeImagesArgs] = None,
            region: Optional[str] = None,
            scheduled_tasks: Optional[Sequence[OceanScheduledTaskArgs]] = None,
            security_group_ids: Optional[Sequence[str]] = None,
            spot_percentage: Optional[int] = None,
            subnet_ids: Optional[Sequence[str]] = None,
            tags: Optional[Sequence[OceanTagArgs]] = None,
            update_policy: Optional[OceanUpdatePolicyArgs] = None,
            use_as_template_only: Optional[bool] = None,
            user_data: Optional[str] = None,
            utilize_commitments: Optional[bool] = None,
            utilize_reserved_instances: Optional[bool] = None,
            whitelists: Optional[Sequence[str]] = None) -> Ocean
    func GetOcean(ctx *Context, name string, id IDInput, state *OceanState, opts ...ResourceOption) (*Ocean, error)
    public static Ocean Get(string name, Input<string> id, OceanState? state, CustomResourceOptions? opts = null)
    public static Ocean get(String name, Output<String> id, OceanState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    AssociatePublicIpAddress bool

    Configure public IP address allocation.

    Autoscaler Pulumi.SpotInst.Ecs.Inputs.OceanAutoscaler

    Describes the Ocean ECS autoscaler.

    Blacklists List<string>

    Instance types not allowed in the Ocean cluster. Cannot be configured if whitelist/filters is configured.

    BlockDeviceMappings List<Pulumi.SpotInst.Ecs.Inputs.OceanBlockDeviceMapping>

    Object. List of block devices that are exposed to the instance, specify either virtual devices and EBS volumes.

    ClusterName string

    The name of the ECS cluster.

    ClusterOrientations List<Pulumi.SpotInst.Ecs.Inputs.OceanClusterOrientation>
    DesiredCapacity int

    The number of instances to launch and maintain in the cluster.

    DrainingTimeout int

    The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.

    EbsOptimized bool

    Enable EBS optimized for cluster. Flag will enable optimized capacity for high bandwidth connectivity to the EB service for non EBS optimized instance types. For instances that are EBS optimized this flag will be ignored.

    Filters Pulumi.SpotInst.Ecs.Inputs.OceanFilters

    List of filters. The Instance types that match with all filters compose the Ocean's whitelist parameter. Cannot be configured together with whitelist/blacklist.

    IamInstanceProfile string

    The instance profile iam role.

    ImageId string

    ID of the image used to launch the instances.

    InstanceMetadataOptions Pulumi.SpotInst.Ecs.Inputs.OceanInstanceMetadataOptions

    Ocean instance metadata options object for IMDSv2.

    KeyPair string

    The key pair to attach the instances.

    Logging Pulumi.SpotInst.Ecs.Inputs.OceanLogging

    Logging configuration.

    MaxSize int

    The upper limit of instances the cluster can scale up to.

    MinSize int

    The lower limit of instances the cluster can scale down to.

    Monitoring bool

    Enable detailed monitoring for cluster. Flag will enable Cloud Watch detailed monitoring (one minute increments). Note: there are additional hourly costs for this service based on the region used.

    Name string

    The Ocean cluster name.

    OptimizeImages Pulumi.SpotInst.Ecs.Inputs.OceanOptimizeImages

    Object. Set auto image update settings.

    Region string

    The region the cluster will run in.

    ScheduledTasks List<Pulumi.SpotInst.Ecs.Inputs.OceanScheduledTask>

    While used, you can control whether the group should perform a deployment after an update to the configuration.

    SecurityGroupIds List<string>

    One or more security group ids.

    SpotPercentage int

    The percentage of Spot instances that would spin up from the desired_capacity number.

    SubnetIds List<string>

    A comma-separated list of subnet identifiers for the Ocean cluster. Subnet IDs should be configured with auto assign public ip.

    Tags List<Pulumi.SpotInst.Ecs.Inputs.OceanTag>

    Optionally adds tags to instances launched in an Ocean cluster.

    UpdatePolicy Pulumi.SpotInst.Ecs.Inputs.OceanUpdatePolicy
    UseAsTemplateOnly bool

    launch specification defined on the Ocean object will function only as a template for virtual node groups.

    UserData string

    Base64-encoded MIME user data to make available to the instances.

    UtilizeCommitments bool

    If savings plans exist, Ocean will utilize them before launching Spot instances.

    UtilizeReservedInstances bool

    If Reserved instances exist, Ocean will utilize them before launching Spot instances.

    Whitelists List<string>

    Instance types allowed in the Ocean cluster. Cannot be configured if blacklist/filters is configured.

    AssociatePublicIpAddress bool

    Configure public IP address allocation.

    Autoscaler OceanAutoscalerArgs

    Describes the Ocean ECS autoscaler.

    Blacklists []string

    Instance types not allowed in the Ocean cluster. Cannot be configured if whitelist/filters is configured.

    BlockDeviceMappings []OceanBlockDeviceMappingArgs

    Object. List of block devices that are exposed to the instance, specify either virtual devices and EBS volumes.

    ClusterName string

    The name of the ECS cluster.

    ClusterOrientations []OceanClusterOrientationArgs
    DesiredCapacity int

    The number of instances to launch and maintain in the cluster.

    DrainingTimeout int

    The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.

    EbsOptimized bool

    Enable EBS optimized for cluster. Flag will enable optimized capacity for high bandwidth connectivity to the EB service for non EBS optimized instance types. For instances that are EBS optimized this flag will be ignored.

    Filters OceanFiltersArgs

    List of filters. The Instance types that match with all filters compose the Ocean's whitelist parameter. Cannot be configured together with whitelist/blacklist.

    IamInstanceProfile string

    The instance profile iam role.

    ImageId string

    ID of the image used to launch the instances.

    InstanceMetadataOptions OceanInstanceMetadataOptionsArgs

    Ocean instance metadata options object for IMDSv2.

    KeyPair string

    The key pair to attach the instances.

    Logging OceanLoggingArgs

    Logging configuration.

    MaxSize int

    The upper limit of instances the cluster can scale up to.

    MinSize int

    The lower limit of instances the cluster can scale down to.

    Monitoring bool

    Enable detailed monitoring for cluster. Flag will enable Cloud Watch detailed monitoring (one minute increments). Note: there are additional hourly costs for this service based on the region used.

    Name string

    The Ocean cluster name.

    OptimizeImages OceanOptimizeImagesArgs

    Object. Set auto image update settings.

    Region string

    The region the cluster will run in.

    ScheduledTasks []OceanScheduledTaskArgs

    While used, you can control whether the group should perform a deployment after an update to the configuration.

    SecurityGroupIds []string

    One or more security group ids.

    SpotPercentage int

    The percentage of Spot instances that would spin up from the desired_capacity number.

    SubnetIds []string

    A comma-separated list of subnet identifiers for the Ocean cluster. Subnet IDs should be configured with auto assign public ip.

    Tags []OceanTagArgs

    Optionally adds tags to instances launched in an Ocean cluster.

    UpdatePolicy OceanUpdatePolicyArgs
    UseAsTemplateOnly bool

    launch specification defined on the Ocean object will function only as a template for virtual node groups.

    UserData string

    Base64-encoded MIME user data to make available to the instances.

    UtilizeCommitments bool

    If savings plans exist, Ocean will utilize them before launching Spot instances.

    UtilizeReservedInstances bool

    If Reserved instances exist, Ocean will utilize them before launching Spot instances.

    Whitelists []string

    Instance types allowed in the Ocean cluster. Cannot be configured if blacklist/filters is configured.

    associatePublicIpAddress Boolean

    Configure public IP address allocation.

    autoscaler OceanAutoscaler

    Describes the Ocean ECS autoscaler.

    blacklists List<String>

    Instance types not allowed in the Ocean cluster. Cannot be configured if whitelist/filters is configured.

    blockDeviceMappings List<OceanBlockDeviceMapping>

    Object. List of block devices that are exposed to the instance, specify either virtual devices and EBS volumes.

    clusterName String

    The name of the ECS cluster.

    clusterOrientations List<OceanClusterOrientation>
    desiredCapacity Integer

    The number of instances to launch and maintain in the cluster.

    drainingTimeout Integer

    The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.

    ebsOptimized Boolean

    Enable EBS optimized for cluster. Flag will enable optimized capacity for high bandwidth connectivity to the EB service for non EBS optimized instance types. For instances that are EBS optimized this flag will be ignored.

    filters OceanFilters

    List of filters. The Instance types that match with all filters compose the Ocean's whitelist parameter. Cannot be configured together with whitelist/blacklist.

    iamInstanceProfile String

    The instance profile iam role.

    imageId String

    ID of the image used to launch the instances.

    instanceMetadataOptions OceanInstanceMetadataOptions

    Ocean instance metadata options object for IMDSv2.

    keyPair String

    The key pair to attach the instances.

    logging OceanLogging

    Logging configuration.

    maxSize Integer

    The upper limit of instances the cluster can scale up to.

    minSize Integer

    The lower limit of instances the cluster can scale down to.

    monitoring Boolean

    Enable detailed monitoring for cluster. Flag will enable Cloud Watch detailed monitoring (one minute increments). Note: there are additional hourly costs for this service based on the region used.

    name String

    The Ocean cluster name.

    optimizeImages OceanOptimizeImages

    Object. Set auto image update settings.

    region String

    The region the cluster will run in.

    scheduledTasks List<OceanScheduledTask>

    While used, you can control whether the group should perform a deployment after an update to the configuration.

    securityGroupIds List<String>

    One or more security group ids.

    spotPercentage Integer

    The percentage of Spot instances that would spin up from the desired_capacity number.

    subnetIds List<String>

    A comma-separated list of subnet identifiers for the Ocean cluster. Subnet IDs should be configured with auto assign public ip.

    tags List<OceanTag>

    Optionally adds tags to instances launched in an Ocean cluster.

    updatePolicy OceanUpdatePolicy
    useAsTemplateOnly Boolean

    launch specification defined on the Ocean object will function only as a template for virtual node groups.

    userData String

    Base64-encoded MIME user data to make available to the instances.

    utilizeCommitments Boolean

    If savings plans exist, Ocean will utilize them before launching Spot instances.

    utilizeReservedInstances Boolean

    If Reserved instances exist, Ocean will utilize them before launching Spot instances.

    whitelists List<String>

    Instance types allowed in the Ocean cluster. Cannot be configured if blacklist/filters is configured.

    associatePublicIpAddress boolean

    Configure public IP address allocation.

    autoscaler OceanAutoscaler

    Describes the Ocean ECS autoscaler.

    blacklists string[]

    Instance types not allowed in the Ocean cluster. Cannot be configured if whitelist/filters is configured.

    blockDeviceMappings OceanBlockDeviceMapping[]

    Object. List of block devices that are exposed to the instance, specify either virtual devices and EBS volumes.

    clusterName string

    The name of the ECS cluster.

    clusterOrientations OceanClusterOrientation[]
    desiredCapacity number

    The number of instances to launch and maintain in the cluster.

    drainingTimeout number

    The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.

    ebsOptimized boolean

    Enable EBS optimized for cluster. Flag will enable optimized capacity for high bandwidth connectivity to the EB service for non EBS optimized instance types. For instances that are EBS optimized this flag will be ignored.

    filters OceanFilters

    List of filters. The Instance types that match with all filters compose the Ocean's whitelist parameter. Cannot be configured together with whitelist/blacklist.

    iamInstanceProfile string

    The instance profile iam role.

    imageId string

    ID of the image used to launch the instances.

    instanceMetadataOptions OceanInstanceMetadataOptions

    Ocean instance metadata options object for IMDSv2.

    keyPair string

    The key pair to attach the instances.

    logging OceanLogging

    Logging configuration.

    maxSize number

    The upper limit of instances the cluster can scale up to.

    minSize number

    The lower limit of instances the cluster can scale down to.

    monitoring boolean

    Enable detailed monitoring for cluster. Flag will enable Cloud Watch detailed monitoring (one minute increments). Note: there are additional hourly costs for this service based on the region used.

    name string

    The Ocean cluster name.

    optimizeImages OceanOptimizeImages

    Object. Set auto image update settings.

    region string

    The region the cluster will run in.

    scheduledTasks OceanScheduledTask[]

    While used, you can control whether the group should perform a deployment after an update to the configuration.

    securityGroupIds string[]

    One or more security group ids.

    spotPercentage number

    The percentage of Spot instances that would spin up from the desired_capacity number.

    subnetIds string[]

    A comma-separated list of subnet identifiers for the Ocean cluster. Subnet IDs should be configured with auto assign public ip.

    tags OceanTag[]

    Optionally adds tags to instances launched in an Ocean cluster.

    updatePolicy OceanUpdatePolicy
    useAsTemplateOnly boolean

    launch specification defined on the Ocean object will function only as a template for virtual node groups.

    userData string

    Base64-encoded MIME user data to make available to the instances.

    utilizeCommitments boolean

    If savings plans exist, Ocean will utilize them before launching Spot instances.

    utilizeReservedInstances boolean

    If Reserved instances exist, Ocean will utilize them before launching Spot instances.

    whitelists string[]

    Instance types allowed in the Ocean cluster. Cannot be configured if blacklist/filters is configured.

    associate_public_ip_address bool

    Configure public IP address allocation.

    autoscaler OceanAutoscalerArgs

    Describes the Ocean ECS autoscaler.

    blacklists Sequence[str]

    Instance types not allowed in the Ocean cluster. Cannot be configured if whitelist/filters is configured.

    block_device_mappings Sequence[OceanBlockDeviceMappingArgs]

    Object. List of block devices that are exposed to the instance, specify either virtual devices and EBS volumes.

    cluster_name str

    The name of the ECS cluster.

    cluster_orientations Sequence[OceanClusterOrientationArgs]
    desired_capacity int

    The number of instances to launch and maintain in the cluster.

    draining_timeout int

    The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.

    ebs_optimized bool

    Enable EBS optimized for cluster. Flag will enable optimized capacity for high bandwidth connectivity to the EB service for non EBS optimized instance types. For instances that are EBS optimized this flag will be ignored.

    filters OceanFiltersArgs

    List of filters. The Instance types that match with all filters compose the Ocean's whitelist parameter. Cannot be configured together with whitelist/blacklist.

    iam_instance_profile str

    The instance profile iam role.

    image_id str

    ID of the image used to launch the instances.

    instance_metadata_options OceanInstanceMetadataOptionsArgs

    Ocean instance metadata options object for IMDSv2.

    key_pair str

    The key pair to attach the instances.

    logging OceanLoggingArgs

    Logging configuration.

    max_size int

    The upper limit of instances the cluster can scale up to.

    min_size int

    The lower limit of instances the cluster can scale down to.

    monitoring bool

    Enable detailed monitoring for cluster. Flag will enable Cloud Watch detailed monitoring (one minute increments). Note: there are additional hourly costs for this service based on the region used.

    name str

    The Ocean cluster name.

    optimize_images OceanOptimizeImagesArgs

    Object. Set auto image update settings.

    region str

    The region the cluster will run in.

    scheduled_tasks Sequence[OceanScheduledTaskArgs]

    While used, you can control whether the group should perform a deployment after an update to the configuration.

    security_group_ids Sequence[str]

    One or more security group ids.

    spot_percentage int

    The percentage of Spot instances that would spin up from the desired_capacity number.

    subnet_ids Sequence[str]

    A comma-separated list of subnet identifiers for the Ocean cluster. Subnet IDs should be configured with auto assign public ip.

    tags Sequence[OceanTagArgs]

    Optionally adds tags to instances launched in an Ocean cluster.

    update_policy OceanUpdatePolicyArgs
    use_as_template_only bool

    launch specification defined on the Ocean object will function only as a template for virtual node groups.

    user_data str

    Base64-encoded MIME user data to make available to the instances.

    utilize_commitments bool

    If savings plans exist, Ocean will utilize them before launching Spot instances.

    utilize_reserved_instances bool

    If Reserved instances exist, Ocean will utilize them before launching Spot instances.

    whitelists Sequence[str]

    Instance types allowed in the Ocean cluster. Cannot be configured if blacklist/filters is configured.

    associatePublicIpAddress Boolean

    Configure public IP address allocation.

    autoscaler Property Map

    Describes the Ocean ECS autoscaler.

    blacklists List<String>

    Instance types not allowed in the Ocean cluster. Cannot be configured if whitelist/filters is configured.

    blockDeviceMappings List<Property Map>

    Object. List of block devices that are exposed to the instance, specify either virtual devices and EBS volumes.

    clusterName String

    The name of the ECS cluster.

    clusterOrientations List<Property Map>
    desiredCapacity Number

    The number of instances to launch and maintain in the cluster.

    drainingTimeout Number

    The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.

    ebsOptimized Boolean

    Enable EBS optimized for cluster. Flag will enable optimized capacity for high bandwidth connectivity to the EB service for non EBS optimized instance types. For instances that are EBS optimized this flag will be ignored.

    filters Property Map

    List of filters. The Instance types that match with all filters compose the Ocean's whitelist parameter. Cannot be configured together with whitelist/blacklist.

    iamInstanceProfile String

    The instance profile iam role.

    imageId String

    ID of the image used to launch the instances.

    instanceMetadataOptions Property Map

    Ocean instance metadata options object for IMDSv2.

    keyPair String

    The key pair to attach the instances.

    logging Property Map

    Logging configuration.

    maxSize Number

    The upper limit of instances the cluster can scale up to.

    minSize Number

    The lower limit of instances the cluster can scale down to.

    monitoring Boolean

    Enable detailed monitoring for cluster. Flag will enable Cloud Watch detailed monitoring (one minute increments). Note: there are additional hourly costs for this service based on the region used.

    name String

    The Ocean cluster name.

    optimizeImages Property Map

    Object. Set auto image update settings.

    region String

    The region the cluster will run in.

    scheduledTasks List<Property Map>

    While used, you can control whether the group should perform a deployment after an update to the configuration.

    securityGroupIds List<String>

    One or more security group ids.

    spotPercentage Number

    The percentage of Spot instances that would spin up from the desired_capacity number.

    subnetIds List<String>

    A comma-separated list of subnet identifiers for the Ocean cluster. Subnet IDs should be configured with auto assign public ip.

    tags List<Property Map>

    Optionally adds tags to instances launched in an Ocean cluster.

    updatePolicy Property Map
    useAsTemplateOnly Boolean

    launch specification defined on the Ocean object will function only as a template for virtual node groups.

    userData String

    Base64-encoded MIME user data to make available to the instances.

    utilizeCommitments Boolean

    If savings plans exist, Ocean will utilize them before launching Spot instances.

    utilizeReservedInstances Boolean

    If Reserved instances exist, Ocean will utilize them before launching Spot instances.

    whitelists List<String>

    Instance types allowed in the Ocean cluster. Cannot be configured if blacklist/filters is configured.

    Supporting Types

    OceanAutoscaler, OceanAutoscalerArgs

    AutoHeadroomPercentage int

    The auto-headroom percentage. Set a number between 0-200 to control the headroom % of the cluster. Relevant when isAutoConfig= true.

    Cooldown int

    Cooldown period between scaling actions.

    Down Pulumi.SpotInst.Ecs.Inputs.OceanAutoscalerDown

    Auto Scaling scale down operations.

    EnableAutomaticAndManualHeadroom bool

    When set to true, both automatic and per custom launch specification manual headroom to be saved concurrently and independently in the cluster. prerequisite: isAutoConfig must be true

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    Headroom Pulumi.SpotInst.Ecs.Inputs.OceanAutoscalerHeadroom

    Spare resource capacity management enabling fast assignment of tasks without waiting for new resources to launch.

    IsAutoConfig bool

    Automatically configure and optimize headroom resources.

    IsEnabled bool

    Enable the Ocean ECS autoscaler.

    ResourceLimits Pulumi.SpotInst.Ecs.Inputs.OceanAutoscalerResourceLimits

    Optionally set upper and lower bounds on the resource usage of the cluster.

    ShouldScaleDownNonServiceTasks bool

    Option to scale down non-service tasks. If not set, Ocean does not scale down standalone tasks.

    AutoHeadroomPercentage int

    The auto-headroom percentage. Set a number between 0-200 to control the headroom % of the cluster. Relevant when isAutoConfig= true.

    Cooldown int

    Cooldown period between scaling actions.

    Down OceanAutoscalerDown

    Auto Scaling scale down operations.

    EnableAutomaticAndManualHeadroom bool

    When set to true, both automatic and per custom launch specification manual headroom to be saved concurrently and independently in the cluster. prerequisite: isAutoConfig must be true

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    Headroom OceanAutoscalerHeadroom

    Spare resource capacity management enabling fast assignment of tasks without waiting for new resources to launch.

    IsAutoConfig bool

    Automatically configure and optimize headroom resources.

    IsEnabled bool

    Enable the Ocean ECS autoscaler.

    ResourceLimits OceanAutoscalerResourceLimits

    Optionally set upper and lower bounds on the resource usage of the cluster.

    ShouldScaleDownNonServiceTasks bool

    Option to scale down non-service tasks. If not set, Ocean does not scale down standalone tasks.

    autoHeadroomPercentage Integer

    The auto-headroom percentage. Set a number between 0-200 to control the headroom % of the cluster. Relevant when isAutoConfig= true.

    cooldown Integer

    Cooldown period between scaling actions.

    down OceanAutoscalerDown

    Auto Scaling scale down operations.

    enableAutomaticAndManualHeadroom Boolean

    When set to true, both automatic and per custom launch specification manual headroom to be saved concurrently and independently in the cluster. prerequisite: isAutoConfig must be true

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    headroom OceanAutoscalerHeadroom

    Spare resource capacity management enabling fast assignment of tasks without waiting for new resources to launch.

    isAutoConfig Boolean

    Automatically configure and optimize headroom resources.

    isEnabled Boolean

    Enable the Ocean ECS autoscaler.

    resourceLimits OceanAutoscalerResourceLimits

    Optionally set upper and lower bounds on the resource usage of the cluster.

    shouldScaleDownNonServiceTasks Boolean

    Option to scale down non-service tasks. If not set, Ocean does not scale down standalone tasks.

    autoHeadroomPercentage number

    The auto-headroom percentage. Set a number between 0-200 to control the headroom % of the cluster. Relevant when isAutoConfig= true.

    cooldown number

    Cooldown period between scaling actions.

    down OceanAutoscalerDown

    Auto Scaling scale down operations.

    enableAutomaticAndManualHeadroom boolean

    When set to true, both automatic and per custom launch specification manual headroom to be saved concurrently and independently in the cluster. prerequisite: isAutoConfig must be true

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    headroom OceanAutoscalerHeadroom

    Spare resource capacity management enabling fast assignment of tasks without waiting for new resources to launch.

    isAutoConfig boolean

    Automatically configure and optimize headroom resources.

    isEnabled boolean

    Enable the Ocean ECS autoscaler.

    resourceLimits OceanAutoscalerResourceLimits

    Optionally set upper and lower bounds on the resource usage of the cluster.

    shouldScaleDownNonServiceTasks boolean

    Option to scale down non-service tasks. If not set, Ocean does not scale down standalone tasks.

    auto_headroom_percentage int

    The auto-headroom percentage. Set a number between 0-200 to control the headroom % of the cluster. Relevant when isAutoConfig= true.

    cooldown int

    Cooldown period between scaling actions.

    down OceanAutoscalerDown

    Auto Scaling scale down operations.

    enable_automatic_and_manual_headroom bool

    When set to true, both automatic and per custom launch specification manual headroom to be saved concurrently and independently in the cluster. prerequisite: isAutoConfig must be true

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    headroom OceanAutoscalerHeadroom

    Spare resource capacity management enabling fast assignment of tasks without waiting for new resources to launch.

    is_auto_config bool

    Automatically configure and optimize headroom resources.

    is_enabled bool

    Enable the Ocean ECS autoscaler.

    resource_limits OceanAutoscalerResourceLimits

    Optionally set upper and lower bounds on the resource usage of the cluster.

    should_scale_down_non_service_tasks bool

    Option to scale down non-service tasks. If not set, Ocean does not scale down standalone tasks.

    autoHeadroomPercentage Number

    The auto-headroom percentage. Set a number between 0-200 to control the headroom % of the cluster. Relevant when isAutoConfig= true.

    cooldown Number

    Cooldown period between scaling actions.

    down Property Map

    Auto Scaling scale down operations.

    enableAutomaticAndManualHeadroom Boolean

    When set to true, both automatic and per custom launch specification manual headroom to be saved concurrently and independently in the cluster. prerequisite: isAutoConfig must be true

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    headroom Property Map

    Spare resource capacity management enabling fast assignment of tasks without waiting for new resources to launch.

    isAutoConfig Boolean

    Automatically configure and optimize headroom resources.

    isEnabled Boolean

    Enable the Ocean ECS autoscaler.

    resourceLimits Property Map

    Optionally set upper and lower bounds on the resource usage of the cluster.

    shouldScaleDownNonServiceTasks Boolean

    Option to scale down non-service tasks. If not set, Ocean does not scale down standalone tasks.

    OceanAutoscalerDown, OceanAutoscalerDownArgs

    MaxScaleDownPercentage double

    Would represent the maximum % to scale-down. Number between 1-100.

    MaxScaleDownPercentage float64

    Would represent the maximum % to scale-down. Number between 1-100.

    maxScaleDownPercentage Double

    Would represent the maximum % to scale-down. Number between 1-100.

    maxScaleDownPercentage number

    Would represent the maximum % to scale-down. Number between 1-100.

    max_scale_down_percentage float

    Would represent the maximum % to scale-down. Number between 1-100.

    maxScaleDownPercentage Number

    Would represent the maximum % to scale-down. Number between 1-100.

    OceanAutoscalerHeadroom, OceanAutoscalerHeadroomArgs

    CpuPerUnit int

    Optionally configure the number of CPUs to allocate the headroom. CPUs are denoted in millicores, where 1000 millicores = 1 vCPU.

    MemoryPerUnit int

    Optionally configure the amount of memory (MB) to allocate the headroom.

    NumOfUnits int

    The number of units to retain as headroom, where each unit has the defined headroom CPU and memory.

    CpuPerUnit int

    Optionally configure the number of CPUs to allocate the headroom. CPUs are denoted in millicores, where 1000 millicores = 1 vCPU.

    MemoryPerUnit int

    Optionally configure the amount of memory (MB) to allocate the headroom.

    NumOfUnits int

    The number of units to retain as headroom, where each unit has the defined headroom CPU and memory.

    cpuPerUnit Integer

    Optionally configure the number of CPUs to allocate the headroom. CPUs are denoted in millicores, where 1000 millicores = 1 vCPU.

    memoryPerUnit Integer

    Optionally configure the amount of memory (MB) to allocate the headroom.

    numOfUnits Integer

    The number of units to retain as headroom, where each unit has the defined headroom CPU and memory.

    cpuPerUnit number

    Optionally configure the number of CPUs to allocate the headroom. CPUs are denoted in millicores, where 1000 millicores = 1 vCPU.

    memoryPerUnit number

    Optionally configure the amount of memory (MB) to allocate the headroom.

    numOfUnits number

    The number of units to retain as headroom, where each unit has the defined headroom CPU and memory.

    cpu_per_unit int

    Optionally configure the number of CPUs to allocate the headroom. CPUs are denoted in millicores, where 1000 millicores = 1 vCPU.

    memory_per_unit int

    Optionally configure the amount of memory (MB) to allocate the headroom.

    num_of_units int

    The number of units to retain as headroom, where each unit has the defined headroom CPU and memory.

    cpuPerUnit Number

    Optionally configure the number of CPUs to allocate the headroom. CPUs are denoted in millicores, where 1000 millicores = 1 vCPU.

    memoryPerUnit Number

    Optionally configure the amount of memory (MB) to allocate the headroom.

    numOfUnits Number

    The number of units to retain as headroom, where each unit has the defined headroom CPU and memory.

    OceanAutoscalerResourceLimits, OceanAutoscalerResourceLimitsArgs

    MaxMemoryGib int

    Maximum amount of Memory (GiB).

    MaxVcpu int

    Maximum number of vcpus available.

    MaxMemoryGib int

    Maximum amount of Memory (GiB).

    MaxVcpu int

    Maximum number of vcpus available.

    maxMemoryGib Integer

    Maximum amount of Memory (GiB).

    maxVcpu Integer

    Maximum number of vcpus available.

    maxMemoryGib number

    Maximum amount of Memory (GiB).

    maxVcpu number

    Maximum number of vcpus available.

    max_memory_gib int

    Maximum amount of Memory (GiB).

    max_vcpu int

    Maximum number of vcpus available.

    maxMemoryGib Number

    Maximum amount of Memory (GiB).

    maxVcpu Number

    Maximum number of vcpus available.

    OceanBlockDeviceMapping, OceanBlockDeviceMappingArgs

    DeviceName string

    String. Set device name. Example: /dev/xvda1.

    Ebs Pulumi.SpotInst.Ecs.Inputs.OceanBlockDeviceMappingEbs

    Object. Set Elastic Block Store properties.

    NoDevice string

    String. Suppresses the specified device included in the block device mapping of the AMI.

    VirtualName string
    DeviceName string

    String. Set device name. Example: /dev/xvda1.

    Ebs OceanBlockDeviceMappingEbs

    Object. Set Elastic Block Store properties.

    NoDevice string

    String. Suppresses the specified device included in the block device mapping of the AMI.

    VirtualName string
    deviceName String

    String. Set device name. Example: /dev/xvda1.

    ebs OceanBlockDeviceMappingEbs

    Object. Set Elastic Block Store properties.

    noDevice String

    String. Suppresses the specified device included in the block device mapping of the AMI.

    virtualName String
    deviceName string

    String. Set device name. Example: /dev/xvda1.

    ebs OceanBlockDeviceMappingEbs

    Object. Set Elastic Block Store properties.

    noDevice string

    String. Suppresses the specified device included in the block device mapping of the AMI.

    virtualName string
    device_name str

    String. Set device name. Example: /dev/xvda1.

    ebs OceanBlockDeviceMappingEbs

    Object. Set Elastic Block Store properties.

    no_device str

    String. Suppresses the specified device included in the block device mapping of the AMI.

    virtual_name str
    deviceName String

    String. Set device name. Example: /dev/xvda1.

    ebs Property Map

    Object. Set Elastic Block Store properties.

    noDevice String

    String. Suppresses the specified device included in the block device mapping of the AMI.

    virtualName String

    OceanBlockDeviceMappingEbs, OceanBlockDeviceMappingEbsArgs

    DeleteOnTermination bool

    Boolean. Toggles EBS deletion upon instance termination.

    DynamicVolumeSize Pulumi.SpotInst.Ecs.Inputs.OceanBlockDeviceMappingEbsDynamicVolumeSize

    Object. Set dynamic volume size properties. When using this object, you cannot use volumeSize. You must use one or the other.

    Encrypted bool

    Boolean. Enables EBS encryption on the volume.

    Iops int

    Int. The number of I/O operations per second (IOPS) that the volume supports.

    KmsKeyId string

    String. Identifier (key ID, key alias, ID ARN, or alias ARN) for a customer managed CMK under which the EBS volume is encrypted.

    SnapshotId string

    (Optional) String. The snapshot ID to mount by.

    Throughput int

    The amount of data transferred to or from a storage device per second, you can use this param just in a case that volume_type = gp3.

    VolumeSize int

    Int. The size (in GB) of the volume.

    VolumeType string

    String. The type of the volume. Example: gp2.

    DeleteOnTermination bool

    Boolean. Toggles EBS deletion upon instance termination.

    DynamicVolumeSize OceanBlockDeviceMappingEbsDynamicVolumeSize

    Object. Set dynamic volume size properties. When using this object, you cannot use volumeSize. You must use one or the other.

    Encrypted bool

    Boolean. Enables EBS encryption on the volume.

    Iops int

    Int. The number of I/O operations per second (IOPS) that the volume supports.

    KmsKeyId string

    String. Identifier (key ID, key alias, ID ARN, or alias ARN) for a customer managed CMK under which the EBS volume is encrypted.

    SnapshotId string

    (Optional) String. The snapshot ID to mount by.

    Throughput int

    The amount of data transferred to or from a storage device per second, you can use this param just in a case that volume_type = gp3.

    VolumeSize int

    Int. The size (in GB) of the volume.

    VolumeType string

    String. The type of the volume. Example: gp2.

    deleteOnTermination Boolean

    Boolean. Toggles EBS deletion upon instance termination.

    dynamicVolumeSize OceanBlockDeviceMappingEbsDynamicVolumeSize

    Object. Set dynamic volume size properties. When using this object, you cannot use volumeSize. You must use one or the other.

    encrypted Boolean

    Boolean. Enables EBS encryption on the volume.

    iops Integer

    Int. The number of I/O operations per second (IOPS) that the volume supports.

    kmsKeyId String

    String. Identifier (key ID, key alias, ID ARN, or alias ARN) for a customer managed CMK under which the EBS volume is encrypted.

    snapshotId String

    (Optional) String. The snapshot ID to mount by.

    throughput Integer

    The amount of data transferred to or from a storage device per second, you can use this param just in a case that volume_type = gp3.

    volumeSize Integer

    Int. The size (in GB) of the volume.

    volumeType String

    String. The type of the volume. Example: gp2.

    deleteOnTermination boolean

    Boolean. Toggles EBS deletion upon instance termination.

    dynamicVolumeSize OceanBlockDeviceMappingEbsDynamicVolumeSize

    Object. Set dynamic volume size properties. When using this object, you cannot use volumeSize. You must use one or the other.

    encrypted boolean

    Boolean. Enables EBS encryption on the volume.

    iops number

    Int. The number of I/O operations per second (IOPS) that the volume supports.

    kmsKeyId string

    String. Identifier (key ID, key alias, ID ARN, or alias ARN) for a customer managed CMK under which the EBS volume is encrypted.

    snapshotId string

    (Optional) String. The snapshot ID to mount by.

    throughput number

    The amount of data transferred to or from a storage device per second, you can use this param just in a case that volume_type = gp3.

    volumeSize number

    Int. The size (in GB) of the volume.

    volumeType string

    String. The type of the volume. Example: gp2.

    delete_on_termination bool

    Boolean. Toggles EBS deletion upon instance termination.

    dynamic_volume_size OceanBlockDeviceMappingEbsDynamicVolumeSize

    Object. Set dynamic volume size properties. When using this object, you cannot use volumeSize. You must use one or the other.

    encrypted bool

    Boolean. Enables EBS encryption on the volume.

    iops int

    Int. The number of I/O operations per second (IOPS) that the volume supports.

    kms_key_id str

    String. Identifier (key ID, key alias, ID ARN, or alias ARN) for a customer managed CMK under which the EBS volume is encrypted.

    snapshot_id str

    (Optional) String. The snapshot ID to mount by.

    throughput int

    The amount of data transferred to or from a storage device per second, you can use this param just in a case that volume_type = gp3.

    volume_size int

    Int. The size (in GB) of the volume.

    volume_type str

    String. The type of the volume. Example: gp2.

    deleteOnTermination Boolean

    Boolean. Toggles EBS deletion upon instance termination.

    dynamicVolumeSize Property Map

    Object. Set dynamic volume size properties. When using this object, you cannot use volumeSize. You must use one or the other.

    encrypted Boolean

    Boolean. Enables EBS encryption on the volume.

    iops Number

    Int. The number of I/O operations per second (IOPS) that the volume supports.

    kmsKeyId String

    String. Identifier (key ID, key alias, ID ARN, or alias ARN) for a customer managed CMK under which the EBS volume is encrypted.

    snapshotId String

    (Optional) String. The snapshot ID to mount by.

    throughput Number

    The amount of data transferred to or from a storage device per second, you can use this param just in a case that volume_type = gp3.

    volumeSize Number

    Int. The size (in GB) of the volume.

    volumeType String

    String. The type of the volume. Example: gp2.

    OceanBlockDeviceMappingEbsDynamicVolumeSize, OceanBlockDeviceMappingEbsDynamicVolumeSizeArgs

    BaseSize int

    Int. Initial size for volume. Example: 50.

    Resource string

    String. Resource type to increase volume size dynamically by. Valid values: CPU.

    SizePerResourceUnit int

    Int. Additional size (in GB) per resource unit. Example: When the baseSize=50, sizePerResourceUnit=20, and instance with two CPUs is launched, its total disk size will be: 90GB.

    BaseSize int

    Int. Initial size for volume. Example: 50.

    Resource string

    String. Resource type to increase volume size dynamically by. Valid values: CPU.

    SizePerResourceUnit int

    Int. Additional size (in GB) per resource unit. Example: When the baseSize=50, sizePerResourceUnit=20, and instance with two CPUs is launched, its total disk size will be: 90GB.

    baseSize Integer

    Int. Initial size for volume. Example: 50.

    resource String

    String. Resource type to increase volume size dynamically by. Valid values: CPU.

    sizePerResourceUnit Integer

    Int. Additional size (in GB) per resource unit. Example: When the baseSize=50, sizePerResourceUnit=20, and instance with two CPUs is launched, its total disk size will be: 90GB.

    baseSize number

    Int. Initial size for volume. Example: 50.

    resource string

    String. Resource type to increase volume size dynamically by. Valid values: CPU.

    sizePerResourceUnit number

    Int. Additional size (in GB) per resource unit. Example: When the baseSize=50, sizePerResourceUnit=20, and instance with two CPUs is launched, its total disk size will be: 90GB.

    base_size int

    Int. Initial size for volume. Example: 50.

    resource str

    String. Resource type to increase volume size dynamically by. Valid values: CPU.

    size_per_resource_unit int

    Int. Additional size (in GB) per resource unit. Example: When the baseSize=50, sizePerResourceUnit=20, and instance with two CPUs is launched, its total disk size will be: 90GB.

    baseSize Number

    Int. Initial size for volume. Example: 50.

    resource String

    String. Resource type to increase volume size dynamically by. Valid values: CPU.

    sizePerResourceUnit Number

    Int. Additional size (in GB) per resource unit. Example: When the baseSize=50, sizePerResourceUnit=20, and instance with two CPUs is launched, its total disk size will be: 90GB.

    OceanClusterOrientation, OceanClusterOrientationArgs

    AvailabilityVsCost string

    You can control the approach that Ocean takes while launching nodes by configuring this value. Possible values: costOriented,balanced,cheapest.

    AvailabilityVsCost string

    You can control the approach that Ocean takes while launching nodes by configuring this value. Possible values: costOriented,balanced,cheapest.

    availabilityVsCost String

    You can control the approach that Ocean takes while launching nodes by configuring this value. Possible values: costOriented,balanced,cheapest.

    availabilityVsCost string

    You can control the approach that Ocean takes while launching nodes by configuring this value. Possible values: costOriented,balanced,cheapest.

    availability_vs_cost str

    You can control the approach that Ocean takes while launching nodes by configuring this value. Possible values: costOriented,balanced,cheapest.

    availabilityVsCost String

    You can control the approach that Ocean takes while launching nodes by configuring this value. Possible values: costOriented,balanced,cheapest.

    OceanFilters, OceanFiltersArgs

    Architectures List<string>

    The filtered instance types will support at least one of the architectures from this list.

    Categories List<string>

    The filtered instance types will belong to one of the categories types from this list.

    DiskTypes List<string>

    The filtered instance types will have one of the disk type from this list.

    ExcludeFamilies List<string>

    Types belonging to a family from the ExcludeFamilies will not be available for scaling (asterisk wildcard is also supported). For example, C* will exclude instance types from these families: c5, c4, c4a, etc.

    ExcludeMetal bool

    In case excludeMetal is set to true, metal types will not be available for scaling.

    Hypervisors List<string>

    The filtered instance types will have a hypervisor type from this list.

    IncludeFamilies List<string>

    Types belonging to a family from the IncludeFamilies will be available for scaling (asterisk wildcard is also supported). For example, C* will include instance types from these families: c5, c4, c4a, etc.

    IsEnaSupported string

    Ena is supported or not.

    MaxGpu int

    Maximum total number of GPUs.

    MaxMemoryGib double

    Maximum amount of Memory (GiB).

    MaxNetworkPerformance int

    Maximum Bandwidth in Gib/s of network performance.

    MaxVcpu int

    Maximum number of vcpus available.

    MinEnis int

    Minimum number of network interfaces (ENIs).

    MinGpu int

    Minimum total number of GPUs.

    MinMemoryGib double

    Minimum amount of Memory (GiB).

    MinNetworkPerformance int

    Minimum Bandwidth in Gib/s of network performance.

    MinVcpu int

    Minimum number of vcpus available.

    RootDeviceTypes List<string>

    The filtered instance types will have a root device types from this list.

    VirtualizationTypes List<string>

    The filtered instance types will support at least one of the virtualization types from this list.

    Architectures []string

    The filtered instance types will support at least one of the architectures from this list.

    Categories []string

    The filtered instance types will belong to one of the categories types from this list.

    DiskTypes []string

    The filtered instance types will have one of the disk type from this list.

    ExcludeFamilies []string

    Types belonging to a family from the ExcludeFamilies will not be available for scaling (asterisk wildcard is also supported). For example, C* will exclude instance types from these families: c5, c4, c4a, etc.

    ExcludeMetal bool

    In case excludeMetal is set to true, metal types will not be available for scaling.

    Hypervisors []string

    The filtered instance types will have a hypervisor type from this list.

    IncludeFamilies []string

    Types belonging to a family from the IncludeFamilies will be available for scaling (asterisk wildcard is also supported). For example, C* will include instance types from these families: c5, c4, c4a, etc.

    IsEnaSupported string

    Ena is supported or not.

    MaxGpu int

    Maximum total number of GPUs.

    MaxMemoryGib float64

    Maximum amount of Memory (GiB).

    MaxNetworkPerformance int

    Maximum Bandwidth in Gib/s of network performance.

    MaxVcpu int

    Maximum number of vcpus available.

    MinEnis int

    Minimum number of network interfaces (ENIs).

    MinGpu int

    Minimum total number of GPUs.

    MinMemoryGib float64

    Minimum amount of Memory (GiB).

    MinNetworkPerformance int

    Minimum Bandwidth in Gib/s of network performance.

    MinVcpu int

    Minimum number of vcpus available.

    RootDeviceTypes []string

    The filtered instance types will have a root device types from this list.

    VirtualizationTypes []string

    The filtered instance types will support at least one of the virtualization types from this list.

    architectures List<String>

    The filtered instance types will support at least one of the architectures from this list.

    categories List<String>

    The filtered instance types will belong to one of the categories types from this list.

    diskTypes List<String>

    The filtered instance types will have one of the disk type from this list.

    excludeFamilies List<String>

    Types belonging to a family from the ExcludeFamilies will not be available for scaling (asterisk wildcard is also supported). For example, C* will exclude instance types from these families: c5, c4, c4a, etc.

    excludeMetal Boolean

    In case excludeMetal is set to true, metal types will not be available for scaling.

    hypervisors List<String>

    The filtered instance types will have a hypervisor type from this list.

    includeFamilies List<String>

    Types belonging to a family from the IncludeFamilies will be available for scaling (asterisk wildcard is also supported). For example, C* will include instance types from these families: c5, c4, c4a, etc.

    isEnaSupported String

    Ena is supported or not.

    maxGpu Integer

    Maximum total number of GPUs.

    maxMemoryGib Double

    Maximum amount of Memory (GiB).

    maxNetworkPerformance Integer

    Maximum Bandwidth in Gib/s of network performance.

    maxVcpu Integer

    Maximum number of vcpus available.

    minEnis Integer

    Minimum number of network interfaces (ENIs).

    minGpu Integer

    Minimum total number of GPUs.

    minMemoryGib Double

    Minimum amount of Memory (GiB).

    minNetworkPerformance Integer

    Minimum Bandwidth in Gib/s of network performance.

    minVcpu Integer

    Minimum number of vcpus available.

    rootDeviceTypes List<String>

    The filtered instance types will have a root device types from this list.

    virtualizationTypes List<String>

    The filtered instance types will support at least one of the virtualization types from this list.

    architectures string[]

    The filtered instance types will support at least one of the architectures from this list.

    categories string[]

    The filtered instance types will belong to one of the categories types from this list.

    diskTypes string[]

    The filtered instance types will have one of the disk type from this list.

    excludeFamilies string[]

    Types belonging to a family from the ExcludeFamilies will not be available for scaling (asterisk wildcard is also supported). For example, C* will exclude instance types from these families: c5, c4, c4a, etc.

    excludeMetal boolean

    In case excludeMetal is set to true, metal types will not be available for scaling.

    hypervisors string[]

    The filtered instance types will have a hypervisor type from this list.

    includeFamilies string[]

    Types belonging to a family from the IncludeFamilies will be available for scaling (asterisk wildcard is also supported). For example, C* will include instance types from these families: c5, c4, c4a, etc.

    isEnaSupported string

    Ena is supported or not.

    maxGpu number

    Maximum total number of GPUs.

    maxMemoryGib number

    Maximum amount of Memory (GiB).

    maxNetworkPerformance number

    Maximum Bandwidth in Gib/s of network performance.

    maxVcpu number

    Maximum number of vcpus available.

    minEnis number

    Minimum number of network interfaces (ENIs).

    minGpu number

    Minimum total number of GPUs.

    minMemoryGib number

    Minimum amount of Memory (GiB).

    minNetworkPerformance number

    Minimum Bandwidth in Gib/s of network performance.

    minVcpu number

    Minimum number of vcpus available.

    rootDeviceTypes string[]

    The filtered instance types will have a root device types from this list.

    virtualizationTypes string[]

    The filtered instance types will support at least one of the virtualization types from this list.

    architectures Sequence[str]

    The filtered instance types will support at least one of the architectures from this list.

    categories Sequence[str]

    The filtered instance types will belong to one of the categories types from this list.

    disk_types Sequence[str]

    The filtered instance types will have one of the disk type from this list.

    exclude_families Sequence[str]

    Types belonging to a family from the ExcludeFamilies will not be available for scaling (asterisk wildcard is also supported). For example, C* will exclude instance types from these families: c5, c4, c4a, etc.

    exclude_metal bool

    In case excludeMetal is set to true, metal types will not be available for scaling.

    hypervisors Sequence[str]

    The filtered instance types will have a hypervisor type from this list.

    include_families Sequence[str]

    Types belonging to a family from the IncludeFamilies will be available for scaling (asterisk wildcard is also supported). For example, C* will include instance types from these families: c5, c4, c4a, etc.

    is_ena_supported str

    Ena is supported or not.

    max_gpu int

    Maximum total number of GPUs.

    max_memory_gib float

    Maximum amount of Memory (GiB).

    max_network_performance int

    Maximum Bandwidth in Gib/s of network performance.

    max_vcpu int

    Maximum number of vcpus available.

    min_enis int

    Minimum number of network interfaces (ENIs).

    min_gpu int

    Minimum total number of GPUs.

    min_memory_gib float

    Minimum amount of Memory (GiB).

    min_network_performance int

    Minimum Bandwidth in Gib/s of network performance.

    min_vcpu int

    Minimum number of vcpus available.

    root_device_types Sequence[str]

    The filtered instance types will have a root device types from this list.

    virtualization_types Sequence[str]

    The filtered instance types will support at least one of the virtualization types from this list.

    architectures List<String>

    The filtered instance types will support at least one of the architectures from this list.

    categories List<String>

    The filtered instance types will belong to one of the categories types from this list.

    diskTypes List<String>

    The filtered instance types will have one of the disk type from this list.

    excludeFamilies List<String>

    Types belonging to a family from the ExcludeFamilies will not be available for scaling (asterisk wildcard is also supported). For example, C* will exclude instance types from these families: c5, c4, c4a, etc.

    excludeMetal Boolean

    In case excludeMetal is set to true, metal types will not be available for scaling.

    hypervisors List<String>

    The filtered instance types will have a hypervisor type from this list.

    includeFamilies List<String>

    Types belonging to a family from the IncludeFamilies will be available for scaling (asterisk wildcard is also supported). For example, C* will include instance types from these families: c5, c4, c4a, etc.

    isEnaSupported String

    Ena is supported or not.

    maxGpu Number

    Maximum total number of GPUs.

    maxMemoryGib Number

    Maximum amount of Memory (GiB).

    maxNetworkPerformance Number

    Maximum Bandwidth in Gib/s of network performance.

    maxVcpu Number

    Maximum number of vcpus available.

    minEnis Number

    Minimum number of network interfaces (ENIs).

    minGpu Number

    Minimum total number of GPUs.

    minMemoryGib Number

    Minimum amount of Memory (GiB).

    minNetworkPerformance Number

    Minimum Bandwidth in Gib/s of network performance.

    minVcpu Number

    Minimum number of vcpus available.

    rootDeviceTypes List<String>

    The filtered instance types will have a root device types from this list.

    virtualizationTypes List<String>

    The filtered instance types will support at least one of the virtualization types from this list.

    OceanInstanceMetadataOptions, OceanInstanceMetadataOptionsArgs

    HttpTokens string

    Determines if a signed token is required or not. Valid values: optional or required.

    HttpPutResponseHopLimit int

    An integer from 1 through 64. The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further the instance metadata requests can travel.

    HttpTokens string

    Determines if a signed token is required or not. Valid values: optional or required.

    HttpPutResponseHopLimit int

    An integer from 1 through 64. The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further the instance metadata requests can travel.

    httpTokens String

    Determines if a signed token is required or not. Valid values: optional or required.

    httpPutResponseHopLimit Integer

    An integer from 1 through 64. The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further the instance metadata requests can travel.

    httpTokens string

    Determines if a signed token is required or not. Valid values: optional or required.

    httpPutResponseHopLimit number

    An integer from 1 through 64. The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further the instance metadata requests can travel.

    http_tokens str

    Determines if a signed token is required or not. Valid values: optional or required.

    http_put_response_hop_limit int

    An integer from 1 through 64. The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further the instance metadata requests can travel.

    httpTokens String

    Determines if a signed token is required or not. Valid values: optional or required.

    httpPutResponseHopLimit Number

    An integer from 1 through 64. The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further the instance metadata requests can travel.

    OceanLogging, OceanLoggingArgs

    Export OceanLoggingExport

    Logging Export configuration.

    export OceanLoggingExport

    Logging Export configuration.

    export OceanLoggingExport

    Logging Export configuration.

    export OceanLoggingExport

    Logging Export configuration.

    export Property Map

    Logging Export configuration.

    OceanLoggingExport, OceanLoggingExportArgs

    S3s List<Pulumi.SpotInst.Ecs.Inputs.OceanLoggingExportS3>

    Exports your cluster's logs to the S3 bucket and subdir configured on the S3 data integration given.

    S3s []OceanLoggingExportS3

    Exports your cluster's logs to the S3 bucket and subdir configured on the S3 data integration given.

    s3s List<OceanLoggingExportS3>

    Exports your cluster's logs to the S3 bucket and subdir configured on the S3 data integration given.

    s3s OceanLoggingExportS3[]

    Exports your cluster's logs to the S3 bucket and subdir configured on the S3 data integration given.

    s3s Sequence[OceanLoggingExportS3]

    Exports your cluster's logs to the S3 bucket and subdir configured on the S3 data integration given.

    s3s List<Property Map>

    Exports your cluster's logs to the S3 bucket and subdir configured on the S3 data integration given.

    OceanLoggingExportS3, OceanLoggingExportS3Args

    Id string

    The identifier of The S3 data integration to export the logs to.

    Id string

    The identifier of The S3 data integration to export the logs to.

    id String

    The identifier of The S3 data integration to export the logs to.

    id string

    The identifier of The S3 data integration to export the logs to.

    id str

    The identifier of The S3 data integration to export the logs to.

    id String

    The identifier of The S3 data integration to export the logs to.

    OceanOptimizeImages, OceanOptimizeImagesArgs

    PerformAt string

    String. Valid values: "always" "never" "timeWindow".

    ShouldOptimizeEcsAmi bool

    Boolean. Enable auto image (AMI) update for the ECS container instances. The auto update applies for ECS-Optimized AMIs.

    TimeWindows List<string>

    Array of strings. Set time windows for image update, at least one time window. Each string is in the format of ddd:hh:mm-ddd:hh:mm ddd. Time windows should not overlap.

    PerformAt string

    String. Valid values: "always" "never" "timeWindow".

    ShouldOptimizeEcsAmi bool

    Boolean. Enable auto image (AMI) update for the ECS container instances. The auto update applies for ECS-Optimized AMIs.

    TimeWindows []string

    Array of strings. Set time windows for image update, at least one time window. Each string is in the format of ddd:hh:mm-ddd:hh:mm ddd. Time windows should not overlap.

    performAt String

    String. Valid values: "always" "never" "timeWindow".

    shouldOptimizeEcsAmi Boolean

    Boolean. Enable auto image (AMI) update for the ECS container instances. The auto update applies for ECS-Optimized AMIs.

    timeWindows List<String>

    Array of strings. Set time windows for image update, at least one time window. Each string is in the format of ddd:hh:mm-ddd:hh:mm ddd. Time windows should not overlap.

    performAt string

    String. Valid values: "always" "never" "timeWindow".

    shouldOptimizeEcsAmi boolean

    Boolean. Enable auto image (AMI) update for the ECS container instances. The auto update applies for ECS-Optimized AMIs.

    timeWindows string[]

    Array of strings. Set time windows for image update, at least one time window. Each string is in the format of ddd:hh:mm-ddd:hh:mm ddd. Time windows should not overlap.

    perform_at str

    String. Valid values: "always" "never" "timeWindow".

    should_optimize_ecs_ami bool

    Boolean. Enable auto image (AMI) update for the ECS container instances. The auto update applies for ECS-Optimized AMIs.

    time_windows Sequence[str]

    Array of strings. Set time windows for image update, at least one time window. Each string is in the format of ddd:hh:mm-ddd:hh:mm ddd. Time windows should not overlap.

    performAt String

    String. Valid values: "always" "never" "timeWindow".

    shouldOptimizeEcsAmi Boolean

    Boolean. Enable auto image (AMI) update for the ECS container instances. The auto update applies for ECS-Optimized AMIs.

    timeWindows List<String>

    Array of strings. Set time windows for image update, at least one time window. Each string is in the format of ddd:hh:mm-ddd:hh:mm ddd. Time windows should not overlap.

    OceanScheduledTask, OceanScheduledTaskArgs

    ShutdownHours OceanScheduledTaskShutdownHours

    Set shutdown hours for cluster object.

    Tasks []OceanScheduledTaskTask

    The scheduling tasks for the cluster.

    shutdownHours OceanScheduledTaskShutdownHours

    Set shutdown hours for cluster object.

    tasks List<OceanScheduledTaskTask>

    The scheduling tasks for the cluster.

    shutdownHours OceanScheduledTaskShutdownHours

    Set shutdown hours for cluster object.

    tasks OceanScheduledTaskTask[]

    The scheduling tasks for the cluster.

    shutdown_hours OceanScheduledTaskShutdownHours

    Set shutdown hours for cluster object.

    tasks Sequence[OceanScheduledTaskTask]

    The scheduling tasks for the cluster.

    shutdownHours Property Map

    Set shutdown hours for cluster object.

    tasks List<Property Map>

    The scheduling tasks for the cluster.

    OceanScheduledTaskShutdownHours, OceanScheduledTaskShutdownHoursArgs

    TimeWindows List<string>

    Array of strings. Set time windows for image update, at least one time window. Each string is in the format of ddd:hh:mm-ddd:hh:mm ddd. Time windows should not overlap.

    IsEnabled bool

    Enable the Ocean ECS autoscaler.

    TimeWindows []string

    Array of strings. Set time windows for image update, at least one time window. Each string is in the format of ddd:hh:mm-ddd:hh:mm ddd. Time windows should not overlap.

    IsEnabled bool

    Enable the Ocean ECS autoscaler.

    timeWindows List<String>

    Array of strings. Set time windows for image update, at least one time window. Each string is in the format of ddd:hh:mm-ddd:hh:mm ddd. Time windows should not overlap.

    isEnabled Boolean

    Enable the Ocean ECS autoscaler.

    timeWindows string[]

    Array of strings. Set time windows for image update, at least one time window. Each string is in the format of ddd:hh:mm-ddd:hh:mm ddd. Time windows should not overlap.

    isEnabled boolean

    Enable the Ocean ECS autoscaler.

    time_windows Sequence[str]

    Array of strings. Set time windows for image update, at least one time window. Each string is in the format of ddd:hh:mm-ddd:hh:mm ddd. Time windows should not overlap.

    is_enabled bool

    Enable the Ocean ECS autoscaler.

    timeWindows List<String>

    Array of strings. Set time windows for image update, at least one time window. Each string is in the format of ddd:hh:mm-ddd:hh:mm ddd. Time windows should not overlap.

    isEnabled Boolean

    Enable the Ocean ECS autoscaler.

    OceanScheduledTaskTask, OceanScheduledTaskTaskArgs

    CronExpression string

    A valid cron expression. The cron is running in UTC time zone and is in Unix cron format Cron Expression Validator Script. Only one of frequency or cronExpression should be used at a time. Required for cluster.scheduling.tasks object. Example: 0 1 * * *.

    IsEnabled bool

    Enable the Ocean ECS autoscaler.

    TaskType string

    Valid values: "clusterRoll". Required for cluster.scheduling.tasks object. Example: clusterRoll.

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    

    CronExpression string

    A valid cron expression. The cron is running in UTC time zone and is in Unix cron format Cron Expression Validator Script. Only one of frequency or cronExpression should be used at a time. Required for cluster.scheduling.tasks object. Example: 0 1 * * *.

    IsEnabled bool

    Enable the Ocean ECS autoscaler.

    TaskType string

    Valid values: "clusterRoll". Required for cluster.scheduling.tasks object. Example: clusterRoll.

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    

    cronExpression String

    A valid cron expression. The cron is running in UTC time zone and is in Unix cron format Cron Expression Validator Script. Only one of frequency or cronExpression should be used at a time. Required for cluster.scheduling.tasks object. Example: 0 1 * * *.

    isEnabled Boolean

    Enable the Ocean ECS autoscaler.

    taskType String

    Valid values: "clusterRoll". Required for cluster.scheduling.tasks object. Example: clusterRoll.

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    

    cronExpression string

    A valid cron expression. The cron is running in UTC time zone and is in Unix cron format Cron Expression Validator Script. Only one of frequency or cronExpression should be used at a time. Required for cluster.scheduling.tasks object. Example: 0 1 * * *.

    isEnabled boolean

    Enable the Ocean ECS autoscaler.

    taskType string

    Valid values: "clusterRoll". Required for cluster.scheduling.tasks object. Example: clusterRoll.

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    

    cron_expression str

    A valid cron expression. The cron is running in UTC time zone and is in Unix cron format Cron Expression Validator Script. Only one of frequency or cronExpression should be used at a time. Required for cluster.scheduling.tasks object. Example: 0 1 * * *.

    is_enabled bool

    Enable the Ocean ECS autoscaler.

    task_type str

    Valid values: "clusterRoll". Required for cluster.scheduling.tasks object. Example: clusterRoll.

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    

    cronExpression String

    A valid cron expression. The cron is running in UTC time zone and is in Unix cron format Cron Expression Validator Script. Only one of frequency or cronExpression should be used at a time. Required for cluster.scheduling.tasks object. Example: 0 1 * * *.

    isEnabled Boolean

    Enable the Ocean ECS autoscaler.

    taskType String

    Valid values: "clusterRoll". Required for cluster.scheduling.tasks object. Example: clusterRoll.

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    

    OceanTag, OceanTagArgs

    Key string

    The tag key.

    Value string

    The tag value.

    Key string

    The tag key.

    Value string

    The tag value.

    key String

    The tag key.

    value String

    The tag value.

    key string

    The tag key.

    value string

    The tag value.

    key str

    The tag key.

    value str

    The tag value.

    key String

    The tag key.

    value String

    The tag value.

    OceanUpdatePolicy, OceanUpdatePolicyArgs

    ShouldRoll bool

    Enables the roll.

    AutoApplyTags bool

    will update instance tags on the fly without rolling the cluster.

    ConditionedRoll bool

    Spot will perform a cluster Roll in accordance with a relevant modification of the cluster’s settings. When set to true , only specific changes in the cluster’s configuration will trigger a cluster roll (such as AMI, Key Pair, user data, instance types, load balancers, etc).

    RollConfig Pulumi.SpotInst.Ecs.Inputs.OceanUpdatePolicyRollConfig
    ShouldRoll bool

    Enables the roll.

    AutoApplyTags bool

    will update instance tags on the fly without rolling the cluster.

    ConditionedRoll bool

    Spot will perform a cluster Roll in accordance with a relevant modification of the cluster’s settings. When set to true , only specific changes in the cluster’s configuration will trigger a cluster roll (such as AMI, Key Pair, user data, instance types, load balancers, etc).

    RollConfig OceanUpdatePolicyRollConfig
    shouldRoll Boolean

    Enables the roll.

    autoApplyTags Boolean

    will update instance tags on the fly without rolling the cluster.

    conditionedRoll Boolean

    Spot will perform a cluster Roll in accordance with a relevant modification of the cluster’s settings. When set to true , only specific changes in the cluster’s configuration will trigger a cluster roll (such as AMI, Key Pair, user data, instance types, load balancers, etc).

    rollConfig OceanUpdatePolicyRollConfig
    shouldRoll boolean

    Enables the roll.

    autoApplyTags boolean

    will update instance tags on the fly without rolling the cluster.

    conditionedRoll boolean

    Spot will perform a cluster Roll in accordance with a relevant modification of the cluster’s settings. When set to true , only specific changes in the cluster’s configuration will trigger a cluster roll (such as AMI, Key Pair, user data, instance types, load balancers, etc).

    rollConfig OceanUpdatePolicyRollConfig
    should_roll bool

    Enables the roll.

    auto_apply_tags bool

    will update instance tags on the fly without rolling the cluster.

    conditioned_roll bool

    Spot will perform a cluster Roll in accordance with a relevant modification of the cluster’s settings. When set to true , only specific changes in the cluster’s configuration will trigger a cluster roll (such as AMI, Key Pair, user data, instance types, load balancers, etc).

    roll_config OceanUpdatePolicyRollConfig
    shouldRoll Boolean

    Enables the roll.

    autoApplyTags Boolean

    will update instance tags on the fly without rolling the cluster.

    conditionedRoll Boolean

    Spot will perform a cluster Roll in accordance with a relevant modification of the cluster’s settings. When set to true , only specific changes in the cluster’s configuration will trigger a cluster roll (such as AMI, Key Pair, user data, instance types, load balancers, etc).

    rollConfig Property Map

    OceanUpdatePolicyRollConfig, OceanUpdatePolicyRollConfigArgs

    BatchSizePercentage int

    Sets the percentage of the instances to deploy in each batch.

    BatchMinHealthyPercentage int

    Default: 50. Indicates the threshold of minimum healthy instances in single batch. If the amount of healthy instances in single batch is under the threshold, the cluster roll will fail. If exists, the parameter value will be in range of 1-100. In case of null as value, the default value in the backend will be 50%. Value of param should represent the number in percentage (%) of the batch.

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    BatchSizePercentage int

    Sets the percentage of the instances to deploy in each batch.

    BatchMinHealthyPercentage int

    Default: 50. Indicates the threshold of minimum healthy instances in single batch. If the amount of healthy instances in single batch is under the threshold, the cluster roll will fail. If exists, the parameter value will be in range of 1-100. In case of null as value, the default value in the backend will be 50%. Value of param should represent the number in percentage (%) of the batch.

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    batchSizePercentage Integer

    Sets the percentage of the instances to deploy in each batch.

    batchMinHealthyPercentage Integer

    Default: 50. Indicates the threshold of minimum healthy instances in single batch. If the amount of healthy instances in single batch is under the threshold, the cluster roll will fail. If exists, the parameter value will be in range of 1-100. In case of null as value, the default value in the backend will be 50%. Value of param should represent the number in percentage (%) of the batch.

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    batchSizePercentage number

    Sets the percentage of the instances to deploy in each batch.

    batchMinHealthyPercentage number

    Default: 50. Indicates the threshold of minimum healthy instances in single batch. If the amount of healthy instances in single batch is under the threshold, the cluster roll will fail. If exists, the parameter value will be in range of 1-100. In case of null as value, the default value in the backend will be 50%. Value of param should represent the number in percentage (%) of the batch.

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    batch_size_percentage int

    Sets the percentage of the instances to deploy in each batch.

    batch_min_healthy_percentage int

    Default: 50. Indicates the threshold of minimum healthy instances in single batch. If the amount of healthy instances in single batch is under the threshold, the cluster roll will fail. If exists, the parameter value will be in range of 1-100. In case of null as value, the default value in the backend will be 50%. Value of param should represent the number in percentage (%) of the batch.

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    batchSizePercentage Number

    Sets the percentage of the instances to deploy in each batch.

    batchMinHealthyPercentage Number

    Default: 50. Indicates the threshold of minimum healthy instances in single batch. If the amount of healthy instances in single batch is under the threshold, the cluster roll will fail. If exists, the parameter value will be in range of 1-100. In case of null as value, the default value in the backend will be 50%. Value of param should represent the number in percentage (%) of the batch.

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    

    Import

    Clusters can be imported using the Ocean id, e.g., hcl

     $ pulumi import spotinst:ecs/ocean:Ocean this o-12345678
    

    Package Details

    Repository
    Spotinst pulumi/pulumi-spotinst
    License
    Apache-2.0
    Notes

    This Pulumi package is based on the spotinst Terraform Provider.

    spotinst logo
    Spotinst v3.53.0 published on Friday, Sep 22, 2023 by Pulumi