spotinst.ecs.OceanLaunchSpec
Explore with Pulumi AI
Manages a custom Spotinst Ocean ECS Launch Spec resource.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as spotinst from "@pulumi/spotinst";
const example = new spotinst.ecs.OceanLaunchSpec("example", {
oceanId: "o-123456",
imageId: "ami-123456",
userData: "echo hello world",
iamInstanceProfile: "iam-profile",
subnetIds: ["subnet-12345"],
securityGroupIds: ["awseb-12345"],
restrictScaleDown: true,
instanceTypes: [
"m3.large",
"m3.xlarge",
"m3.2xlarge",
"m4.large",
"m4.xlarge",
"m4.4xlarge",
"m4.2xlarge",
"m4.10xlarge",
"m4.16xlarge",
"m5.large",
"m5.xlarge",
"m5.2xlarge",
"m5.4xlarge",
"m5.12xlarge",
"m5.24xlarge",
],
preferredSpotTypes: [
"m3.large",
"m3.xlarge",
"m3.2xlarge",
"m4.large",
"m4.xlarge",
],
blockDeviceMappings: [{
deviceName: "/dev/xvda1",
ebs: {
deleteOnTermination: true,
encrypted: false,
volumeType: "gp2",
volumeSize: 50,
throughput: 500,
dynamicVolumeSize: {
baseSize: 50,
resource: "CPU",
sizePerResourceUnit: 20,
},
},
}],
attributes: [{
key: "fakeKey",
value: "fakeValue",
}],
instanceMetadataOptions: {
httpTokens: "required",
httpPutResponseHopLimit: 10,
},
autoscaleHeadrooms: [{
numOfUnits: 5,
cpuPerUnit: 1000,
memoryPerUnit: 2048,
}],
strategies: [{
spotPercentage: 50,
}],
tags: [{
key: "Env",
value: "production",
}],
images: [
{
imageId: "ami-12345",
},
{
imageId: "ami-67890",
},
],
schedulingTasks: [{
isEnabled: true,
cronExpression: "0 1 * * *",
taskType: "manualHeadroomUpdate",
taskHeadrooms: [{
numOfUnits: 5,
cpuPerUnit: 1000,
memoryPerUnit: 2048,
}],
}],
});
import pulumi
import pulumi_spotinst as spotinst
example = spotinst.ecs.OceanLaunchSpec("example",
ocean_id="o-123456",
image_id="ami-123456",
user_data="echo hello world",
iam_instance_profile="iam-profile",
subnet_ids=["subnet-12345"],
security_group_ids=["awseb-12345"],
restrict_scale_down=True,
instance_types=[
"m3.large",
"m3.xlarge",
"m3.2xlarge",
"m4.large",
"m4.xlarge",
"m4.4xlarge",
"m4.2xlarge",
"m4.10xlarge",
"m4.16xlarge",
"m5.large",
"m5.xlarge",
"m5.2xlarge",
"m5.4xlarge",
"m5.12xlarge",
"m5.24xlarge",
],
preferred_spot_types=[
"m3.large",
"m3.xlarge",
"m3.2xlarge",
"m4.large",
"m4.xlarge",
],
block_device_mappings=[{
"device_name": "/dev/xvda1",
"ebs": {
"delete_on_termination": True,
"encrypted": False,
"volume_type": "gp2",
"volume_size": 50,
"throughput": 500,
"dynamic_volume_size": {
"base_size": 50,
"resource": "CPU",
"size_per_resource_unit": 20,
},
},
}],
attributes=[{
"key": "fakeKey",
"value": "fakeValue",
}],
instance_metadata_options={
"http_tokens": "required",
"http_put_response_hop_limit": 10,
},
autoscale_headrooms=[{
"num_of_units": 5,
"cpu_per_unit": 1000,
"memory_per_unit": 2048,
}],
strategies=[{
"spot_percentage": 50,
}],
tags=[{
"key": "Env",
"value": "production",
}],
images=[
{
"image_id": "ami-12345",
},
{
"image_id": "ami-67890",
},
],
scheduling_tasks=[{
"is_enabled": True,
"cron_expression": "0 1 * * *",
"task_type": "manualHeadroomUpdate",
"task_headrooms": [{
"num_of_units": 5,
"cpu_per_unit": 1000,
"memory_per_unit": 2048,
}],
}])
package main
import (
"github.com/pulumi/pulumi-spotinst/sdk/v3/go/spotinst/ecs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := ecs.NewOceanLaunchSpec(ctx, "example", &ecs.OceanLaunchSpecArgs{
OceanId: pulumi.String("o-123456"),
ImageId: pulumi.String("ami-123456"),
UserData: pulumi.String("echo hello world"),
IamInstanceProfile: pulumi.String("iam-profile"),
SubnetIds: pulumi.StringArray{
pulumi.String("subnet-12345"),
},
SecurityGroupIds: pulumi.StringArray{
pulumi.String("awseb-12345"),
},
RestrictScaleDown: pulumi.Bool(true),
InstanceTypes: pulumi.StringArray{
pulumi.String("m3.large"),
pulumi.String("m3.xlarge"),
pulumi.String("m3.2xlarge"),
pulumi.String("m4.large"),
pulumi.String("m4.xlarge"),
pulumi.String("m4.4xlarge"),
pulumi.String("m4.2xlarge"),
pulumi.String("m4.10xlarge"),
pulumi.String("m4.16xlarge"),
pulumi.String("m5.large"),
pulumi.String("m5.xlarge"),
pulumi.String("m5.2xlarge"),
pulumi.String("m5.4xlarge"),
pulumi.String("m5.12xlarge"),
pulumi.String("m5.24xlarge"),
},
PreferredSpotTypes: pulumi.StringArray{
pulumi.String("m3.large"),
pulumi.String("m3.xlarge"),
pulumi.String("m3.2xlarge"),
pulumi.String("m4.large"),
pulumi.String("m4.xlarge"),
},
BlockDeviceMappings: ecs.OceanLaunchSpecBlockDeviceMappingArray{
&ecs.OceanLaunchSpecBlockDeviceMappingArgs{
DeviceName: pulumi.String("/dev/xvda1"),
Ebs: &ecs.OceanLaunchSpecBlockDeviceMappingEbsArgs{
DeleteOnTermination: pulumi.Bool(true),
Encrypted: pulumi.Bool(false),
VolumeType: pulumi.String("gp2"),
VolumeSize: pulumi.Int(50),
Throughput: pulumi.Int(500),
DynamicVolumeSize: &ecs.OceanLaunchSpecBlockDeviceMappingEbsDynamicVolumeSizeArgs{
BaseSize: pulumi.Int(50),
Resource: pulumi.String("CPU"),
SizePerResourceUnit: pulumi.Int(20),
},
},
},
},
Attributes: ecs.OceanLaunchSpecAttributeArray{
&ecs.OceanLaunchSpecAttributeArgs{
Key: pulumi.String("fakeKey"),
Value: pulumi.String("fakeValue"),
},
},
InstanceMetadataOptions: &ecs.OceanLaunchSpecInstanceMetadataOptionsArgs{
HttpTokens: pulumi.String("required"),
HttpPutResponseHopLimit: pulumi.Int(10),
},
AutoscaleHeadrooms: ecs.OceanLaunchSpecAutoscaleHeadroomArray{
&ecs.OceanLaunchSpecAutoscaleHeadroomArgs{
NumOfUnits: pulumi.Int(5),
CpuPerUnit: pulumi.Int(1000),
MemoryPerUnit: pulumi.Int(2048),
},
},
Strategies: ecs.OceanLaunchSpecStrategyArray{
&ecs.OceanLaunchSpecStrategyArgs{
SpotPercentage: pulumi.Int(50),
},
},
Tags: ecs.OceanLaunchSpecTagArray{
&ecs.OceanLaunchSpecTagArgs{
Key: pulumi.String("Env"),
Value: pulumi.String("production"),
},
},
Images: ecs.OceanLaunchSpecImageArray{
&ecs.OceanLaunchSpecImageArgs{
ImageId: pulumi.String("ami-12345"),
},
&ecs.OceanLaunchSpecImageArgs{
ImageId: pulumi.String("ami-67890"),
},
},
SchedulingTasks: ecs.OceanLaunchSpecSchedulingTaskArray{
&ecs.OceanLaunchSpecSchedulingTaskArgs{
IsEnabled: pulumi.Bool(true),
CronExpression: pulumi.String("0 1 * * *"),
TaskType: pulumi.String("manualHeadroomUpdate"),
TaskHeadrooms: ecs.OceanLaunchSpecSchedulingTaskTaskHeadroomArray{
&ecs.OceanLaunchSpecSchedulingTaskTaskHeadroomArgs{
NumOfUnits: pulumi.Int(5),
CpuPerUnit: pulumi.Int(1000),
MemoryPerUnit: pulumi.Int(2048),
},
},
},
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using SpotInst = Pulumi.SpotInst;
return await Deployment.RunAsync(() =>
{
var example = new SpotInst.Ecs.OceanLaunchSpec("example", new()
{
OceanId = "o-123456",
ImageId = "ami-123456",
UserData = "echo hello world",
IamInstanceProfile = "iam-profile",
SubnetIds = new[]
{
"subnet-12345",
},
SecurityGroupIds = new[]
{
"awseb-12345",
},
RestrictScaleDown = true,
InstanceTypes = new[]
{
"m3.large",
"m3.xlarge",
"m3.2xlarge",
"m4.large",
"m4.xlarge",
"m4.4xlarge",
"m4.2xlarge",
"m4.10xlarge",
"m4.16xlarge",
"m5.large",
"m5.xlarge",
"m5.2xlarge",
"m5.4xlarge",
"m5.12xlarge",
"m5.24xlarge",
},
PreferredSpotTypes = new[]
{
"m3.large",
"m3.xlarge",
"m3.2xlarge",
"m4.large",
"m4.xlarge",
},
BlockDeviceMappings = new[]
{
new SpotInst.Ecs.Inputs.OceanLaunchSpecBlockDeviceMappingArgs
{
DeviceName = "/dev/xvda1",
Ebs = new SpotInst.Ecs.Inputs.OceanLaunchSpecBlockDeviceMappingEbsArgs
{
DeleteOnTermination = true,
Encrypted = false,
VolumeType = "gp2",
VolumeSize = 50,
Throughput = 500,
DynamicVolumeSize = new SpotInst.Ecs.Inputs.OceanLaunchSpecBlockDeviceMappingEbsDynamicVolumeSizeArgs
{
BaseSize = 50,
Resource = "CPU",
SizePerResourceUnit = 20,
},
},
},
},
Attributes = new[]
{
new SpotInst.Ecs.Inputs.OceanLaunchSpecAttributeArgs
{
Key = "fakeKey",
Value = "fakeValue",
},
},
InstanceMetadataOptions = new SpotInst.Ecs.Inputs.OceanLaunchSpecInstanceMetadataOptionsArgs
{
HttpTokens = "required",
HttpPutResponseHopLimit = 10,
},
AutoscaleHeadrooms = new[]
{
new SpotInst.Ecs.Inputs.OceanLaunchSpecAutoscaleHeadroomArgs
{
NumOfUnits = 5,
CpuPerUnit = 1000,
MemoryPerUnit = 2048,
},
},
Strategies = new[]
{
new SpotInst.Ecs.Inputs.OceanLaunchSpecStrategyArgs
{
SpotPercentage = 50,
},
},
Tags = new[]
{
new SpotInst.Ecs.Inputs.OceanLaunchSpecTagArgs
{
Key = "Env",
Value = "production",
},
},
Images = new[]
{
new SpotInst.Ecs.Inputs.OceanLaunchSpecImageArgs
{
ImageId = "ami-12345",
},
new SpotInst.Ecs.Inputs.OceanLaunchSpecImageArgs
{
ImageId = "ami-67890",
},
},
SchedulingTasks = new[]
{
new SpotInst.Ecs.Inputs.OceanLaunchSpecSchedulingTaskArgs
{
IsEnabled = true,
CronExpression = "0 1 * * *",
TaskType = "manualHeadroomUpdate",
TaskHeadrooms = new[]
{
new SpotInst.Ecs.Inputs.OceanLaunchSpecSchedulingTaskTaskHeadroomArgs
{
NumOfUnits = 5,
CpuPerUnit = 1000,
MemoryPerUnit = 2048,
},
},
},
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.spotinst.ecs.OceanLaunchSpec;
import com.pulumi.spotinst.ecs.OceanLaunchSpecArgs;
import com.pulumi.spotinst.ecs.inputs.OceanLaunchSpecBlockDeviceMappingArgs;
import com.pulumi.spotinst.ecs.inputs.OceanLaunchSpecBlockDeviceMappingEbsArgs;
import com.pulumi.spotinst.ecs.inputs.OceanLaunchSpecBlockDeviceMappingEbsDynamicVolumeSizeArgs;
import com.pulumi.spotinst.ecs.inputs.OceanLaunchSpecAttributeArgs;
import com.pulumi.spotinst.ecs.inputs.OceanLaunchSpecInstanceMetadataOptionsArgs;
import com.pulumi.spotinst.ecs.inputs.OceanLaunchSpecAutoscaleHeadroomArgs;
import com.pulumi.spotinst.ecs.inputs.OceanLaunchSpecStrategyArgs;
import com.pulumi.spotinst.ecs.inputs.OceanLaunchSpecTagArgs;
import com.pulumi.spotinst.ecs.inputs.OceanLaunchSpecImageArgs;
import com.pulumi.spotinst.ecs.inputs.OceanLaunchSpecSchedulingTaskArgs;
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 OceanLaunchSpec("example", OceanLaunchSpecArgs.builder()
.oceanId("o-123456")
.imageId("ami-123456")
.userData("echo hello world")
.iamInstanceProfile("iam-profile")
.subnetIds("subnet-12345")
.securityGroupIds("awseb-12345")
.restrictScaleDown(true)
.instanceTypes(
"m3.large",
"m3.xlarge",
"m3.2xlarge",
"m4.large",
"m4.xlarge",
"m4.4xlarge",
"m4.2xlarge",
"m4.10xlarge",
"m4.16xlarge",
"m5.large",
"m5.xlarge",
"m5.2xlarge",
"m5.4xlarge",
"m5.12xlarge",
"m5.24xlarge")
.preferredSpotTypes(
"m3.large",
"m3.xlarge",
"m3.2xlarge",
"m4.large",
"m4.xlarge")
.blockDeviceMappings(OceanLaunchSpecBlockDeviceMappingArgs.builder()
.deviceName("/dev/xvda1")
.ebs(OceanLaunchSpecBlockDeviceMappingEbsArgs.builder()
.deleteOnTermination("true")
.encrypted("false")
.volumeType("gp2")
.volumeSize(50)
.throughput(500)
.dynamicVolumeSize(OceanLaunchSpecBlockDeviceMappingEbsDynamicVolumeSizeArgs.builder()
.baseSize(50)
.resource("CPU")
.sizePerResourceUnit(20)
.build())
.build())
.build())
.attributes(OceanLaunchSpecAttributeArgs.builder()
.key("fakeKey")
.value("fakeValue")
.build())
.instanceMetadataOptions(OceanLaunchSpecInstanceMetadataOptionsArgs.builder()
.httpTokens("required")
.httpPutResponseHopLimit(10)
.build())
.autoscaleHeadrooms(OceanLaunchSpecAutoscaleHeadroomArgs.builder()
.numOfUnits(5)
.cpuPerUnit(1000)
.memoryPerUnit(2048)
.build())
.strategies(OceanLaunchSpecStrategyArgs.builder()
.spotPercentage(50)
.build())
.tags(OceanLaunchSpecTagArgs.builder()
.key("Env")
.value("production")
.build())
.images(
OceanLaunchSpecImageArgs.builder()
.imageId("ami-12345")
.build(),
OceanLaunchSpecImageArgs.builder()
.imageId("ami-67890")
.build())
.schedulingTasks(OceanLaunchSpecSchedulingTaskArgs.builder()
.isEnabled(true)
.cronExpression("0 1 * * *")
.taskType("manualHeadroomUpdate")
.taskHeadrooms(OceanLaunchSpecSchedulingTaskTaskHeadroomArgs.builder()
.numOfUnits(5)
.cpuPerUnit(1000)
.memoryPerUnit(2048)
.build())
.build())
.build());
}
}
resources:
example:
type: spotinst:ecs:OceanLaunchSpec
properties:
oceanId: o-123456
imageId: ami-123456
userData: echo hello world
iamInstanceProfile: iam-profile
subnetIds:
- subnet-12345
securityGroupIds:
- awseb-12345
restrictScaleDown: true
instanceTypes:
- m3.large
- m3.xlarge
- m3.2xlarge
- m4.large
- m4.xlarge
- m4.4xlarge
- m4.2xlarge
- m4.10xlarge
- m4.16xlarge
- m5.large
- m5.xlarge
- m5.2xlarge
- m5.4xlarge
- m5.12xlarge
- m5.24xlarge
preferredSpotTypes:
- m3.large
- m3.xlarge
- m3.2xlarge
- m4.large
- m4.xlarge
blockDeviceMappings:
- deviceName: /dev/xvda1
ebs:
deleteOnTermination: 'true'
encrypted: 'false'
volumeType: gp2
volumeSize: 50
throughput: 500
dynamicVolumeSize:
baseSize: 50
resource: CPU
sizePerResourceUnit: 20
attributes:
- key: fakeKey
value: fakeValue
instanceMetadataOptions:
httpTokens: required
httpPutResponseHopLimit: 10
autoscaleHeadrooms:
- numOfUnits: 5
cpuPerUnit: 1000
memoryPerUnit: 2048
strategies:
- spotPercentage: 50
tags:
- key: Env
value: production
images:
- imageId: ami-12345
- imageId: ami-67890
schedulingTasks:
- isEnabled: true
cronExpression: 0 1 * * *
taskType: manualHeadroomUpdate
taskHeadrooms:
- numOfUnits: 5
cpuPerUnit: 1000
memoryPerUnit: 2048
output "ocean_launchspec_id" {
value = spotinst_ocean_ecs_launch_spec.example.id
}
Create OceanLaunchSpec Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new OceanLaunchSpec(name: string, args: OceanLaunchSpecArgs, opts?: CustomResourceOptions);
@overload
def OceanLaunchSpec(resource_name: str,
args: OceanLaunchSpecArgs,
opts: Optional[ResourceOptions] = None)
@overload
def OceanLaunchSpec(resource_name: str,
opts: Optional[ResourceOptions] = None,
ocean_id: Optional[str] = None,
name: Optional[str] = None,
images: Optional[Sequence[OceanLaunchSpecImageArgs]] = None,
autoscale_headrooms: Optional[Sequence[OceanLaunchSpecAutoscaleHeadroomArgs]] = None,
image_id: Optional[str] = None,
preferred_spot_types: Optional[Sequence[str]] = None,
instance_metadata_options: Optional[OceanLaunchSpecInstanceMetadataOptionsArgs] = None,
instance_types: Optional[Sequence[str]] = None,
restrict_scale_down: Optional[bool] = None,
iam_instance_profile: Optional[str] = None,
block_device_mappings: Optional[Sequence[OceanLaunchSpecBlockDeviceMappingArgs]] = None,
attributes: Optional[Sequence[OceanLaunchSpecAttributeArgs]] = None,
scheduling_tasks: Optional[Sequence[OceanLaunchSpecSchedulingTaskArgs]] = None,
security_group_ids: Optional[Sequence[str]] = None,
strategies: Optional[Sequence[OceanLaunchSpecStrategyArgs]] = None,
subnet_ids: Optional[Sequence[str]] = None,
tags: Optional[Sequence[OceanLaunchSpecTagArgs]] = None,
user_data: Optional[str] = None)
func NewOceanLaunchSpec(ctx *Context, name string, args OceanLaunchSpecArgs, opts ...ResourceOption) (*OceanLaunchSpec, error)
public OceanLaunchSpec(string name, OceanLaunchSpecArgs args, CustomResourceOptions? opts = null)
public OceanLaunchSpec(String name, OceanLaunchSpecArgs args)
public OceanLaunchSpec(String name, OceanLaunchSpecArgs args, CustomResourceOptions options)
type: spotinst:ecs:OceanLaunchSpec
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args OceanLaunchSpecArgs
- 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 OceanLaunchSpecArgs
- 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 OceanLaunchSpecArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args OceanLaunchSpecArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args OceanLaunchSpecArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var spotinstOceanLaunchSpecResource = new SpotInst.Ecs.OceanLaunchSpec("spotinstOceanLaunchSpecResource", new()
{
OceanId = "string",
Name = "string",
Images = new[]
{
new SpotInst.Ecs.Inputs.OceanLaunchSpecImageArgs
{
ImageId = "string",
},
},
AutoscaleHeadrooms = new[]
{
new SpotInst.Ecs.Inputs.OceanLaunchSpecAutoscaleHeadroomArgs
{
NumOfUnits = 0,
CpuPerUnit = 0,
MemoryPerUnit = 0,
},
},
ImageId = "string",
PreferredSpotTypes = new[]
{
"string",
},
InstanceMetadataOptions = new SpotInst.Ecs.Inputs.OceanLaunchSpecInstanceMetadataOptionsArgs
{
HttpTokens = "string",
HttpPutResponseHopLimit = 0,
},
InstanceTypes = new[]
{
"string",
},
RestrictScaleDown = false,
IamInstanceProfile = "string",
BlockDeviceMappings = new[]
{
new SpotInst.Ecs.Inputs.OceanLaunchSpecBlockDeviceMappingArgs
{
DeviceName = "string",
Ebs = new SpotInst.Ecs.Inputs.OceanLaunchSpecBlockDeviceMappingEbsArgs
{
DeleteOnTermination = false,
DynamicVolumeSize = new SpotInst.Ecs.Inputs.OceanLaunchSpecBlockDeviceMappingEbsDynamicVolumeSizeArgs
{
BaseSize = 0,
Resource = "string",
SizePerResourceUnit = 0,
},
Encrypted = false,
Iops = 0,
KmsKeyId = "string",
SnapshotId = "string",
Throughput = 0,
VolumeSize = 0,
VolumeType = "string",
},
NoDevice = "string",
VirtualName = "string",
},
},
Attributes = new[]
{
new SpotInst.Ecs.Inputs.OceanLaunchSpecAttributeArgs
{
Key = "string",
Value = "string",
},
},
SchedulingTasks = new[]
{
new SpotInst.Ecs.Inputs.OceanLaunchSpecSchedulingTaskArgs
{
CronExpression = "string",
IsEnabled = false,
TaskType = "string",
TaskHeadrooms = new[]
{
new SpotInst.Ecs.Inputs.OceanLaunchSpecSchedulingTaskTaskHeadroomArgs
{
NumOfUnits = 0,
CpuPerUnit = 0,
MemoryPerUnit = 0,
},
},
},
},
SecurityGroupIds = new[]
{
"string",
},
Strategies = new[]
{
new SpotInst.Ecs.Inputs.OceanLaunchSpecStrategyArgs
{
SpotPercentage = 0,
},
},
SubnetIds = new[]
{
"string",
},
Tags = new[]
{
new SpotInst.Ecs.Inputs.OceanLaunchSpecTagArgs
{
Key = "string",
Value = "string",
},
},
UserData = "string",
});
example, err := ecs.NewOceanLaunchSpec(ctx, "spotinstOceanLaunchSpecResource", &ecs.OceanLaunchSpecArgs{
OceanId: pulumi.String("string"),
Name: pulumi.String("string"),
Images: ecs.OceanLaunchSpecImageArray{
&ecs.OceanLaunchSpecImageArgs{
ImageId: pulumi.String("string"),
},
},
AutoscaleHeadrooms: ecs.OceanLaunchSpecAutoscaleHeadroomArray{
&ecs.OceanLaunchSpecAutoscaleHeadroomArgs{
NumOfUnits: pulumi.Int(0),
CpuPerUnit: pulumi.Int(0),
MemoryPerUnit: pulumi.Int(0),
},
},
ImageId: pulumi.String("string"),
PreferredSpotTypes: pulumi.StringArray{
pulumi.String("string"),
},
InstanceMetadataOptions: &ecs.OceanLaunchSpecInstanceMetadataOptionsArgs{
HttpTokens: pulumi.String("string"),
HttpPutResponseHopLimit: pulumi.Int(0),
},
InstanceTypes: pulumi.StringArray{
pulumi.String("string"),
},
RestrictScaleDown: pulumi.Bool(false),
IamInstanceProfile: pulumi.String("string"),
BlockDeviceMappings: ecs.OceanLaunchSpecBlockDeviceMappingArray{
&ecs.OceanLaunchSpecBlockDeviceMappingArgs{
DeviceName: pulumi.String("string"),
Ebs: &ecs.OceanLaunchSpecBlockDeviceMappingEbsArgs{
DeleteOnTermination: pulumi.Bool(false),
DynamicVolumeSize: &ecs.OceanLaunchSpecBlockDeviceMappingEbsDynamicVolumeSizeArgs{
BaseSize: pulumi.Int(0),
Resource: pulumi.String("string"),
SizePerResourceUnit: pulumi.Int(0),
},
Encrypted: pulumi.Bool(false),
Iops: pulumi.Int(0),
KmsKeyId: pulumi.String("string"),
SnapshotId: pulumi.String("string"),
Throughput: pulumi.Int(0),
VolumeSize: pulumi.Int(0),
VolumeType: pulumi.String("string"),
},
NoDevice: pulumi.String("string"),
VirtualName: pulumi.String("string"),
},
},
Attributes: ecs.OceanLaunchSpecAttributeArray{
&ecs.OceanLaunchSpecAttributeArgs{
Key: pulumi.String("string"),
Value: pulumi.String("string"),
},
},
SchedulingTasks: ecs.OceanLaunchSpecSchedulingTaskArray{
&ecs.OceanLaunchSpecSchedulingTaskArgs{
CronExpression: pulumi.String("string"),
IsEnabled: pulumi.Bool(false),
TaskType: pulumi.String("string"),
TaskHeadrooms: ecs.OceanLaunchSpecSchedulingTaskTaskHeadroomArray{
&ecs.OceanLaunchSpecSchedulingTaskTaskHeadroomArgs{
NumOfUnits: pulumi.Int(0),
CpuPerUnit: pulumi.Int(0),
MemoryPerUnit: pulumi.Int(0),
},
},
},
},
SecurityGroupIds: pulumi.StringArray{
pulumi.String("string"),
},
Strategies: ecs.OceanLaunchSpecStrategyArray{
&ecs.OceanLaunchSpecStrategyArgs{
SpotPercentage: pulumi.Int(0),
},
},
SubnetIds: pulumi.StringArray{
pulumi.String("string"),
},
Tags: ecs.OceanLaunchSpecTagArray{
&ecs.OceanLaunchSpecTagArgs{
Key: pulumi.String("string"),
Value: pulumi.String("string"),
},
},
UserData: pulumi.String("string"),
})
var spotinstOceanLaunchSpecResource = new OceanLaunchSpec("spotinstOceanLaunchSpecResource", OceanLaunchSpecArgs.builder()
.oceanId("string")
.name("string")
.images(OceanLaunchSpecImageArgs.builder()
.imageId("string")
.build())
.autoscaleHeadrooms(OceanLaunchSpecAutoscaleHeadroomArgs.builder()
.numOfUnits(0)
.cpuPerUnit(0)
.memoryPerUnit(0)
.build())
.imageId("string")
.preferredSpotTypes("string")
.instanceMetadataOptions(OceanLaunchSpecInstanceMetadataOptionsArgs.builder()
.httpTokens("string")
.httpPutResponseHopLimit(0)
.build())
.instanceTypes("string")
.restrictScaleDown(false)
.iamInstanceProfile("string")
.blockDeviceMappings(OceanLaunchSpecBlockDeviceMappingArgs.builder()
.deviceName("string")
.ebs(OceanLaunchSpecBlockDeviceMappingEbsArgs.builder()
.deleteOnTermination(false)
.dynamicVolumeSize(OceanLaunchSpecBlockDeviceMappingEbsDynamicVolumeSizeArgs.builder()
.baseSize(0)
.resource("string")
.sizePerResourceUnit(0)
.build())
.encrypted(false)
.iops(0)
.kmsKeyId("string")
.snapshotId("string")
.throughput(0)
.volumeSize(0)
.volumeType("string")
.build())
.noDevice("string")
.virtualName("string")
.build())
.attributes(OceanLaunchSpecAttributeArgs.builder()
.key("string")
.value("string")
.build())
.schedulingTasks(OceanLaunchSpecSchedulingTaskArgs.builder()
.cronExpression("string")
.isEnabled(false)
.taskType("string")
.taskHeadrooms(OceanLaunchSpecSchedulingTaskTaskHeadroomArgs.builder()
.numOfUnits(0)
.cpuPerUnit(0)
.memoryPerUnit(0)
.build())
.build())
.securityGroupIds("string")
.strategies(OceanLaunchSpecStrategyArgs.builder()
.spotPercentage(0)
.build())
.subnetIds("string")
.tags(OceanLaunchSpecTagArgs.builder()
.key("string")
.value("string")
.build())
.userData("string")
.build());
spotinst_ocean_launch_spec_resource = spotinst.ecs.OceanLaunchSpec("spotinstOceanLaunchSpecResource",
ocean_id="string",
name="string",
images=[{
"image_id": "string",
}],
autoscale_headrooms=[{
"num_of_units": 0,
"cpu_per_unit": 0,
"memory_per_unit": 0,
}],
image_id="string",
preferred_spot_types=["string"],
instance_metadata_options={
"http_tokens": "string",
"http_put_response_hop_limit": 0,
},
instance_types=["string"],
restrict_scale_down=False,
iam_instance_profile="string",
block_device_mappings=[{
"device_name": "string",
"ebs": {
"delete_on_termination": False,
"dynamic_volume_size": {
"base_size": 0,
"resource": "string",
"size_per_resource_unit": 0,
},
"encrypted": False,
"iops": 0,
"kms_key_id": "string",
"snapshot_id": "string",
"throughput": 0,
"volume_size": 0,
"volume_type": "string",
},
"no_device": "string",
"virtual_name": "string",
}],
attributes=[{
"key": "string",
"value": "string",
}],
scheduling_tasks=[{
"cron_expression": "string",
"is_enabled": False,
"task_type": "string",
"task_headrooms": [{
"num_of_units": 0,
"cpu_per_unit": 0,
"memory_per_unit": 0,
}],
}],
security_group_ids=["string"],
strategies=[{
"spot_percentage": 0,
}],
subnet_ids=["string"],
tags=[{
"key": "string",
"value": "string",
}],
user_data="string")
const spotinstOceanLaunchSpecResource = new spotinst.ecs.OceanLaunchSpec("spotinstOceanLaunchSpecResource", {
oceanId: "string",
name: "string",
images: [{
imageId: "string",
}],
autoscaleHeadrooms: [{
numOfUnits: 0,
cpuPerUnit: 0,
memoryPerUnit: 0,
}],
imageId: "string",
preferredSpotTypes: ["string"],
instanceMetadataOptions: {
httpTokens: "string",
httpPutResponseHopLimit: 0,
},
instanceTypes: ["string"],
restrictScaleDown: false,
iamInstanceProfile: "string",
blockDeviceMappings: [{
deviceName: "string",
ebs: {
deleteOnTermination: false,
dynamicVolumeSize: {
baseSize: 0,
resource: "string",
sizePerResourceUnit: 0,
},
encrypted: false,
iops: 0,
kmsKeyId: "string",
snapshotId: "string",
throughput: 0,
volumeSize: 0,
volumeType: "string",
},
noDevice: "string",
virtualName: "string",
}],
attributes: [{
key: "string",
value: "string",
}],
schedulingTasks: [{
cronExpression: "string",
isEnabled: false,
taskType: "string",
taskHeadrooms: [{
numOfUnits: 0,
cpuPerUnit: 0,
memoryPerUnit: 0,
}],
}],
securityGroupIds: ["string"],
strategies: [{
spotPercentage: 0,
}],
subnetIds: ["string"],
tags: [{
key: "string",
value: "string",
}],
userData: "string",
});
type: spotinst:ecs:OceanLaunchSpec
properties:
attributes:
- key: string
value: string
autoscaleHeadrooms:
- cpuPerUnit: 0
memoryPerUnit: 0
numOfUnits: 0
blockDeviceMappings:
- deviceName: string
ebs:
deleteOnTermination: false
dynamicVolumeSize:
baseSize: 0
resource: string
sizePerResourceUnit: 0
encrypted: false
iops: 0
kmsKeyId: string
snapshotId: string
throughput: 0
volumeSize: 0
volumeType: string
noDevice: string
virtualName: string
iamInstanceProfile: string
imageId: string
images:
- imageId: string
instanceMetadataOptions:
httpPutResponseHopLimit: 0
httpTokens: string
instanceTypes:
- string
name: string
oceanId: string
preferredSpotTypes:
- string
restrictScaleDown: false
schedulingTasks:
- cronExpression: string
isEnabled: false
taskHeadrooms:
- cpuPerUnit: 0
memoryPerUnit: 0
numOfUnits: 0
taskType: string
securityGroupIds:
- string
strategies:
- spotPercentage: 0
subnetIds:
- string
tags:
- key: string
value: string
userData: string
OceanLaunchSpec Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The OceanLaunchSpec resource accepts the following input properties:
- Ocean
Id string - The Ocean cluster ID .
- Attributes
List<Pulumi.
Spot Inst. Ecs. Inputs. Ocean Launch Spec Attribute> - Optionally adds labels to instances launched in an Ocean cluster.
- Autoscale
Headrooms List<Pulumi.Spot Inst. Ecs. Inputs. Ocean Launch Spec Autoscale Headroom> - Set custom headroom per launch spec. provide list of headrooms object.
- Block
Device List<Pulumi.Mappings Spot Inst. Ecs. Inputs. Ocean Launch Spec Block Device Mapping> - Object. Array list of block devices that are exposed to the instance, specify either virtual devices and EBS volumes.
- Iam
Instance stringProfile - The ARN or name of an IAM instance profile to associate with launched instances.
- Image
Id string - ID of the image used to launch the instances.
- Images
List<Pulumi.
Spot Inst. Ecs. Inputs. Ocean Launch Spec Image> - You can configure VNG with either the imageId or images objects, but not both simultaneously. For each architecture type (amd64, arm64) only one AMI is allowed. Valid values: null, or an array with at least one element
- Instance
Metadata Pulumi.Options Spot Inst. Ecs. Inputs. Ocean Launch Spec Instance Metadata Options - Ocean instance metadata options object for IMDSv2.
- Instance
Types List<string> - A list of instance types allowed to be provisioned for pods pending under the specified launch specification. The list overrides the list defined for the Ocean cluster.
- Name string
- The Ocean Launch Specification name.
- Preferred
Spot List<string>Types - When Ocean scales up instances, it takes your preferred types into consideration while maintaining a variety of machine types running for optimized distribution.
- Restrict
Scale boolDown - Boolean. When set to
true
, VNG nodes will be treated as if all pods running have the restrict-scale-down label. Therefore, Ocean will not scale nodes down unless empty. - Scheduling
Tasks List<Pulumi.Spot Inst. Ecs. Inputs. Ocean Launch Spec Scheduling Task> - Used to define scheduled tasks such as a manual headroom update.
- Security
Group List<string>Ids - One or more security group ids.
- Strategies
List<Pulumi.
Spot Inst. Ecs. Inputs. Ocean Launch Spec Strategy> - Similar to a strategy for an Ocean cluster, but applying only to a virtual node group.
- Subnet
Ids List<string> - Set subnets in launchSpec. Each element in the array should be a subnet ID.
- List<Pulumi.
Spot Inst. Ecs. Inputs. Ocean Launch Spec Tag> - A key/value mapping of tags to assign to the resource.
- User
Data string - Base64-encoded MIME user data to make available to the instances.
- Ocean
Id string - The Ocean cluster ID .
- Attributes
[]Ocean
Launch Spec Attribute Args - Optionally adds labels to instances launched in an Ocean cluster.
- Autoscale
Headrooms []OceanLaunch Spec Autoscale Headroom Args - Set custom headroom per launch spec. provide list of headrooms object.
- Block
Device []OceanMappings Launch Spec Block Device Mapping Args - Object. Array list of block devices that are exposed to the instance, specify either virtual devices and EBS volumes.
- Iam
Instance stringProfile - The ARN or name of an IAM instance profile to associate with launched instances.
- Image
Id string - ID of the image used to launch the instances.
- Images
[]Ocean
Launch Spec Image Args - You can configure VNG with either the imageId or images objects, but not both simultaneously. For each architecture type (amd64, arm64) only one AMI is allowed. Valid values: null, or an array with at least one element
- Instance
Metadata OceanOptions Launch Spec Instance Metadata Options Args - Ocean instance metadata options object for IMDSv2.
- Instance
Types []string - A list of instance types allowed to be provisioned for pods pending under the specified launch specification. The list overrides the list defined for the Ocean cluster.
- Name string
- The Ocean Launch Specification name.
- Preferred
Spot []stringTypes - When Ocean scales up instances, it takes your preferred types into consideration while maintaining a variety of machine types running for optimized distribution.
- Restrict
Scale boolDown - Boolean. When set to
true
, VNG nodes will be treated as if all pods running have the restrict-scale-down label. Therefore, Ocean will not scale nodes down unless empty. - Scheduling
Tasks []OceanLaunch Spec Scheduling Task Args - Used to define scheduled tasks such as a manual headroom update.
- Security
Group []stringIds - One or more security group ids.
- Strategies
[]Ocean
Launch Spec Strategy Args - Similar to a strategy for an Ocean cluster, but applying only to a virtual node group.
- Subnet
Ids []string - Set subnets in launchSpec. Each element in the array should be a subnet ID.
- []Ocean
Launch Spec Tag Args - A key/value mapping of tags to assign to the resource.
- User
Data string - Base64-encoded MIME user data to make available to the instances.
- ocean
Id String - The Ocean cluster ID .
- attributes
List<Ocean
Launch Spec Attribute> - Optionally adds labels to instances launched in an Ocean cluster.
- autoscale
Headrooms List<OceanLaunch Spec Autoscale Headroom> - Set custom headroom per launch spec. provide list of headrooms object.
- block
Device List<OceanMappings Launch Spec Block Device Mapping> - Object. Array list of block devices that are exposed to the instance, specify either virtual devices and EBS volumes.
- iam
Instance StringProfile - The ARN or name of an IAM instance profile to associate with launched instances.
- image
Id String - ID of the image used to launch the instances.
- images
List<Ocean
Launch Spec Image> - You can configure VNG with either the imageId or images objects, but not both simultaneously. For each architecture type (amd64, arm64) only one AMI is allowed. Valid values: null, or an array with at least one element
- instance
Metadata OceanOptions Launch Spec Instance Metadata Options - Ocean instance metadata options object for IMDSv2.
- instance
Types List<String> - A list of instance types allowed to be provisioned for pods pending under the specified launch specification. The list overrides the list defined for the Ocean cluster.
- name String
- The Ocean Launch Specification name.
- preferred
Spot List<String>Types - When Ocean scales up instances, it takes your preferred types into consideration while maintaining a variety of machine types running for optimized distribution.
- restrict
Scale BooleanDown - Boolean. When set to
true
, VNG nodes will be treated as if all pods running have the restrict-scale-down label. Therefore, Ocean will not scale nodes down unless empty. - scheduling
Tasks List<OceanLaunch Spec Scheduling Task> - Used to define scheduled tasks such as a manual headroom update.
- security
Group List<String>Ids - One or more security group ids.
- strategies
List<Ocean
Launch Spec Strategy> - Similar to a strategy for an Ocean cluster, but applying only to a virtual node group.
- subnet
Ids List<String> - Set subnets in launchSpec. Each element in the array should be a subnet ID.
- List<Ocean
Launch Spec Tag> - A key/value mapping of tags to assign to the resource.
- user
Data String - Base64-encoded MIME user data to make available to the instances.
- ocean
Id string - The Ocean cluster ID .
- attributes
Ocean
Launch Spec Attribute[] - Optionally adds labels to instances launched in an Ocean cluster.
- autoscale
Headrooms OceanLaunch Spec Autoscale Headroom[] - Set custom headroom per launch spec. provide list of headrooms object.
- block
Device OceanMappings Launch Spec Block Device Mapping[] - Object. Array list of block devices that are exposed to the instance, specify either virtual devices and EBS volumes.
- iam
Instance stringProfile - The ARN or name of an IAM instance profile to associate with launched instances.
- image
Id string - ID of the image used to launch the instances.
- images
Ocean
Launch Spec Image[] - You can configure VNG with either the imageId or images objects, but not both simultaneously. For each architecture type (amd64, arm64) only one AMI is allowed. Valid values: null, or an array with at least one element
- instance
Metadata OceanOptions Launch Spec Instance Metadata Options - Ocean instance metadata options object for IMDSv2.
- instance
Types string[] - A list of instance types allowed to be provisioned for pods pending under the specified launch specification. The list overrides the list defined for the Ocean cluster.
- name string
- The Ocean Launch Specification name.
- preferred
Spot string[]Types - When Ocean scales up instances, it takes your preferred types into consideration while maintaining a variety of machine types running for optimized distribution.
- restrict
Scale booleanDown - Boolean. When set to
true
, VNG nodes will be treated as if all pods running have the restrict-scale-down label. Therefore, Ocean will not scale nodes down unless empty. - scheduling
Tasks OceanLaunch Spec Scheduling Task[] - Used to define scheduled tasks such as a manual headroom update.
- security
Group string[]Ids - One or more security group ids.
- strategies
Ocean
Launch Spec Strategy[] - Similar to a strategy for an Ocean cluster, but applying only to a virtual node group.
- subnet
Ids string[] - Set subnets in launchSpec. Each element in the array should be a subnet ID.
- Ocean
Launch Spec Tag[] - A key/value mapping of tags to assign to the resource.
- user
Data string - Base64-encoded MIME user data to make available to the instances.
- ocean_
id str - The Ocean cluster ID .
- attributes
Sequence[Ocean
Launch Spec Attribute Args] - Optionally adds labels to instances launched in an Ocean cluster.
- autoscale_
headrooms Sequence[OceanLaunch Spec Autoscale Headroom Args] - Set custom headroom per launch spec. provide list of headrooms object.
- block_
device_ Sequence[Oceanmappings Launch Spec Block Device Mapping Args] - Object. Array list of block devices that are exposed to the instance, specify either virtual devices and EBS volumes.
- iam_
instance_ strprofile - The ARN or name of an IAM instance profile to associate with launched instances.
- image_
id str - ID of the image used to launch the instances.
- images
Sequence[Ocean
Launch Spec Image Args] - You can configure VNG with either the imageId or images objects, but not both simultaneously. For each architecture type (amd64, arm64) only one AMI is allowed. Valid values: null, or an array with at least one element
- instance_
metadata_ Oceanoptions Launch Spec Instance Metadata Options Args - Ocean instance metadata options object for IMDSv2.
- instance_
types Sequence[str] - A list of instance types allowed to be provisioned for pods pending under the specified launch specification. The list overrides the list defined for the Ocean cluster.
- name str
- The Ocean Launch Specification name.
- preferred_
spot_ Sequence[str]types - When Ocean scales up instances, it takes your preferred types into consideration while maintaining a variety of machine types running for optimized distribution.
- restrict_
scale_ booldown - Boolean. When set to
true
, VNG nodes will be treated as if all pods running have the restrict-scale-down label. Therefore, Ocean will not scale nodes down unless empty. - scheduling_
tasks Sequence[OceanLaunch Spec Scheduling Task Args] - Used to define scheduled tasks such as a manual headroom update.
- security_
group_ Sequence[str]ids - One or more security group ids.
- strategies
Sequence[Ocean
Launch Spec Strategy Args] - Similar to a strategy for an Ocean cluster, but applying only to a virtual node group.
- subnet_
ids Sequence[str] - Set subnets in launchSpec. Each element in the array should be a subnet ID.
- Sequence[Ocean
Launch Spec Tag Args] - A key/value mapping of tags to assign to the resource.
- user_
data str - Base64-encoded MIME user data to make available to the instances.
- ocean
Id String - The Ocean cluster ID .
- attributes List<Property Map>
- Optionally adds labels to instances launched in an Ocean cluster.
- autoscale
Headrooms List<Property Map> - Set custom headroom per launch spec. provide list of headrooms object.
- block
Device List<Property Map>Mappings - Object. Array list of block devices that are exposed to the instance, specify either virtual devices and EBS volumes.
- iam
Instance StringProfile - The ARN or name of an IAM instance profile to associate with launched instances.
- image
Id String - ID of the image used to launch the instances.
- images List<Property Map>
- You can configure VNG with either the imageId or images objects, but not both simultaneously. For each architecture type (amd64, arm64) only one AMI is allowed. Valid values: null, or an array with at least one element
- instance
Metadata Property MapOptions - Ocean instance metadata options object for IMDSv2.
- instance
Types List<String> - A list of instance types allowed to be provisioned for pods pending under the specified launch specification. The list overrides the list defined for the Ocean cluster.
- name String
- The Ocean Launch Specification name.
- preferred
Spot List<String>Types - When Ocean scales up instances, it takes your preferred types into consideration while maintaining a variety of machine types running for optimized distribution.
- restrict
Scale BooleanDown - Boolean. When set to
true
, VNG nodes will be treated as if all pods running have the restrict-scale-down label. Therefore, Ocean will not scale nodes down unless empty. - scheduling
Tasks List<Property Map> - Used to define scheduled tasks such as a manual headroom update.
- security
Group List<String>Ids - One or more security group ids.
- strategies List<Property Map>
- Similar to a strategy for an Ocean cluster, but applying only to a virtual node group.
- subnet
Ids List<String> - Set subnets in launchSpec. Each element in the array should be a subnet ID.
- List<Property Map>
- A key/value mapping of tags to assign to the resource.
- user
Data String - Base64-encoded MIME user data to make available to the instances.
Outputs
All input properties are implicitly available as output properties. Additionally, the OceanLaunchSpec 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 OceanLaunchSpec Resource
Get an existing OceanLaunchSpec 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?: OceanLaunchSpecState, opts?: CustomResourceOptions): OceanLaunchSpec
@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
attributes: Optional[Sequence[OceanLaunchSpecAttributeArgs]] = None,
autoscale_headrooms: Optional[Sequence[OceanLaunchSpecAutoscaleHeadroomArgs]] = None,
block_device_mappings: Optional[Sequence[OceanLaunchSpecBlockDeviceMappingArgs]] = None,
iam_instance_profile: Optional[str] = None,
image_id: Optional[str] = None,
images: Optional[Sequence[OceanLaunchSpecImageArgs]] = None,
instance_metadata_options: Optional[OceanLaunchSpecInstanceMetadataOptionsArgs] = None,
instance_types: Optional[Sequence[str]] = None,
name: Optional[str] = None,
ocean_id: Optional[str] = None,
preferred_spot_types: Optional[Sequence[str]] = None,
restrict_scale_down: Optional[bool] = None,
scheduling_tasks: Optional[Sequence[OceanLaunchSpecSchedulingTaskArgs]] = None,
security_group_ids: Optional[Sequence[str]] = None,
strategies: Optional[Sequence[OceanLaunchSpecStrategyArgs]] = None,
subnet_ids: Optional[Sequence[str]] = None,
tags: Optional[Sequence[OceanLaunchSpecTagArgs]] = None,
user_data: Optional[str] = None) -> OceanLaunchSpec
func GetOceanLaunchSpec(ctx *Context, name string, id IDInput, state *OceanLaunchSpecState, opts ...ResourceOption) (*OceanLaunchSpec, error)
public static OceanLaunchSpec Get(string name, Input<string> id, OceanLaunchSpecState? state, CustomResourceOptions? opts = null)
public static OceanLaunchSpec get(String name, Output<String> id, OceanLaunchSpecState 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.
- Attributes
List<Pulumi.
Spot Inst. Ecs. Inputs. Ocean Launch Spec Attribute> - Optionally adds labels to instances launched in an Ocean cluster.
- Autoscale
Headrooms List<Pulumi.Spot Inst. Ecs. Inputs. Ocean Launch Spec Autoscale Headroom> - Set custom headroom per launch spec. provide list of headrooms object.
- Block
Device List<Pulumi.Mappings Spot Inst. Ecs. Inputs. Ocean Launch Spec Block Device Mapping> - Object. Array list of block devices that are exposed to the instance, specify either virtual devices and EBS volumes.
- Iam
Instance stringProfile - The ARN or name of an IAM instance profile to associate with launched instances.
- Image
Id string - ID of the image used to launch the instances.
- Images
List<Pulumi.
Spot Inst. Ecs. Inputs. Ocean Launch Spec Image> - You can configure VNG with either the imageId or images objects, but not both simultaneously. For each architecture type (amd64, arm64) only one AMI is allowed. Valid values: null, or an array with at least one element
- Instance
Metadata Pulumi.Options Spot Inst. Ecs. Inputs. Ocean Launch Spec Instance Metadata Options - Ocean instance metadata options object for IMDSv2.
- Instance
Types List<string> - A list of instance types allowed to be provisioned for pods pending under the specified launch specification. The list overrides the list defined for the Ocean cluster.
- Name string
- The Ocean Launch Specification name.
- Ocean
Id string - The Ocean cluster ID .
- Preferred
Spot List<string>Types - When Ocean scales up instances, it takes your preferred types into consideration while maintaining a variety of machine types running for optimized distribution.
- Restrict
Scale boolDown - Boolean. When set to
true
, VNG nodes will be treated as if all pods running have the restrict-scale-down label. Therefore, Ocean will not scale nodes down unless empty. - Scheduling
Tasks List<Pulumi.Spot Inst. Ecs. Inputs. Ocean Launch Spec Scheduling Task> - Used to define scheduled tasks such as a manual headroom update.
- Security
Group List<string>Ids - One or more security group ids.
- Strategies
List<Pulumi.
Spot Inst. Ecs. Inputs. Ocean Launch Spec Strategy> - Similar to a strategy for an Ocean cluster, but applying only to a virtual node group.
- Subnet
Ids List<string> - Set subnets in launchSpec. Each element in the array should be a subnet ID.
- List<Pulumi.
Spot Inst. Ecs. Inputs. Ocean Launch Spec Tag> - A key/value mapping of tags to assign to the resource.
- User
Data string - Base64-encoded MIME user data to make available to the instances.
- Attributes
[]Ocean
Launch Spec Attribute Args - Optionally adds labels to instances launched in an Ocean cluster.
- Autoscale
Headrooms []OceanLaunch Spec Autoscale Headroom Args - Set custom headroom per launch spec. provide list of headrooms object.
- Block
Device []OceanMappings Launch Spec Block Device Mapping Args - Object. Array list of block devices that are exposed to the instance, specify either virtual devices and EBS volumes.
- Iam
Instance stringProfile - The ARN or name of an IAM instance profile to associate with launched instances.
- Image
Id string - ID of the image used to launch the instances.
- Images
[]Ocean
Launch Spec Image Args - You can configure VNG with either the imageId or images objects, but not both simultaneously. For each architecture type (amd64, arm64) only one AMI is allowed. Valid values: null, or an array with at least one element
- Instance
Metadata OceanOptions Launch Spec Instance Metadata Options Args - Ocean instance metadata options object for IMDSv2.
- Instance
Types []string - A list of instance types allowed to be provisioned for pods pending under the specified launch specification. The list overrides the list defined for the Ocean cluster.
- Name string
- The Ocean Launch Specification name.
- Ocean
Id string - The Ocean cluster ID .
- Preferred
Spot []stringTypes - When Ocean scales up instances, it takes your preferred types into consideration while maintaining a variety of machine types running for optimized distribution.
- Restrict
Scale boolDown - Boolean. When set to
true
, VNG nodes will be treated as if all pods running have the restrict-scale-down label. Therefore, Ocean will not scale nodes down unless empty. - Scheduling
Tasks []OceanLaunch Spec Scheduling Task Args - Used to define scheduled tasks such as a manual headroom update.
- Security
Group []stringIds - One or more security group ids.
- Strategies
[]Ocean
Launch Spec Strategy Args - Similar to a strategy for an Ocean cluster, but applying only to a virtual node group.
- Subnet
Ids []string - Set subnets in launchSpec. Each element in the array should be a subnet ID.
- []Ocean
Launch Spec Tag Args - A key/value mapping of tags to assign to the resource.
- User
Data string - Base64-encoded MIME user data to make available to the instances.
- attributes
List<Ocean
Launch Spec Attribute> - Optionally adds labels to instances launched in an Ocean cluster.
- autoscale
Headrooms List<OceanLaunch Spec Autoscale Headroom> - Set custom headroom per launch spec. provide list of headrooms object.
- block
Device List<OceanMappings Launch Spec Block Device Mapping> - Object. Array list of block devices that are exposed to the instance, specify either virtual devices and EBS volumes.
- iam
Instance StringProfile - The ARN or name of an IAM instance profile to associate with launched instances.
- image
Id String - ID of the image used to launch the instances.
- images
List<Ocean
Launch Spec Image> - You can configure VNG with either the imageId or images objects, but not both simultaneously. For each architecture type (amd64, arm64) only one AMI is allowed. Valid values: null, or an array with at least one element
- instance
Metadata OceanOptions Launch Spec Instance Metadata Options - Ocean instance metadata options object for IMDSv2.
- instance
Types List<String> - A list of instance types allowed to be provisioned for pods pending under the specified launch specification. The list overrides the list defined for the Ocean cluster.
- name String
- The Ocean Launch Specification name.
- ocean
Id String - The Ocean cluster ID .
- preferred
Spot List<String>Types - When Ocean scales up instances, it takes your preferred types into consideration while maintaining a variety of machine types running for optimized distribution.
- restrict
Scale BooleanDown - Boolean. When set to
true
, VNG nodes will be treated as if all pods running have the restrict-scale-down label. Therefore, Ocean will not scale nodes down unless empty. - scheduling
Tasks List<OceanLaunch Spec Scheduling Task> - Used to define scheduled tasks such as a manual headroom update.
- security
Group List<String>Ids - One or more security group ids.
- strategies
List<Ocean
Launch Spec Strategy> - Similar to a strategy for an Ocean cluster, but applying only to a virtual node group.
- subnet
Ids List<String> - Set subnets in launchSpec. Each element in the array should be a subnet ID.
- List<Ocean
Launch Spec Tag> - A key/value mapping of tags to assign to the resource.
- user
Data String - Base64-encoded MIME user data to make available to the instances.
- attributes
Ocean
Launch Spec Attribute[] - Optionally adds labels to instances launched in an Ocean cluster.
- autoscale
Headrooms OceanLaunch Spec Autoscale Headroom[] - Set custom headroom per launch spec. provide list of headrooms object.
- block
Device OceanMappings Launch Spec Block Device Mapping[] - Object. Array list of block devices that are exposed to the instance, specify either virtual devices and EBS volumes.
- iam
Instance stringProfile - The ARN or name of an IAM instance profile to associate with launched instances.
- image
Id string - ID of the image used to launch the instances.
- images
Ocean
Launch Spec Image[] - You can configure VNG with either the imageId or images objects, but not both simultaneously. For each architecture type (amd64, arm64) only one AMI is allowed. Valid values: null, or an array with at least one element
- instance
Metadata OceanOptions Launch Spec Instance Metadata Options - Ocean instance metadata options object for IMDSv2.
- instance
Types string[] - A list of instance types allowed to be provisioned for pods pending under the specified launch specification. The list overrides the list defined for the Ocean cluster.
- name string
- The Ocean Launch Specification name.
- ocean
Id string - The Ocean cluster ID .
- preferred
Spot string[]Types - When Ocean scales up instances, it takes your preferred types into consideration while maintaining a variety of machine types running for optimized distribution.
- restrict
Scale booleanDown - Boolean. When set to
true
, VNG nodes will be treated as if all pods running have the restrict-scale-down label. Therefore, Ocean will not scale nodes down unless empty. - scheduling
Tasks OceanLaunch Spec Scheduling Task[] - Used to define scheduled tasks such as a manual headroom update.
- security
Group string[]Ids - One or more security group ids.
- strategies
Ocean
Launch Spec Strategy[] - Similar to a strategy for an Ocean cluster, but applying only to a virtual node group.
- subnet
Ids string[] - Set subnets in launchSpec. Each element in the array should be a subnet ID.
- Ocean
Launch Spec Tag[] - A key/value mapping of tags to assign to the resource.
- user
Data string - Base64-encoded MIME user data to make available to the instances.
- attributes
Sequence[Ocean
Launch Spec Attribute Args] - Optionally adds labels to instances launched in an Ocean cluster.
- autoscale_
headrooms Sequence[OceanLaunch Spec Autoscale Headroom Args] - Set custom headroom per launch spec. provide list of headrooms object.
- block_
device_ Sequence[Oceanmappings Launch Spec Block Device Mapping Args] - Object. Array list of block devices that are exposed to the instance, specify either virtual devices and EBS volumes.
- iam_
instance_ strprofile - The ARN or name of an IAM instance profile to associate with launched instances.
- image_
id str - ID of the image used to launch the instances.
- images
Sequence[Ocean
Launch Spec Image Args] - You can configure VNG with either the imageId or images objects, but not both simultaneously. For each architecture type (amd64, arm64) only one AMI is allowed. Valid values: null, or an array with at least one element
- instance_
metadata_ Oceanoptions Launch Spec Instance Metadata Options Args - Ocean instance metadata options object for IMDSv2.
- instance_
types Sequence[str] - A list of instance types allowed to be provisioned for pods pending under the specified launch specification. The list overrides the list defined for the Ocean cluster.
- name str
- The Ocean Launch Specification name.
- ocean_
id str - The Ocean cluster ID .
- preferred_
spot_ Sequence[str]types - When Ocean scales up instances, it takes your preferred types into consideration while maintaining a variety of machine types running for optimized distribution.
- restrict_
scale_ booldown - Boolean. When set to
true
, VNG nodes will be treated as if all pods running have the restrict-scale-down label. Therefore, Ocean will not scale nodes down unless empty. - scheduling_
tasks Sequence[OceanLaunch Spec Scheduling Task Args] - Used to define scheduled tasks such as a manual headroom update.
- security_
group_ Sequence[str]ids - One or more security group ids.
- strategies
Sequence[Ocean
Launch Spec Strategy Args] - Similar to a strategy for an Ocean cluster, but applying only to a virtual node group.
- subnet_
ids Sequence[str] - Set subnets in launchSpec. Each element in the array should be a subnet ID.
- Sequence[Ocean
Launch Spec Tag Args] - A key/value mapping of tags to assign to the resource.
- user_
data str - Base64-encoded MIME user data to make available to the instances.
- attributes List<Property Map>
- Optionally adds labels to instances launched in an Ocean cluster.
- autoscale
Headrooms List<Property Map> - Set custom headroom per launch spec. provide list of headrooms object.
- block
Device List<Property Map>Mappings - Object. Array list of block devices that are exposed to the instance, specify either virtual devices and EBS volumes.
- iam
Instance StringProfile - The ARN or name of an IAM instance profile to associate with launched instances.
- image
Id String - ID of the image used to launch the instances.
- images List<Property Map>
- You can configure VNG with either the imageId or images objects, but not both simultaneously. For each architecture type (amd64, arm64) only one AMI is allowed. Valid values: null, or an array with at least one element
- instance
Metadata Property MapOptions - Ocean instance metadata options object for IMDSv2.
- instance
Types List<String> - A list of instance types allowed to be provisioned for pods pending under the specified launch specification. The list overrides the list defined for the Ocean cluster.
- name String
- The Ocean Launch Specification name.
- ocean
Id String - The Ocean cluster ID .
- preferred
Spot List<String>Types - When Ocean scales up instances, it takes your preferred types into consideration while maintaining a variety of machine types running for optimized distribution.
- restrict
Scale BooleanDown - Boolean. When set to
true
, VNG nodes will be treated as if all pods running have the restrict-scale-down label. Therefore, Ocean will not scale nodes down unless empty. - scheduling
Tasks List<Property Map> - Used to define scheduled tasks such as a manual headroom update.
- security
Group List<String>Ids - One or more security group ids.
- strategies List<Property Map>
- Similar to a strategy for an Ocean cluster, but applying only to a virtual node group.
- subnet
Ids List<String> - Set subnets in launchSpec. Each element in the array should be a subnet ID.
- List<Property Map>
- A key/value mapping of tags to assign to the resource.
- user
Data String - Base64-encoded MIME user data to make available to the instances.
Supporting Types
OceanLaunchSpecAttribute, OceanLaunchSpecAttributeArgs
OceanLaunchSpecAutoscaleHeadroom, OceanLaunchSpecAutoscaleHeadroomArgs
- Num
Of intUnits - The number of units to retain as headroom, where each unit has the defined headroom CPU and memory.
- Cpu
Per intUnit - Optionally configure the number of CPUs to allocate for each headroom unit. CPUs are denoted in CPU units, where 1024 units = 1 vCPU.
- Memory
Per intUnit - Optionally configure the amount of memory (MiB) to allocate for each headroom unit.
- Num
Of intUnits - The number of units to retain as headroom, where each unit has the defined headroom CPU and memory.
- Cpu
Per intUnit - Optionally configure the number of CPUs to allocate for each headroom unit. CPUs are denoted in CPU units, where 1024 units = 1 vCPU.
- Memory
Per intUnit - Optionally configure the amount of memory (MiB) to allocate for each headroom unit.
- num
Of IntegerUnits - The number of units to retain as headroom, where each unit has the defined headroom CPU and memory.
- cpu
Per IntegerUnit - Optionally configure the number of CPUs to allocate for each headroom unit. CPUs are denoted in CPU units, where 1024 units = 1 vCPU.
- memory
Per IntegerUnit - Optionally configure the amount of memory (MiB) to allocate for each headroom unit.
- num
Of numberUnits - The number of units to retain as headroom, where each unit has the defined headroom CPU and memory.
- cpu
Per numberUnit - Optionally configure the number of CPUs to allocate for each headroom unit. CPUs are denoted in CPU units, where 1024 units = 1 vCPU.
- memory
Per numberUnit - Optionally configure the amount of memory (MiB) to allocate for each headroom unit.
- num_
of_ intunits - The number of units to retain as headroom, where each unit has the defined headroom CPU and memory.
- cpu_
per_ intunit - Optionally configure the number of CPUs to allocate for each headroom unit. CPUs are denoted in CPU units, where 1024 units = 1 vCPU.
- memory_
per_ intunit - Optionally configure the amount of memory (MiB) to allocate for each headroom unit.
- num
Of NumberUnits - The number of units to retain as headroom, where each unit has the defined headroom CPU and memory.
- cpu
Per NumberUnit - Optionally configure the number of CPUs to allocate for each headroom unit. CPUs are denoted in CPU units, where 1024 units = 1 vCPU.
- memory
Per NumberUnit - Optionally configure the amount of memory (MiB) to allocate for each headroom unit.
OceanLaunchSpecBlockDeviceMapping, OceanLaunchSpecBlockDeviceMappingArgs
- Device
Name string - String. Set device name. (Example: "/dev/xvda1").
- Ebs
Pulumi.
Spot Inst. Ecs. Inputs. Ocean Launch Spec Block Device Mapping Ebs - Object. Set Elastic Block Store properties .
- No
Device string - String. suppresses the specified device included in the block device mapping of the AMI.
- Virtual
Name string
- Device
Name string - String. Set device name. (Example: "/dev/xvda1").
- Ebs
Ocean
Launch Spec Block Device Mapping Ebs - Object. Set Elastic Block Store properties .
- No
Device string - String. suppresses the specified device included in the block device mapping of the AMI.
- Virtual
Name string
- device
Name String - String. Set device name. (Example: "/dev/xvda1").
- ebs
Ocean
Launch Spec Block Device Mapping Ebs - Object. Set Elastic Block Store properties .
- no
Device String - String. suppresses the specified device included in the block device mapping of the AMI.
- virtual
Name String
- device
Name string - String. Set device name. (Example: "/dev/xvda1").
- ebs
Ocean
Launch Spec Block Device Mapping Ebs - Object. Set Elastic Block Store properties .
- no
Device string - String. suppresses the specified device included in the block device mapping of the AMI.
- virtual
Name string
- device_
name str - String. Set device name. (Example: "/dev/xvda1").
- ebs
Ocean
Launch Spec Block Device Mapping Ebs - Object. Set Elastic Block Store properties .
- no_
device str - String. suppresses the specified device included in the block device mapping of the AMI.
- virtual_
name str
- device
Name String - String. Set device name. (Example: "/dev/xvda1").
- ebs Property Map
- Object. Set Elastic Block Store properties .
- no
Device String - String. suppresses the specified device included in the block device mapping of the AMI.
- virtual
Name String
OceanLaunchSpecBlockDeviceMappingEbs, OceanLaunchSpecBlockDeviceMappingEbsArgs
- Delete
On boolTermination - Boolean. Flag to delete the EBS on instance termination.
- Dynamic
Volume Pulumi.Size Spot Inst. Ecs. Inputs. Ocean Launch Spec Block Device Mapping Ebs Dynamic Volume Size - Object. Set dynamic volume size properties. When using this object, you cannot use volumeSize. You must use one or the other.
- Encrypted bool
- Boolean. Enables EBS encryption on the volume.
- Iops int
- Int. The number of I/O operations per second (IOPS) that the volume supports.
- Kms
Key stringId - String. Identifier (key ID, key alias, ID ARN, or alias ARN) for a customer managed CMK under which the EBS volume is encrypted.
- Snapshot
Id string - (Optional) String. The Snapshot ID to mount by.
- Throughput int
- The amount of data transferred to or from a storage device per second, you can use this param just in a case that
volume_type
= gp3. - Volume
Size int - Int. The size, in GB of the volume.
- Volume
Type string - String. The type of the volume (example: "gp2").
- Delete
On boolTermination - Boolean. Flag to delete the EBS on instance termination.
- Dynamic
Volume OceanSize Launch Spec Block Device Mapping Ebs Dynamic Volume Size - Object. Set dynamic volume size properties. When using this object, you cannot use volumeSize. You must use one or the other.
- Encrypted bool
- Boolean. Enables EBS encryption on the volume.
- Iops int
- Int. The number of I/O operations per second (IOPS) that the volume supports.
- Kms
Key stringId - String. Identifier (key ID, key alias, ID ARN, or alias ARN) for a customer managed CMK under which the EBS volume is encrypted.
- Snapshot
Id string - (Optional) String. The Snapshot ID to mount by.
- Throughput int
- The amount of data transferred to or from a storage device per second, you can use this param just in a case that
volume_type
= gp3. - Volume
Size int - Int. The size, in GB of the volume.
- Volume
Type string - String. The type of the volume (example: "gp2").
- delete
On BooleanTermination - Boolean. Flag to delete the EBS on instance termination.
- dynamic
Volume OceanSize Launch Spec Block Device Mapping Ebs Dynamic Volume Size - Object. Set dynamic volume size properties. When using this object, you cannot use volumeSize. You must use one or the other.
- encrypted Boolean
- Boolean. Enables EBS encryption on the volume.
- iops Integer
- Int. The number of I/O operations per second (IOPS) that the volume supports.
- kms
Key StringId - String. Identifier (key ID, key alias, ID ARN, or alias ARN) for a customer managed CMK under which the EBS volume is encrypted.
- snapshot
Id String - (Optional) String. The Snapshot ID to mount by.
- throughput Integer
- The amount of data transferred to or from a storage device per second, you can use this param just in a case that
volume_type
= gp3. - volume
Size Integer - Int. The size, in GB of the volume.
- volume
Type String - String. The type of the volume (example: "gp2").
- delete
On booleanTermination - Boolean. Flag to delete the EBS on instance termination.
- dynamic
Volume OceanSize Launch Spec Block Device Mapping Ebs Dynamic Volume Size - Object. Set dynamic volume size properties. When using this object, you cannot use volumeSize. You must use one or the other.
- encrypted boolean
- Boolean. Enables EBS encryption on the volume.
- iops number
- Int. The number of I/O operations per second (IOPS) that the volume supports.
- kms
Key stringId - String. Identifier (key ID, key alias, ID ARN, or alias ARN) for a customer managed CMK under which the EBS volume is encrypted.
- snapshot
Id string - (Optional) String. The Snapshot ID to mount by.
- throughput number
- The amount of data transferred to or from a storage device per second, you can use this param just in a case that
volume_type
= gp3. - volume
Size number - Int. The size, in GB of the volume.
- volume
Type string - String. The type of the volume (example: "gp2").
- delete_
on_ booltermination - Boolean. Flag to delete the EBS on instance termination.
- dynamic_
volume_ Oceansize Launch Spec Block Device Mapping Ebs Dynamic Volume Size - Object. Set dynamic volume size properties. When using this object, you cannot use volumeSize. You must use one or the other.
- encrypted bool
- Boolean. Enables EBS encryption on the volume.
- iops int
- Int. The number of I/O operations per second (IOPS) that the volume supports.
- kms_
key_ strid - String. Identifier (key ID, key alias, ID ARN, or alias ARN) for a customer managed CMK under which the EBS volume is encrypted.
- snapshot_
id str - (Optional) String. The Snapshot ID to mount by.
- throughput int
- The amount of data transferred to or from a storage device per second, you can use this param just in a case that
volume_type
= gp3. - volume_
size int - Int. The size, in GB of the volume.
- volume_
type str - String. The type of the volume (example: "gp2").
- delete
On BooleanTermination - Boolean. Flag to delete the EBS on instance termination.
- dynamic
Volume Property MapSize - Object. Set dynamic volume size properties. When using this object, you cannot use volumeSize. You must use one or the other.
- encrypted Boolean
- Boolean. Enables EBS encryption on the volume.
- iops Number
- Int. The number of I/O operations per second (IOPS) that the volume supports.
- kms
Key StringId - String. Identifier (key ID, key alias, ID ARN, or alias ARN) for a customer managed CMK under which the EBS volume is encrypted.
- snapshot
Id String - (Optional) String. The Snapshot ID to mount by.
- throughput Number
- The amount of data transferred to or from a storage device per second, you can use this param just in a case that
volume_type
= gp3. - volume
Size Number - Int. The size, in GB of the volume.
- volume
Type String - String. The type of the volume (example: "gp2").
OceanLaunchSpecBlockDeviceMappingEbsDynamicVolumeSize, OceanLaunchSpecBlockDeviceMappingEbsDynamicVolumeSizeArgs
- Base
Size int - Int. Initial size for volume. (Example: 50)
- Resource string
- String. Resource type to increase volume size dynamically by. (valid values: "CPU")
- Size
Per intResource Unit - Int. Additional size (in GB) per resource unit. (Example: baseSize= 50, sizePerResourceUnit=20, and instance with 2 CPU is launched - its total disk size will be: 90GB)
- Base
Size int - Int. Initial size for volume. (Example: 50)
- Resource string
- String. Resource type to increase volume size dynamically by. (valid values: "CPU")
- Size
Per intResource Unit - Int. Additional size (in GB) per resource unit. (Example: baseSize= 50, sizePerResourceUnit=20, and instance with 2 CPU is launched - its total disk size will be: 90GB)
- base
Size Integer - Int. Initial size for volume. (Example: 50)
- resource String
- String. Resource type to increase volume size dynamically by. (valid values: "CPU")
- size
Per IntegerResource Unit - Int. Additional size (in GB) per resource unit. (Example: baseSize= 50, sizePerResourceUnit=20, and instance with 2 CPU is launched - its total disk size will be: 90GB)
- base
Size number - Int. Initial size for volume. (Example: 50)
- resource string
- String. Resource type to increase volume size dynamically by. (valid values: "CPU")
- size
Per numberResource Unit - Int. Additional size (in GB) per resource unit. (Example: baseSize= 50, sizePerResourceUnit=20, and instance with 2 CPU is launched - its total disk size will be: 90GB)
- base_
size int - Int. Initial size for volume. (Example: 50)
- resource str
- String. Resource type to increase volume size dynamically by. (valid values: "CPU")
- size_
per_ intresource_ unit - Int. Additional size (in GB) per resource unit. (Example: baseSize= 50, sizePerResourceUnit=20, and instance with 2 CPU is launched - its total disk size will be: 90GB)
- base
Size Number - Int. Initial size for volume. (Example: 50)
- resource String
- String. Resource type to increase volume size dynamically by. (valid values: "CPU")
- size
Per NumberResource Unit - Int. Additional size (in GB) per resource unit. (Example: baseSize= 50, sizePerResourceUnit=20, and instance with 2 CPU is launched - its total disk size will be: 90GB)
OceanLaunchSpecImage, OceanLaunchSpecImageArgs
- Image
Id string - Identifier of the image in AWS. Valid values: any string which is not empty or null.
- Image
Id string - Identifier of the image in AWS. Valid values: any string which is not empty or null.
- image
Id String - Identifier of the image in AWS. Valid values: any string which is not empty or null.
- image
Id string - Identifier of the image in AWS. Valid values: any string which is not empty or null.
- image_
id str - Identifier of the image in AWS. Valid values: any string which is not empty or null.
- image
Id String - Identifier of the image in AWS. Valid values: any string which is not empty or null.
OceanLaunchSpecInstanceMetadataOptions, OceanLaunchSpecInstanceMetadataOptionsArgs
- Http
Tokens string - Determines if a signed token is required or not. Valid values:
optional
orrequired
. - Http
Put intResponse Hop Limit - 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 string - Determines if a signed token is required or not. Valid values:
optional
orrequired
. - Http
Put intResponse Hop Limit - 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 String - Determines if a signed token is required or not. Valid values:
optional
orrequired
. - http
Put IntegerResponse Hop Limit - 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 string - Determines if a signed token is required or not. Valid values:
optional
orrequired
. - http
Put numberResponse Hop Limit - 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
orrequired
. - http_
put_ intresponse_ hop_ limit - 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 String - Determines if a signed token is required or not. Valid values:
optional
orrequired
. - http
Put NumberResponse Hop Limit - 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.
OceanLaunchSpecSchedulingTask, OceanLaunchSpecSchedulingTaskArgs
- Cron
Expression string - A valid cron expression. For example : " * * * * * ". The cron job runs in UTC time and is in Unix cron format.
- Is
Enabled bool - Describes whether the task is enabled. When
true
, the task runs. Whenfalse
, it does not run. - Task
Type string - The activity that you are scheduling. Valid values: "manualHeadroomUpdate".
- Task
Headrooms List<Pulumi.Spot Inst. Ecs. Inputs. Ocean Launch Spec Scheduling Task Task Headroom> - The config of this scheduled task. Depends on the value of taskType.
- Cron
Expression string - A valid cron expression. For example : " * * * * * ". The cron job runs in UTC time and is in Unix cron format.
- Is
Enabled bool - Describes whether the task is enabled. When
true
, the task runs. Whenfalse
, it does not run. - Task
Type string - The activity that you are scheduling. Valid values: "manualHeadroomUpdate".
- Task
Headrooms []OceanLaunch Spec Scheduling Task Task Headroom - The config of this scheduled task. Depends on the value of taskType.
- cron
Expression String - A valid cron expression. For example : " * * * * * ". The cron job runs in UTC time and is in Unix cron format.
- is
Enabled Boolean - Describes whether the task is enabled. When
true
, the task runs. Whenfalse
, it does not run. - task
Type String - The activity that you are scheduling. Valid values: "manualHeadroomUpdate".
- task
Headrooms List<OceanLaunch Spec Scheduling Task Task Headroom> - The config of this scheduled task. Depends on the value of taskType.
- cron
Expression string - A valid cron expression. For example : " * * * * * ". The cron job runs in UTC time and is in Unix cron format.
- is
Enabled boolean - Describes whether the task is enabled. When
true
, the task runs. Whenfalse
, it does not run. - task
Type string - The activity that you are scheduling. Valid values: "manualHeadroomUpdate".
- task
Headrooms OceanLaunch Spec Scheduling Task Task Headroom[] - The config of this scheduled task. Depends on the value of taskType.
- cron_
expression str - A valid cron expression. For example : " * * * * * ". The cron job runs in UTC time and is in Unix cron format.
- is_
enabled bool - Describes whether the task is enabled. When
true
, the task runs. Whenfalse
, it does not run. - task_
type str - The activity that you are scheduling. Valid values: "manualHeadroomUpdate".
- task_
headrooms Sequence[OceanLaunch Spec Scheduling Task Task Headroom] - The config of this scheduled task. Depends on the value of taskType.
- cron
Expression String - A valid cron expression. For example : " * * * * * ". The cron job runs in UTC time and is in Unix cron format.
- is
Enabled Boolean - Describes whether the task is enabled. When
true
, the task runs. Whenfalse
, it does not run. - task
Type String - The activity that you are scheduling. Valid values: "manualHeadroomUpdate".
- task
Headrooms List<Property Map> - The config of this scheduled task. Depends on the value of taskType.
OceanLaunchSpecSchedulingTaskTaskHeadroom, OceanLaunchSpecSchedulingTaskTaskHeadroomArgs
- Num
Of intUnits - The number of units to retain as headroom, where each unit has the defined headroom CPU, memory and GPU.
- Cpu
Per intUnit - Optionally configure the number of CPUs to allocate for each headroom unit. CPUs are denoted in millicores, where 1000 millicores = 1 vCPU.
- Memory
Per intUnit - Optionally configure the amount of memory (MiB) to allocate for each headroom unit.
- Num
Of intUnits - The number of units to retain as headroom, where each unit has the defined headroom CPU, memory and GPU.
- Cpu
Per intUnit - Optionally configure the number of CPUs to allocate for each headroom unit. CPUs are denoted in millicores, where 1000 millicores = 1 vCPU.
- Memory
Per intUnit - Optionally configure the amount of memory (MiB) to allocate for each headroom unit.
- num
Of IntegerUnits - The number of units to retain as headroom, where each unit has the defined headroom CPU, memory and GPU.
- cpu
Per IntegerUnit - Optionally configure the number of CPUs to allocate for each headroom unit. CPUs are denoted in millicores, where 1000 millicores = 1 vCPU.
- memory
Per IntegerUnit - Optionally configure the amount of memory (MiB) to allocate for each headroom unit.
- num
Of numberUnits - The number of units to retain as headroom, where each unit has the defined headroom CPU, memory and GPU.
- cpu
Per numberUnit - Optionally configure the number of CPUs to allocate for each headroom unit. CPUs are denoted in millicores, where 1000 millicores = 1 vCPU.
- memory
Per numberUnit - Optionally configure the amount of memory (MiB) to allocate for each headroom unit.
- num_
of_ intunits - The number of units to retain as headroom, where each unit has the defined headroom CPU, memory and GPU.
- cpu_
per_ intunit - Optionally configure the number of CPUs to allocate for each headroom unit. CPUs are denoted in millicores, where 1000 millicores = 1 vCPU.
- memory_
per_ intunit - Optionally configure the amount of memory (MiB) to allocate for each headroom unit.
- num
Of NumberUnits - The number of units to retain as headroom, where each unit has the defined headroom CPU, memory and GPU.
- cpu
Per NumberUnit - Optionally configure the number of CPUs to allocate for each headroom unit. CPUs are denoted in millicores, where 1000 millicores = 1 vCPU.
- memory
Per NumberUnit - Optionally configure the amount of memory (MiB) to allocate for each headroom unit.
OceanLaunchSpecStrategy, OceanLaunchSpecStrategyArgs
- Spot
Percentage int - When set, Ocean will proactively try to maintain as close as possible to the percentage of Spot instances out of all the Virtual Node Group instances.
- Spot
Percentage int - When set, Ocean will proactively try to maintain as close as possible to the percentage of Spot instances out of all the Virtual Node Group instances.
- spot
Percentage Integer - When set, Ocean will proactively try to maintain as close as possible to the percentage of Spot instances out of all the Virtual Node Group instances.
- spot
Percentage number - When set, Ocean will proactively try to maintain as close as possible to the percentage of Spot instances out of all the Virtual Node Group instances.
- spot_
percentage int - When set, Ocean will proactively try to maintain as close as possible to the percentage of Spot instances out of all the Virtual Node Group instances.
- spot
Percentage Number - When set, Ocean will proactively try to maintain as close as possible to the percentage of Spot instances out of all the Virtual Node Group instances.
OceanLaunchSpecTag, OceanLaunchSpecTagArgs
Package Details
- Repository
- Spotinst pulumi/pulumi-spotinst
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
spotinst
Terraform Provider.