Ocean

Create a Ocean Resource

new Ocean(name: string, args: OceanArgs, opts?: CustomResourceOptions);
def Ocean(resource_name, opts=None, associate_public_ip_address=None, autoscaler=None, cluster_name=None, desired_capacity=None, draining_timeout=None, ebs_optimized=None, iam_instance_profile=None, image_id=None, key_pair=None, max_size=None, min_size=None, monitoring=None, name=None, region=None, scheduled_tasks=None, security_group_ids=None, subnet_ids=None, tags=None, update_policy=None, user_data=None, utilize_reserved_instances=None, whitelists=None, __props__=None);
func NewOcean(ctx *Context, name string, args OceanArgs, opts ...ResourceOption) (*Ocean, error)
public Ocean(string name, OceanArgs args, CustomResourceOptions? opts = null)
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.
opts ResourceOptions
A bag of options that control this 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.

Ocean Resource Properties

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

Inputs

The Ocean resource accepts the following input properties:

ClusterName string

The ocean cluster name.

Region string

The region the cluster will run in.

SecurityGroupIds List<string>

One or more security group ids.

SubnetIds List<string>

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

AssociatePublicIpAddress bool

Configure public IP address allocation.

Autoscaler Pulumi.SpotInst.Ecs.Inputs.OceanAutoscalerArgs
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.

IamInstanceProfile string

The instance profile iam role.

ImageId string

ID of the image used to launch the instances.

KeyPair string

The key pair to attach the instances.

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 detailed monitoring (one minute increments). Note: there are additional hourly costs for this service based on the region used.

Name string

The Ocean cluster name.

ScheduledTasks List<Pulumi.SpotInst.Ecs.Inputs.OceanScheduledTaskArgs>
Tags List<Pulumi.SpotInst.Ecs.Inputs.OceanTagArgs>

Optionally adds tags to instances launched in an Ocean cluster.

UpdatePolicy Pulumi.SpotInst.Ecs.Inputs.OceanUpdatePolicyArgs
UserData string

Base64-encoded MIME user data to make available to the 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.

ClusterName string

The ocean cluster name.

Region string

The region the cluster will run in.

SecurityGroupIds []string

One or more security group ids.

SubnetIds []string

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

AssociatePublicIpAddress bool

Configure public IP address allocation.

Autoscaler OceanAutoscaler
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.

IamInstanceProfile string

The instance profile iam role.

ImageId string

ID of the image used to launch the instances.

KeyPair string

The key pair to attach the instances.

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 detailed monitoring (one minute increments). Note: there are additional hourly costs for this service based on the region used.

Name string

The Ocean cluster name.

ScheduledTasks []OceanScheduledTask
Tags []OceanTag

Optionally adds tags to instances launched in an Ocean cluster.

UpdatePolicy OceanUpdatePolicy
UserData string

Base64-encoded MIME user data to make available to the 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.

clusterName string

The ocean cluster name.

region string

The region the cluster will run in.

securityGroupIds string[]

One or more security group ids.

subnetIds string[]

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

associatePublicIpAddress boolean

Configure public IP address allocation.

autoscaler OceanAutoscaler
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.

iamInstanceProfile string

The instance profile iam role.

imageId string

ID of the image used to launch the instances.

keyPair string

The key pair to attach the instances.

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 detailed monitoring (one minute increments). Note: there are additional hourly costs for this service based on the region used.

name string

The Ocean cluster name.

scheduledTasks OceanScheduledTask[]
tags OceanTag[]

Optionally adds tags to instances launched in an Ocean cluster.

updatePolicy OceanUpdatePolicy
userData string

Base64-encoded MIME user data to make available to the 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.

cluster_name str

The ocean cluster name.

region str

The region the cluster will run in.

security_group_ids List[str]

One or more security group ids.

subnet_ids List[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 Dict[OceanAutoscaler]
desired_capacity float

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

draining_timeout float

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.

iam_instance_profile str

The instance profile iam role.

image_id str

ID of the image used to launch the instances.

key_pair str

The key pair to attach the instances.

max_size float

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

min_size float

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

monitoring bool

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

name str

The Ocean cluster name.

scheduled_tasks List[OceanScheduledTask]
tags List[OceanTag]

Optionally adds tags to instances launched in an Ocean cluster.

update_policy Dict[OceanUpdatePolicy]
user_data str

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

utilize_reserved_instances bool

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

whitelists List[str]

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 str
The provider-assigned unique ID for this managed resource.

Look up an 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
static get(resource_name, id, opts=None, associate_public_ip_address=None, autoscaler=None, cluster_name=None, desired_capacity=None, draining_timeout=None, ebs_optimized=None, iam_instance_profile=None, image_id=None, key_pair=None, max_size=None, min_size=None, monitoring=None, name=None, region=None, scheduled_tasks=None, security_group_ids=None, subnet_ids=None, tags=None, update_policy=None, user_data=None, utilize_reserved_instances=None, whitelists=None, __props__=None);
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)
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.

The following state arguments are supported:

AssociatePublicIpAddress bool

Configure public IP address allocation.

Autoscaler Pulumi.SpotInst.Ecs.Inputs.OceanAutoscalerArgs
ClusterName string

The ocean cluster name.

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.

IamInstanceProfile string

The instance profile iam role.

ImageId string

ID of the image used to launch the instances.

KeyPair string

The key pair to attach the instances.

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 detailed monitoring (one minute increments). Note: there are additional hourly costs for this service based on the region used.

Name string

The Ocean cluster name.

Region string

The region the cluster will run in.

ScheduledTasks List<Pulumi.SpotInst.Ecs.Inputs.OceanScheduledTaskArgs>
SecurityGroupIds List<string>

One or more security group ids.

SubnetIds List<string>

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

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

Optionally adds tags to instances launched in an Ocean cluster.

UpdatePolicy Pulumi.SpotInst.Ecs.Inputs.OceanUpdatePolicyArgs
UserData string

Base64-encoded MIME user data to make available to the 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 OceanAutoscaler
ClusterName string

The ocean cluster name.

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.

IamInstanceProfile string

The instance profile iam role.

ImageId string

ID of the image used to launch the instances.

KeyPair string

The key pair to attach the instances.

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 detailed monitoring (one minute increments). Note: there are additional hourly costs for this service based on the region used.

Name string

The Ocean cluster name.

Region string

The region the cluster will run in.

ScheduledTasks []OceanScheduledTask
SecurityGroupIds []string

One or more security group ids.

SubnetIds []string

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

Tags []OceanTag

Optionally adds tags to instances launched in an Ocean cluster.

UpdatePolicy OceanUpdatePolicy
UserData string

Base64-encoded MIME user data to make available to the 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 OceanAutoscaler
clusterName string

The ocean cluster name.

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.

iamInstanceProfile string

The instance profile iam role.

imageId string

ID of the image used to launch the instances.

keyPair string

The key pair to attach the instances.

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 detailed monitoring (one minute increments). Note: there are additional hourly costs for this service based on the region used.

name string

The Ocean cluster name.

region string

The region the cluster will run in.

scheduledTasks OceanScheduledTask[]
securityGroupIds string[]

One or more security group ids.

subnetIds string[]

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

tags OceanTag[]

Optionally adds tags to instances launched in an Ocean cluster.

updatePolicy OceanUpdatePolicy
userData string

Base64-encoded MIME user data to make available to the 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 Dict[OceanAutoscaler]
cluster_name str

The ocean cluster name.

desired_capacity float

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

draining_timeout float

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.

iam_instance_profile str

The instance profile iam role.

image_id str

ID of the image used to launch the instances.

key_pair str

The key pair to attach the instances.

max_size float

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

min_size float

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

monitoring bool

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

name str

The Ocean cluster name.

region str

The region the cluster will run in.

scheduled_tasks List[OceanScheduledTask]
security_group_ids List[str]

One or more security group ids.

subnet_ids List[str]

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

tags List[OceanTag]

Optionally adds tags to instances launched in an Ocean cluster.

update_policy Dict[OceanUpdatePolicy]
user_data str

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

utilize_reserved_instances bool

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

whitelists List[str]

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

Supporting Types

OceanAutoscaler

See the input and output API doc for this type.

See the input and output API doc for this type.

See the input and output API doc for this type.

Cooldown int
Down Pulumi.SpotInst.Ecs.Inputs.OceanAutoscalerDownArgs
Headroom Pulumi.SpotInst.Ecs.Inputs.OceanAutoscalerHeadroomArgs
IsAutoConfig bool
IsEnabled bool
ResourceLimits Pulumi.SpotInst.Ecs.Inputs.OceanAutoscalerResourceLimitsArgs
Cooldown int
Down OceanAutoscalerDown
Headroom OceanAutoscalerHeadroom
IsAutoConfig bool
IsEnabled bool
ResourceLimits OceanAutoscalerResourceLimits
cooldown number
down OceanAutoscalerDown
headroom OceanAutoscalerHeadroom
isAutoConfig boolean
isEnabled boolean
resourceLimits OceanAutoscalerResourceLimits
cooldown float
down Dict[OceanAutoscalerDown]
headroom Dict[OceanAutoscalerHeadroom]
isAutoConfig bool
isEnabled bool
resource_limits Dict[OceanAutoscalerResourceLimits]

OceanAutoscalerDown

See the input and output API doc for this type.

See the input and output API doc for this type.

See the input and output API doc for this type.

MaxScaleDownPercentage int
MaxScaleDownPercentage int
maxScaleDownPercentage number
maxScaleDownPercentage float

OceanAutoscalerHeadroom

See the input and output API doc for this type.

See the input and output API doc for this type.

See the input and output API doc for this type.

CpuPerUnit int
MemoryPerUnit int
NumOfUnits int
CpuPerUnit int
MemoryPerUnit int
NumOfUnits int
cpuPerUnit number
memoryPerUnit number
numOfUnits number
cpuPerUnit float
memoryPerUnit float
numOfUnits float

OceanAutoscalerResourceLimits

See the input and output API doc for this type.

See the input and output API doc for this type.

See the input and output API doc for this type.

MaxMemoryGib int
MaxVcpu int
MaxMemoryGib int
MaxVcpu int
maxMemoryGib number
maxVcpu number
maxMemoryGib float
maxVcpu float

OceanScheduledTask

See the input and output API doc for this type.

See the input and output API doc for this type.

See the input and output API doc for this type.

ShutdownHours Pulumi.SpotInst.Ecs.Inputs.OceanScheduledTaskShutdownHoursArgs
Tasks List<Pulumi.SpotInst.Ecs.Inputs.OceanScheduledTaskTaskArgs>
ShutdownHours OceanScheduledTaskShutdownHours
Tasks []OceanScheduledTaskTask
shutdownHours OceanScheduledTaskShutdownHours
tasks OceanScheduledTaskTask[]
shutdownHours Dict[OceanScheduledTaskShutdownHours]
tasks List[OceanScheduledTaskTask]

OceanScheduledTaskShutdownHours

See the input and output API doc for this type.

See the input and output API doc for this type.

See the input and output API doc for this type.

TimeWindows List<string>
IsEnabled bool
TimeWindows []string
IsEnabled bool
timeWindows string[]
isEnabled boolean
timeWindows List[str]
isEnabled bool

OceanScheduledTaskTask

See the input and output API doc for this type.

See the input and output API doc for this type.

See the input and output API doc for this type.

CronExpression string
IsEnabled bool
TaskType string
CronExpression string
IsEnabled bool
TaskType string
cronExpression string
isEnabled boolean
taskType string
cronExpression str
isEnabled bool
taskType str

OceanTag

See the input and output API doc for this type.

See the input and output API doc for this type.

See the input and output API doc for this type.

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.

OceanUpdatePolicy

See the input and output API doc for this type.

See the input and output API doc for this type.

See the input and output API doc for this type.

ShouldRoll bool
RollConfig Pulumi.SpotInst.Ecs.Inputs.OceanUpdatePolicyRollConfigArgs
ShouldRoll bool
RollConfig OceanUpdatePolicyRollConfig
shouldRoll boolean
rollConfig OceanUpdatePolicyRollConfig
shouldRoll bool
rollConfig Dict[OceanUpdatePolicyRollConfig]

OceanUpdatePolicyRollConfig

See the input and output API doc for this type.

See the input and output API doc for this type.

See the input and output API doc for this type.

BatchSizePercentage int
BatchSizePercentage int
batchSizePercentage number
batchSizePercentage float

Package Details

Repository
https://github.com/pulumi/pulumi-spotinst
License
Apache-2.0
Notes
This Pulumi package is based on the spotinst Terraform Provider.