spotinst logo
Spotinst v3.24.0, Feb 3 23

spotinst.aws.Ocean

Scheduled Task

  • scheduled_task - (Optional) Set scheduling object.
    • shutdown_hours - (Optional) Set shutdown hours for cluster object.
      • is_enabled - (Optional) Toggle the shutdown hours task. (Example: true).
      • time_windows - (Required) Set time windows for shutdown hours. Specify a list of timeWindows with at least one time window Each string is in the format of: ddd:hh:mm-ddd:hh:mm where ddd = day of week = Sun | Mon | Tue | Wed | Thu | Fri | Sat, hh = hour 24 = 0 -23, mm = minute = 0 - 59. Time windows should not overlap. Required if cluster.scheduling.isEnabled is true. (Example: Fri:15:30-Wed:14:30).
    • tasks - (Optional) The scheduling tasks for the cluster.
      • is_enabled - (Required) Describes whether the task is enabled. When true the task should run when false it should not run. Required for cluster.scheduling.tasks object.
      • cron_expression - (Required) 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 * * *).
      • task_type - (Required) Valid values: clusterRoll. Required for cluster.scheduling.tasks object. (Example: clusterRoll).
import * as pulumi from "@pulumi/pulumi";
import pulumi
using System.Collections.Generic;
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) {
    }
}
{}

Example Usage

using System.Collections.Generic;
using Pulumi;

return await Deployment.RunAsync(() => 
{
    return new Dictionary<string, object?>
    {
        ["oceanId"] = spotinst_ocean_aws.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_aws.Example.Id)
		return nil
	})
}
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.spotinst.aws.Ocean;
import com.pulumi.spotinst.aws.OceanArgs;
import com.pulumi.spotinst.aws.inputs.OceanClusterOrientationArgs;
import com.pulumi.spotinst.aws.inputs.OceanInstanceMetadataOptionsArgs;
import com.pulumi.spotinst.aws.inputs.OceanLoadBalancerArgs;
import com.pulumi.spotinst.aws.inputs.OceanLoggingArgs;
import com.pulumi.spotinst.aws.inputs.OceanLoggingExportArgs;
import com.pulumi.spotinst.aws.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(true)
            .clusterOrientations(OceanClusterOrientationArgs.builder()
                .availabilityVsCost("balanced")
                .build())
            .controllerId("ocean-dev")
            .desiredCapacity(2)
            .drainingTimeout(120)
            .ebsOptimized(true)
            .fallbackToOndemand(true)
            .gracePeriod(600)
            .iamInstanceProfile("iam-profile")
            .imageId("ami-123456")
            .instanceTypes(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))
            .instanceMetadataOptions(OceanInstanceMetadataOptionsArgs.builder()
                .httpPutResponseHopLimit(10)
                .httpTokens("required")
                .build())
            .keyName("fake key")
            .loadBalancers(            
                OceanLoadBalancerArgs.builder()
                    .arn("arn:aws:elasticloadbalancing:us-west-2:fake-arn")
                    .type("TARGET_GROUP")
                    .build(),
                OceanLoadBalancerArgs.builder()
                    .name("example")
                    .type("CLASSIC")
                    .build())
            .logging(OceanLoggingArgs.builder()
                .export(OceanLoggingExportArgs.builder()
                    .s3(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))
                    .build())
                .build())
            .maxSize(2)
            .minSize(1)
            .monitoring(true)
            .region("us-west-2")
            .rootVolumeSize(20)
            .securityGroups("sg-987654321")
            .spotPercentage(100)
            .subnetIds("subnet-123456789")
            .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_aws["example"]["id"])
import * as pulumi from "@pulumi/pulumi";

export const oceanId = spotinst_ocean_aws.example.id;
resources:
  example:
    type: spotinst:aws:Ocean
    properties:
      associatePublicIpAddress: true
      clusterOrientations:
        - availabilityVsCost: balanced
      controllerId: ocean-dev
      desiredCapacity: 2
      drainingTimeout: 120
      ebsOptimized: true
      # region STRATEGY
      fallbackToOndemand: true
      gracePeriod: 600
      iamInstanceProfile: iam-profile
      # region LAUNCH CONFIGURATION
      imageId: ami-123456
      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
      keyName: fake key
      loadBalancers:
        - arn: arn:aws:elasticloadbalancing:us-west-2:fake-arn
          type: TARGET_GROUP
        - name: example
          type: CLASSIC
      logging:
        export:
          s3:
            - id: di-abcd123
      maxSize: 2
      minSize: 1
      monitoring: true
      region: us-west-2
      rootVolumeSize: 20
      securityGroups:
        - sg-987654321
      spotPercentage: 100
      subnetIds:
        - subnet-123456789
      tags:
        - key: fakeKey
          value: fakeValue
      useAsTemplateOnly: true
      userData: echo hello world
      utilizeCommitments: false
      utilizeReservedInstances: false
using System.Collections.Generic;
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) {
        ctx.export("oceanId", spotinst_ocean_aws.example().id());
    }
}
import pulumi
import * as pulumi from "@pulumi/pulumi";
outputs:
  oceanId: ${spotinst_ocean_aws.example.id}

).

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) {
    }
}

Coming soon!

Coming soon!

{}

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,
          cluster_orientations: Optional[Sequence[OceanClusterOrientationArgs]] = None,
          controller_id: Optional[str] = None,
          desired_capacity: Optional[int] = None,
          draining_timeout: Optional[int] = None,
          ebs_optimized: Optional[bool] = None,
          fallback_to_ondemand: Optional[bool] = None,
          filters: Optional[OceanFiltersArgs] = None,
          grace_period: Optional[int] = None,
          iam_instance_profile: Optional[str] = None,
          image_id: Optional[str] = None,
          instance_metadata_options: Optional[OceanInstanceMetadataOptionsArgs] = None,
          key_name: Optional[str] = None,
          load_balancers: Optional[Sequence[OceanLoadBalancerArgs]] = None,
          logging: Optional[OceanLoggingArgs] = None,
          max_size: Optional[int] = None,
          min_size: Optional[int] = None,
          monitoring: Optional[bool] = None,
          name: Optional[str] = None,
          region: Optional[str] = None,
          root_volume_size: Optional[int] = None,
          scheduled_tasks: Optional[Sequence[OceanScheduledTaskArgs]] = None,
          security_groups: 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:aws: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:

SecurityGroups 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.Aws.Inputs.OceanAutoscalerArgs

Describes the Ocean Kubernetes Auto Scaler.

Blacklists List<string>

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

ClusterOrientations List<Pulumi.SpotInst.Aws.Inputs.OceanClusterOrientationArgs>
ControllerId string

A unique identifier used for connecting the Ocean SaaS platform and the Kubernetes cluster. Typically, the cluster name is used as its identifier.

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.

FallbackToOndemand bool

If not Spot instance markets are available, enable Ocean to launch On-Demand instances instead.

Filters Pulumi.SpotInst.Aws.Inputs.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.

GracePeriod int

The amount of time, in seconds, after the instance has launched to start checking its health.

IamInstanceProfile string

The instance profile iam role.

ImageId string

ID of the image used to launch the instances.

InstanceMetadataOptions Pulumi.SpotInst.Aws.Inputs.OceanInstanceMetadataOptionsArgs

Ocean instance metadata options object for IMDSv2.

KeyName string

The key pair to attach the instances.

LoadBalancers List<Pulumi.SpotInst.Aws.Inputs.OceanLoadBalancerArgs>

Array of load balancer objects to add to ocean cluster

Logging Pulumi.SpotInst.Aws.Inputs.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

Required if type is set to CLASSIC

Region string

The region the cluster will run in.

RootVolumeSize int

The size (in Gb) to allocate for the root volume. Minimum 20.

ScheduledTasks List<Pulumi.SpotInst.Aws.Inputs.OceanScheduledTaskArgs>
SpotPercentage int

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

Tags List<Pulumi.SpotInst.Aws.Inputs.OceanTagArgs>

Optionally adds tags to instances launched in an Ocean cluster.

UpdatePolicy Pulumi.SpotInst.Aws.Inputs.OceanUpdatePolicyArgs
UseAsTemplateOnly bool

launch specification defined on the Ocean object will function only as a template for virtual node groups. When set to true, on Ocean resource creation please make sure your custom VNG has an initial_nodes parameter to create nodes for your VNG.

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 is configured.

SecurityGroups []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 Kubernetes Auto Scaler.

Blacklists []string

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

ClusterOrientations []OceanClusterOrientationArgs
ControllerId string

A unique identifier used for connecting the Ocean SaaS platform and the Kubernetes cluster. Typically, the cluster name is used as its identifier.

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.

FallbackToOndemand bool

If not Spot instance markets are available, enable Ocean to launch On-Demand instances instead.

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.

GracePeriod int

The amount of time, in seconds, after the instance has launched to start checking its health.

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.

KeyName string

The key pair to attach the instances.

LoadBalancers []OceanLoadBalancerArgs

Array of load balancer objects to add to ocean cluster

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

Required if type is set to CLASSIC

Region string

The region the cluster will run in.

RootVolumeSize int

The size (in Gb) to allocate for the root volume. Minimum 20.

ScheduledTasks []OceanScheduledTaskArgs
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. When set to true, on Ocean resource creation please make sure your custom VNG has an initial_nodes parameter to create nodes for your VNG.

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 is configured.

securityGroups 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 OceanAutoscalerArgs

Describes the Ocean Kubernetes Auto Scaler.

blacklists List<String>

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

clusterOrientations List<OceanClusterOrientationArgs>
controllerId String

A unique identifier used for connecting the Ocean SaaS platform and the Kubernetes cluster. Typically, the cluster name is used as its identifier.

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.

fallbackToOndemand Boolean

If not Spot instance markets are available, enable Ocean to launch On-Demand instances instead.

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.

gracePeriod Integer

The amount of time, in seconds, after the instance has launched to start checking its health.

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.

keyName String

The key pair to attach the instances.

loadBalancers List<OceanLoadBalancerArgs>

Array of load balancer objects to add to ocean cluster

logging OceanLoggingArgs

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

Required if type is set to CLASSIC

region String

The region the cluster will run in.

rootVolumeSize Integer

The size (in Gb) to allocate for the root volume. Minimum 20.

scheduledTasks List<OceanScheduledTaskArgs>
spotPercentage Integer

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

tags List<OceanTagArgs>

Optionally adds tags to instances launched in an Ocean cluster.

updatePolicy OceanUpdatePolicyArgs
useAsTemplateOnly Boolean

launch specification defined on the Ocean object will function only as a template for virtual node groups. When set to true, on Ocean resource creation please make sure your custom VNG has an initial_nodes parameter to create nodes for your VNG.

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 is configured.

securityGroups 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 OceanAutoscalerArgs

Describes the Ocean Kubernetes Auto Scaler.

blacklists string[]

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

clusterOrientations OceanClusterOrientationArgs[]
controllerId string

A unique identifier used for connecting the Ocean SaaS platform and the Kubernetes cluster. Typically, the cluster name is used as its identifier.

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.

fallbackToOndemand boolean

If not Spot instance markets are available, enable Ocean to launch On-Demand instances instead.

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.

gracePeriod number

The amount of time, in seconds, after the instance has launched to start checking its health.

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.

keyName string

The key pair to attach the instances.

loadBalancers OceanLoadBalancerArgs[]

Array of load balancer objects to add to ocean cluster

logging OceanLoggingArgs

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

Required if type is set to CLASSIC

region string

The region the cluster will run in.

rootVolumeSize number

The size (in Gb) to allocate for the root volume. Minimum 20.

scheduledTasks OceanScheduledTaskArgs[]
spotPercentage number

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 boolean

launch specification defined on the Ocean object will function only as a template for virtual node groups. When set to true, on Ocean resource creation please make sure your custom VNG has an initial_nodes parameter to create nodes for your VNG.

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 is configured.

security_groups 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 Kubernetes Auto Scaler.

blacklists Sequence[str]

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

cluster_orientations Sequence[OceanClusterOrientationArgs]
controller_id str

A unique identifier used for connecting the Ocean SaaS platform and the Kubernetes cluster. Typically, the cluster name is used as its identifier.

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.

fallback_to_ondemand bool

If not Spot instance markets are available, enable Ocean to launch On-Demand instances instead.

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.

grace_period int

The amount of time, in seconds, after the instance has launched to start checking its health.

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_name str

The key pair to attach the instances.

load_balancers Sequence[OceanLoadBalancerArgs]

Array of load balancer objects to add to ocean cluster

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

Required if type is set to CLASSIC

region str

The region the cluster will run in.

root_volume_size int

The size (in Gb) to allocate for the root volume. Minimum 20.

scheduled_tasks Sequence[OceanScheduledTaskArgs]
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. When set to true, on Ocean resource creation please make sure your custom VNG has an initial_nodes parameter to create nodes for your VNG.

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 is configured.

securityGroups 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 Kubernetes Auto Scaler.

blacklists List<String>

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

clusterOrientations List<Property Map>
controllerId String

A unique identifier used for connecting the Ocean SaaS platform and the Kubernetes cluster. Typically, the cluster name is used as its identifier.

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.

fallbackToOndemand Boolean

If not Spot instance markets are available, enable Ocean to launch On-Demand instances instead.

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.

gracePeriod Number

The amount of time, in seconds, after the instance has launched to start checking its health.

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.

keyName String

The key pair to attach the instances.

loadBalancers List<Property Map>

Array of load balancer objects to add to ocean cluster

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

Required if type is set to CLASSIC

region String

The region the cluster will run in.

rootVolumeSize Number

The size (in Gb) to allocate for the root volume. Minimum 20.

scheduledTasks List<Property Map>
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. When set to true, on Ocean resource creation please make sure your custom VNG has an initial_nodes parameter to create nodes for your VNG.

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 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,
        cluster_orientations: Optional[Sequence[OceanClusterOrientationArgs]] = None,
        controller_id: Optional[str] = None,
        desired_capacity: Optional[int] = None,
        draining_timeout: Optional[int] = None,
        ebs_optimized: Optional[bool] = None,
        fallback_to_ondemand: Optional[bool] = None,
        filters: Optional[OceanFiltersArgs] = None,
        grace_period: Optional[int] = None,
        iam_instance_profile: Optional[str] = None,
        image_id: Optional[str] = None,
        instance_metadata_options: Optional[OceanInstanceMetadataOptionsArgs] = None,
        key_name: Optional[str] = None,
        load_balancers: Optional[Sequence[OceanLoadBalancerArgs]] = None,
        logging: Optional[OceanLoggingArgs] = None,
        max_size: Optional[int] = None,
        min_size: Optional[int] = None,
        monitoring: Optional[bool] = None,
        name: Optional[str] = None,
        region: Optional[str] = None,
        root_volume_size: Optional[int] = None,
        scheduled_tasks: Optional[Sequence[OceanScheduledTaskArgs]] = None,
        security_groups: 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.Aws.Inputs.OceanAutoscalerArgs

Describes the Ocean Kubernetes Auto Scaler.

Blacklists List<string>

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

ClusterOrientations List<Pulumi.SpotInst.Aws.Inputs.OceanClusterOrientationArgs>
ControllerId string

A unique identifier used for connecting the Ocean SaaS platform and the Kubernetes cluster. Typically, the cluster name is used as its identifier.

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.

FallbackToOndemand bool

If not Spot instance markets are available, enable Ocean to launch On-Demand instances instead.

Filters Pulumi.SpotInst.Aws.Inputs.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.

GracePeriod int

The amount of time, in seconds, after the instance has launched to start checking its health.

IamInstanceProfile string

The instance profile iam role.

ImageId string

ID of the image used to launch the instances.

InstanceMetadataOptions Pulumi.SpotInst.Aws.Inputs.OceanInstanceMetadataOptionsArgs

Ocean instance metadata options object for IMDSv2.

KeyName string

The key pair to attach the instances.

LoadBalancers List<Pulumi.SpotInst.Aws.Inputs.OceanLoadBalancerArgs>

Array of load balancer objects to add to ocean cluster

Logging Pulumi.SpotInst.Aws.Inputs.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

Required if type is set to CLASSIC

Region string

The region the cluster will run in.

RootVolumeSize int

The size (in Gb) to allocate for the root volume. Minimum 20.

ScheduledTasks List<Pulumi.SpotInst.Aws.Inputs.OceanScheduledTaskArgs>
SecurityGroups 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.Aws.Inputs.OceanTagArgs>

Optionally adds tags to instances launched in an Ocean cluster.

UpdatePolicy Pulumi.SpotInst.Aws.Inputs.OceanUpdatePolicyArgs
UseAsTemplateOnly bool

launch specification defined on the Ocean object will function only as a template for virtual node groups. When set to true, on Ocean resource creation please make sure your custom VNG has an initial_nodes parameter to create nodes for your VNG.

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 is configured.

AssociatePublicIpAddress bool

Configure public IP address allocation.

Autoscaler OceanAutoscalerArgs

Describes the Ocean Kubernetes Auto Scaler.

Blacklists []string

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

ClusterOrientations []OceanClusterOrientationArgs
ControllerId string

A unique identifier used for connecting the Ocean SaaS platform and the Kubernetes cluster. Typically, the cluster name is used as its identifier.

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.

FallbackToOndemand bool

If not Spot instance markets are available, enable Ocean to launch On-Demand instances instead.

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.

GracePeriod int

The amount of time, in seconds, after the instance has launched to start checking its health.

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.

KeyName string

The key pair to attach the instances.

LoadBalancers []OceanLoadBalancerArgs

Array of load balancer objects to add to ocean cluster

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

Required if type is set to CLASSIC

Region string

The region the cluster will run in.

RootVolumeSize int

The size (in Gb) to allocate for the root volume. Minimum 20.

ScheduledTasks []OceanScheduledTaskArgs
SecurityGroups []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. When set to true, on Ocean resource creation please make sure your custom VNG has an initial_nodes parameter to create nodes for your VNG.

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 is configured.

associatePublicIpAddress Boolean

Configure public IP address allocation.

autoscaler OceanAutoscalerArgs

Describes the Ocean Kubernetes Auto Scaler.

blacklists List<String>

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

clusterOrientations List<OceanClusterOrientationArgs>
controllerId String

A unique identifier used for connecting the Ocean SaaS platform and the Kubernetes cluster. Typically, the cluster name is used as its identifier.

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.

fallbackToOndemand Boolean

If not Spot instance markets are available, enable Ocean to launch On-Demand instances instead.

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.

gracePeriod Integer

The amount of time, in seconds, after the instance has launched to start checking its health.

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.

keyName String

The key pair to attach the instances.

loadBalancers List<OceanLoadBalancerArgs>

Array of load balancer objects to add to ocean cluster

logging OceanLoggingArgs

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

Required if type is set to CLASSIC

region String

The region the cluster will run in.

rootVolumeSize Integer

The size (in Gb) to allocate for the root volume. Minimum 20.

scheduledTasks List<OceanScheduledTaskArgs>
securityGroups 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<OceanTagArgs>

Optionally adds tags to instances launched in an Ocean cluster.

updatePolicy OceanUpdatePolicyArgs
useAsTemplateOnly Boolean

launch specification defined on the Ocean object will function only as a template for virtual node groups. When set to true, on Ocean resource creation please make sure your custom VNG has an initial_nodes parameter to create nodes for your VNG.

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 is configured.

associatePublicIpAddress boolean

Configure public IP address allocation.

autoscaler OceanAutoscalerArgs

Describes the Ocean Kubernetes Auto Scaler.

blacklists string[]

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

clusterOrientations OceanClusterOrientationArgs[]
controllerId string

A unique identifier used for connecting the Ocean SaaS platform and the Kubernetes cluster. Typically, the cluster name is used as its identifier.

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.

fallbackToOndemand boolean

If not Spot instance markets are available, enable Ocean to launch On-Demand instances instead.

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.

gracePeriod number

The amount of time, in seconds, after the instance has launched to start checking its health.

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.

keyName string

The key pair to attach the instances.

loadBalancers OceanLoadBalancerArgs[]

Array of load balancer objects to add to ocean cluster

logging OceanLoggingArgs

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

Required if type is set to CLASSIC

region string

The region the cluster will run in.

rootVolumeSize number

The size (in Gb) to allocate for the root volume. Minimum 20.

scheduledTasks OceanScheduledTaskArgs[]
securityGroups 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 OceanTagArgs[]

Optionally adds tags to instances launched in an Ocean cluster.

updatePolicy OceanUpdatePolicyArgs
useAsTemplateOnly boolean

launch specification defined on the Ocean object will function only as a template for virtual node groups. When set to true, on Ocean resource creation please make sure your custom VNG has an initial_nodes parameter to create nodes for your VNG.

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 is configured.

associate_public_ip_address bool

Configure public IP address allocation.

autoscaler OceanAutoscalerArgs

Describes the Ocean Kubernetes Auto Scaler.

blacklists Sequence[str]

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

cluster_orientations Sequence[OceanClusterOrientationArgs]
controller_id str

A unique identifier used for connecting the Ocean SaaS platform and the Kubernetes cluster. Typically, the cluster name is used as its identifier.

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.

fallback_to_ondemand bool

If not Spot instance markets are available, enable Ocean to launch On-Demand instances instead.

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.

grace_period int

The amount of time, in seconds, after the instance has launched to start checking its health.

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_name str

The key pair to attach the instances.

load_balancers Sequence[OceanLoadBalancerArgs]

Array of load balancer objects to add to ocean cluster

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

Required if type is set to CLASSIC

region str

The region the cluster will run in.

root_volume_size int

The size (in Gb) to allocate for the root volume. Minimum 20.

scheduled_tasks Sequence[OceanScheduledTaskArgs]
security_groups 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. When set to true, on Ocean resource creation please make sure your custom VNG has an initial_nodes parameter to create nodes for your VNG.

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 is configured.

associatePublicIpAddress Boolean

Configure public IP address allocation.

autoscaler Property Map

Describes the Ocean Kubernetes Auto Scaler.

blacklists List<String>

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

clusterOrientations List<Property Map>
controllerId String

A unique identifier used for connecting the Ocean SaaS platform and the Kubernetes cluster. Typically, the cluster name is used as its identifier.

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.

fallbackToOndemand Boolean

If not Spot instance markets are available, enable Ocean to launch On-Demand instances instead.

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.

gracePeriod Number

The amount of time, in seconds, after the instance has launched to start checking its health.

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.

keyName String

The key pair to attach the instances.

loadBalancers List<Property Map>

Array of load balancer objects to add to ocean cluster

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

Required if type is set to CLASSIC

region String

The region the cluster will run in.

rootVolumeSize Number

The size (in Gb) to allocate for the root volume. Minimum 20.

scheduledTasks List<Property Map>
securityGroups 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. When set to true, on Ocean resource creation please make sure your custom VNG has an initial_nodes parameter to create nodes for your VNG.

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 is configured.

Supporting Types

OceanAutoscaler

AutoHeadroomPercentage int

Set the auto headroom percentage (a number in the range [0, 200]) which controls the percentage of headroom from the cluster. Relevant only when autoscale_is_auto_config toggled on.

AutoscaleCooldown int

Cooldown period between scaling actions.

AutoscaleDown Pulumi.SpotInst.Aws.Inputs.OceanAutoscalerAutoscaleDown

Auto Scaling scale down operations.

AutoscaleHeadroom Pulumi.SpotInst.Aws.Inputs.OceanAutoscalerAutoscaleHeadroom

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

AutoscaleIsAutoConfig bool

Automatically configure and optimize headroom resources.

AutoscaleIsEnabled bool

Enable the Ocean Kubernetes Auto Scaler.

EnableAutomaticAndManualHeadroom bool

enables automatic and manual headroom to work in parallel. When set to false, automatic headroom overrides all other headroom definitions manually configured, whether they are at cluster or VNG level.

ExtendedResourceDefinitions List<string>

List of Ocean extended resource definitions to use in this cluster.

ResourceLimits Pulumi.SpotInst.Aws.Inputs.OceanAutoscalerResourceLimits

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

AutoHeadroomPercentage int

Set the auto headroom percentage (a number in the range [0, 200]) which controls the percentage of headroom from the cluster. Relevant only when autoscale_is_auto_config toggled on.

AutoscaleCooldown int

Cooldown period between scaling actions.

AutoscaleDown OceanAutoscalerAutoscaleDown

Auto Scaling scale down operations.

AutoscaleHeadroom OceanAutoscalerAutoscaleHeadroom

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

AutoscaleIsAutoConfig bool

Automatically configure and optimize headroom resources.

AutoscaleIsEnabled bool

Enable the Ocean Kubernetes Auto Scaler.

EnableAutomaticAndManualHeadroom bool

enables automatic and manual headroom to work in parallel. When set to false, automatic headroom overrides all other headroom definitions manually configured, whether they are at cluster or VNG level.

ExtendedResourceDefinitions []string

List of Ocean extended resource definitions to use in this cluster.

ResourceLimits OceanAutoscalerResourceLimits

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

autoHeadroomPercentage Integer

Set the auto headroom percentage (a number in the range [0, 200]) which controls the percentage of headroom from the cluster. Relevant only when autoscale_is_auto_config toggled on.

autoscaleCooldown Integer

Cooldown period between scaling actions.

autoscaleDown OceanAutoscalerAutoscaleDown

Auto Scaling scale down operations.

autoscaleHeadroom OceanAutoscalerAutoscaleHeadroom

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

autoscaleIsAutoConfig Boolean

Automatically configure and optimize headroom resources.

autoscaleIsEnabled Boolean

Enable the Ocean Kubernetes Auto Scaler.

enableAutomaticAndManualHeadroom Boolean

enables automatic and manual headroom to work in parallel. When set to false, automatic headroom overrides all other headroom definitions manually configured, whether they are at cluster or VNG level.

extendedResourceDefinitions List<String>

List of Ocean extended resource definitions to use in this cluster.

resourceLimits OceanAutoscalerResourceLimits

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

autoHeadroomPercentage number

Set the auto headroom percentage (a number in the range [0, 200]) which controls the percentage of headroom from the cluster. Relevant only when autoscale_is_auto_config toggled on.

autoscaleCooldown number

Cooldown period between scaling actions.

autoscaleDown OceanAutoscalerAutoscaleDown

Auto Scaling scale down operations.

autoscaleHeadroom OceanAutoscalerAutoscaleHeadroom

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

autoscaleIsAutoConfig boolean

Automatically configure and optimize headroom resources.

autoscaleIsEnabled boolean

Enable the Ocean Kubernetes Auto Scaler.

enableAutomaticAndManualHeadroom boolean

enables automatic and manual headroom to work in parallel. When set to false, automatic headroom overrides all other headroom definitions manually configured, whether they are at cluster or VNG level.

extendedResourceDefinitions string[]

List of Ocean extended resource definitions to use in this cluster.

resourceLimits OceanAutoscalerResourceLimits

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

auto_headroom_percentage int

Set the auto headroom percentage (a number in the range [0, 200]) which controls the percentage of headroom from the cluster. Relevant only when autoscale_is_auto_config toggled on.

autoscale_cooldown int

Cooldown period between scaling actions.

autoscale_down OceanAutoscalerAutoscaleDown

Auto Scaling scale down operations.

autoscale_headroom OceanAutoscalerAutoscaleHeadroom

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

autoscale_is_auto_config bool

Automatically configure and optimize headroom resources.

autoscale_is_enabled bool

Enable the Ocean Kubernetes Auto Scaler.

enable_automatic_and_manual_headroom bool

enables automatic and manual headroom to work in parallel. When set to false, automatic headroom overrides all other headroom definitions manually configured, whether they are at cluster or VNG level.

extended_resource_definitions Sequence[str]

List of Ocean extended resource definitions to use in this cluster.

resource_limits OceanAutoscalerResourceLimits

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

autoHeadroomPercentage Number

Set the auto headroom percentage (a number in the range [0, 200]) which controls the percentage of headroom from the cluster. Relevant only when autoscale_is_auto_config toggled on.

autoscaleCooldown Number

Cooldown period between scaling actions.

autoscaleDown Property Map

Auto Scaling scale down operations.

autoscaleHeadroom Property Map

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

autoscaleIsAutoConfig Boolean

Automatically configure and optimize headroom resources.

autoscaleIsEnabled Boolean

Enable the Ocean Kubernetes Auto Scaler.

enableAutomaticAndManualHeadroom Boolean

enables automatic and manual headroom to work in parallel. When set to false, automatic headroom overrides all other headroom definitions manually configured, whether they are at cluster or VNG level.

extendedResourceDefinitions List<String>

List of Ocean extended resource definitions to use in this cluster.

resourceLimits Property Map

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

OceanAutoscalerAutoscaleDown

EvaluationPeriods int
MaxScaleDownPercentage double

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

EvaluationPeriods int
MaxScaleDownPercentage float64

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

evaluationPeriods Integer
maxScaleDownPercentage Double

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

evaluationPeriods number
maxScaleDownPercentage number

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

evaluation_periods int
max_scale_down_percentage float

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

evaluationPeriods Number
maxScaleDownPercentage Number

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

OceanAutoscalerAutoscaleHeadroom

CpuPerUnit int

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

GpuPerUnit int

Optionally configure the number of GPUs to allocate the headroom.

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.

GpuPerUnit int

Optionally configure the number of GPUs to allocate the headroom.

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.

gpuPerUnit Integer

Optionally configure the number of GPUs to allocate the headroom.

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.

gpuPerUnit number

Optionally configure the number of GPUs to allocate the headroom.

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.

gpu_per_unit int

Optionally configure the number of GPUs to allocate the headroom.

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.

gpuPerUnit Number

Optionally configure the number of GPUs to allocate the headroom.

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

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.

OceanClusterOrientation

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

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

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.

OceanLoadBalancer

Arn string

Required if type is set to TARGET_GROUP

Name string

Required if type is set to CLASSIC

Type string

Can be set to CLASSIC or TARGET_GROUP

Arn string

Required if type is set to TARGET_GROUP

Name string

Required if type is set to CLASSIC

Type string

Can be set to CLASSIC or TARGET_GROUP

arn String

Required if type is set to TARGET_GROUP

name String

Required if type is set to CLASSIC

type String

Can be set to CLASSIC or TARGET_GROUP

arn string

Required if type is set to TARGET_GROUP

name string

Required if type is set to CLASSIC

type string

Can be set to CLASSIC or TARGET_GROUP

arn str

Required if type is set to TARGET_GROUP

name str

Required if type is set to CLASSIC

type str

Can be set to CLASSIC or TARGET_GROUP

arn String

Required if type is set to TARGET_GROUP

name String

Required if type is set to CLASSIC

type String

Can be set to CLASSIC or TARGET_GROUP

OceanLogging

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

S3s List<Pulumi.SpotInst.Aws.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

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.

OceanScheduledTask

OceanScheduledTaskShutdownHours

TimeWindows List<string>
IsEnabled bool
TimeWindows []string
IsEnabled bool
timeWindows List<String>
isEnabled Boolean
timeWindows string[]
isEnabled boolean
time_windows Sequence[str]
is_enabled bool
timeWindows List<String>
isEnabled Boolean

OceanScheduledTaskTask

cronExpression String
isEnabled Boolean
taskType String
cronExpression string
isEnabled boolean
taskType string
cronExpression String
isEnabled Boolean
taskType String

OceanTag

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

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.Aws.Inputs.OceanUpdatePolicyRollConfig

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

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

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

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

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

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

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

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

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

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

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

OceanUpdatePolicyRollConfig

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.

LaunchSpecIds List<string>

List of virtual node group identifiers to be rolled.

RespectPdb bool

During the roll, if the parameter is set to True we honor PDB during the instance replacement.

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.

LaunchSpecIds []string

List of virtual node group identifiers to be rolled.

RespectPdb bool

During the roll, if the parameter is set to True we honor PDB during the instance replacement.

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.

launchSpecIds List<String>

List of virtual node group identifiers to be rolled.

respectPdb Boolean

During the roll, if the parameter is set to True we honor PDB during the instance replacement.

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.

launchSpecIds string[]

List of virtual node group identifiers to be rolled.

respectPdb boolean

During the roll, if the parameter is set to True we honor PDB during the instance replacement.

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.

launch_spec_ids Sequence[str]

List of virtual node group identifiers to be rolled.

respect_pdb bool

During the roll, if the parameter is set to True we honor PDB during the instance replacement.

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.

launchSpecIds List<String>

List of virtual node group identifiers to be rolled.

respectPdb Boolean

During the roll, if the parameter is set to True we honor PDB during the instance replacement.

Import

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

 $ pulumi import spotinst:aws/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.