1. Packages
  2. Spotinst Provider
  3. API Docs
  4. aws
  5. Ocean
Spotinst v3.100.0 published on Wednesday, Nov 20, 2024 by Pulumi

spotinst.aws.Ocean

Explore with Pulumi AI

spotinst logo
Spotinst v3.100.0 published on Wednesday, Nov 20, 2024 by Pulumi

    Example Usage

    Create Ocean Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new Ocean(name: string, args: OceanArgs, opts?: CustomResourceOptions);
    @overload
    def Ocean(resource_name: str,
              args: OceanArgs,
              opts: Optional[ResourceOptions] = None)
    
    @overload
    def Ocean(resource_name: str,
              opts: Optional[ResourceOptions] = None,
              image_id: Optional[str] = None,
              subnet_ids: Optional[Sequence[str]] = None,
              security_groups: Optional[Sequence[str]] = None,
              draining_timeout: Optional[int] = None,
              utilize_reserved_instances: Optional[bool] = None,
              block_device_mappings: Optional[Sequence[OceanBlockDeviceMappingArgs]] = None,
              cluster_orientations: Optional[Sequence[OceanClusterOrientationArgs]] = None,
              controller_id: Optional[str] = None,
              desired_capacity: Optional[int] = None,
              detach_load_balancers: Optional[Sequence[OceanDetachLoadBalancerArgs]] = None,
              associate_ipv6_address: Optional[bool] = None,
              logging: Optional[OceanLoggingArgs] = None,
              fallback_to_ondemand: Optional[bool] = None,
              filters: Optional[OceanFiltersArgs] = None,
              grace_period: Optional[int] = None,
              health_check_unhealthy_duration_before_replacement: Optional[int] = None,
              iam_instance_profile: Optional[str] = None,
              autoscaler: Optional[OceanAutoscalerArgs] = None,
              instance_metadata_options: Optional[OceanInstanceMetadataOptionsArgs] = None,
              key_name: Optional[str] = None,
              load_balancers: Optional[Sequence[OceanLoadBalancerArgs]] = None,
              ebs_optimized: Optional[bool] = None,
              blacklists: Optional[Sequence[str]] = None,
              root_volume_size: Optional[int] = None,
              monitoring: Optional[bool] = None,
              name: Optional[str] = None,
              region: Optional[str] = None,
              resource_tag_specifications: Optional[Sequence[OceanResourceTagSpecificationArgs]] = None,
              min_size: Optional[int] = None,
              scheduled_tasks: Optional[Sequence[OceanScheduledTaskArgs]] = None,
              attach_load_balancers: Optional[Sequence[OceanAttachLoadBalancerArgs]] = None,
              spot_percentage: Optional[int] = None,
              spread_nodes_by: Optional[str] = None,
              associate_public_ip_address: Optional[bool] = None,
              tags: Optional[Sequence[OceanTagArgs]] = None,
              update_policy: Optional[OceanUpdatePolicyArgs] = None,
              use_as_template_only: Optional[bool] = None,
              user_data: Optional[str] = None,
              utilize_commitments: Optional[bool] = None,
              max_size: Optional[int] = None,
              whitelists: Optional[Sequence[str]] = None)
    func NewOcean(ctx *Context, name string, args OceanArgs, opts ...ResourceOption) (*Ocean, error)
    public Ocean(string name, OceanArgs args, CustomResourceOptions? opts = null)
    public Ocean(String name, OceanArgs args)
    public Ocean(String name, OceanArgs args, CustomResourceOptions options)
    
    type: spotinst:aws:Ocean
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args OceanArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args OceanArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args OceanArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args OceanArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args OceanArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var oceanResource = new SpotInst.Aws.Ocean("oceanResource", new()
    {
        ImageId = "string",
        SubnetIds = new[]
        {
            "string",
        },
        SecurityGroups = new[]
        {
            "string",
        },
        DrainingTimeout = 0,
        UtilizeReservedInstances = false,
        BlockDeviceMappings = new[]
        {
            new SpotInst.Aws.Inputs.OceanBlockDeviceMappingArgs
            {
                DeviceName = "string",
                Ebs = new SpotInst.Aws.Inputs.OceanBlockDeviceMappingEbsArgs
                {
                    DeleteOnTermination = false,
                    DynamicIops = new SpotInst.Aws.Inputs.OceanBlockDeviceMappingEbsDynamicIopsArgs
                    {
                        BaseSize = 0,
                        Resource = "string",
                        SizePerResourceUnit = 0,
                    },
                    DynamicVolumeSize = new SpotInst.Aws.Inputs.OceanBlockDeviceMappingEbsDynamicVolumeSizeArgs
                    {
                        BaseSize = 0,
                        Resource = "string",
                        SizePerResourceUnit = 0,
                    },
                    Encrypted = false,
                    Iops = 0,
                    KmsKeyId = "string",
                    SnapshotId = "string",
                    Throughput = 0,
                    VolumeSize = 0,
                    VolumeType = "string",
                },
            },
        },
        ClusterOrientations = new[]
        {
            new SpotInst.Aws.Inputs.OceanClusterOrientationArgs
            {
                AvailabilityVsCost = "string",
            },
        },
        ControllerId = "string",
        DesiredCapacity = 0,
        DetachLoadBalancers = new[]
        {
            new SpotInst.Aws.Inputs.OceanDetachLoadBalancerArgs
            {
                Type = "string",
                Arn = "string",
                Name = "string",
            },
        },
        AssociateIpv6Address = false,
        Logging = new SpotInst.Aws.Inputs.OceanLoggingArgs
        {
            Export = new SpotInst.Aws.Inputs.OceanLoggingExportArgs
            {
                S3s = new[]
                {
                    new SpotInst.Aws.Inputs.OceanLoggingExportS3Args
                    {
                        Id = "string",
                    },
                },
            },
        },
        FallbackToOndemand = false,
        Filters = new SpotInst.Aws.Inputs.OceanFiltersArgs
        {
            Architectures = new[]
            {
                "string",
            },
            Categories = new[]
            {
                "string",
            },
            DiskTypes = new[]
            {
                "string",
            },
            ExcludeFamilies = new[]
            {
                "string",
            },
            ExcludeMetal = false,
            Hypervisors = new[]
            {
                "string",
            },
            IncludeFamilies = new[]
            {
                "string",
            },
            IsEnaSupported = "string",
            MaxGpu = 0,
            MaxMemoryGib = 0,
            MaxNetworkPerformance = 0,
            MaxVcpu = 0,
            MinEnis = 0,
            MinGpu = 0,
            MinMemoryGib = 0,
            MinNetworkPerformance = 0,
            MinVcpu = 0,
            RootDeviceTypes = new[]
            {
                "string",
            },
            VirtualizationTypes = new[]
            {
                "string",
            },
        },
        GracePeriod = 0,
        HealthCheckUnhealthyDurationBeforeReplacement = 0,
        IamInstanceProfile = "string",
        Autoscaler = new SpotInst.Aws.Inputs.OceanAutoscalerArgs
        {
            AutoHeadroomPercentage = 0,
            AutoscaleCooldown = 0,
            AutoscaleDown = new SpotInst.Aws.Inputs.OceanAutoscalerAutoscaleDownArgs
            {
                EvaluationPeriods = 0,
                IsAggressiveScaleDownEnabled = false,
                MaxScaleDownPercentage = 0,
            },
            AutoscaleHeadroom = new SpotInst.Aws.Inputs.OceanAutoscalerAutoscaleHeadroomArgs
            {
                CpuPerUnit = 0,
                GpuPerUnit = 0,
                MemoryPerUnit = 0,
                NumOfUnits = 0,
            },
            AutoscaleIsAutoConfig = false,
            AutoscaleIsEnabled = false,
            EnableAutomaticAndManualHeadroom = false,
            ExtendedResourceDefinitions = new[]
            {
                "string",
            },
            ResourceLimits = new SpotInst.Aws.Inputs.OceanAutoscalerResourceLimitsArgs
            {
                MaxMemoryGib = 0,
                MaxVcpu = 0,
            },
        },
        InstanceMetadataOptions = new SpotInst.Aws.Inputs.OceanInstanceMetadataOptionsArgs
        {
            HttpTokens = "string",
            HttpPutResponseHopLimit = 0,
        },
        KeyName = "string",
        LoadBalancers = new[]
        {
            new SpotInst.Aws.Inputs.OceanLoadBalancerArgs
            {
                Arn = "string",
                Name = "string",
                Type = "string",
            },
        },
        EbsOptimized = false,
        Blacklists = new[]
        {
            "string",
        },
        RootVolumeSize = 0,
        Monitoring = false,
        Name = "string",
        Region = "string",
        ResourceTagSpecifications = new[]
        {
            new SpotInst.Aws.Inputs.OceanResourceTagSpecificationArgs
            {
                ShouldTagVolumes = false,
            },
        },
        MinSize = 0,
        ScheduledTasks = new[]
        {
            new SpotInst.Aws.Inputs.OceanScheduledTaskArgs
            {
                ShutdownHours = new SpotInst.Aws.Inputs.OceanScheduledTaskShutdownHoursArgs
                {
                    TimeWindows = new[]
                    {
                        "string",
                    },
                    IsEnabled = false,
                },
                Tasks = new[]
                {
                    new SpotInst.Aws.Inputs.OceanScheduledTaskTaskArgs
                    {
                        CronExpression = "string",
                        IsEnabled = false,
                        TaskType = "string",
                        Parameters = new SpotInst.Aws.Inputs.OceanScheduledTaskTaskParametersArgs
                        {
                            AmiAutoUpdate = new SpotInst.Aws.Inputs.OceanScheduledTaskTaskParametersAmiAutoUpdateArgs
                            {
                                AmiAutoUpdateClusterRoll = new SpotInst.Aws.Inputs.OceanScheduledTaskTaskParametersAmiAutoUpdateAmiAutoUpdateClusterRollArgs
                                {
                                    BatchMinHealthyPercentage = 0,
                                    BatchSizePercentage = 0,
                                    Comment = "string",
                                    RespectPdb = false,
                                },
                                ApplyRoll = false,
                                MinorVersion = false,
                                Patch = false,
                            },
                            ParametersClusterRoll = new SpotInst.Aws.Inputs.OceanScheduledTaskTaskParametersParametersClusterRollArgs
                            {
                                BatchMinHealthyPercentage = 0,
                                BatchSizePercentage = 0,
                                Comment = "string",
                                RespectPdb = false,
                            },
                        },
                    },
                },
            },
        },
        AttachLoadBalancers = new[]
        {
            new SpotInst.Aws.Inputs.OceanAttachLoadBalancerArgs
            {
                Type = "string",
                Arn = "string",
                Name = "string",
            },
        },
        SpotPercentage = 0,
        SpreadNodesBy = "string",
        AssociatePublicIpAddress = false,
        Tags = new[]
        {
            new SpotInst.Aws.Inputs.OceanTagArgs
            {
                Key = "string",
                Value = "string",
            },
        },
        UpdatePolicy = new SpotInst.Aws.Inputs.OceanUpdatePolicyArgs
        {
            ShouldRoll = false,
            AutoApplyTags = false,
            ConditionedRoll = false,
            ConditionedRollParams = new[]
            {
                "string",
            },
            RollConfig = new SpotInst.Aws.Inputs.OceanUpdatePolicyRollConfigArgs
            {
                BatchSizePercentage = 0,
                BatchMinHealthyPercentage = 0,
                LaunchSpecIds = new[]
                {
                    "string",
                },
                RespectPdb = false,
            },
        },
        UseAsTemplateOnly = false,
        UserData = "string",
        UtilizeCommitments = false,
        MaxSize = 0,
        Whitelists = new[]
        {
            "string",
        },
    });
    
    example, err := aws.NewOcean(ctx, "oceanResource", &aws.OceanArgs{
    	ImageId: pulumi.String("string"),
    	SubnetIds: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	SecurityGroups: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	DrainingTimeout:          pulumi.Int(0),
    	UtilizeReservedInstances: pulumi.Bool(false),
    	BlockDeviceMappings: aws.OceanBlockDeviceMappingArray{
    		&aws.OceanBlockDeviceMappingArgs{
    			DeviceName: pulumi.String("string"),
    			Ebs: &aws.OceanBlockDeviceMappingEbsArgs{
    				DeleteOnTermination: pulumi.Bool(false),
    				DynamicIops: &aws.OceanBlockDeviceMappingEbsDynamicIopsArgs{
    					BaseSize:            pulumi.Int(0),
    					Resource:            pulumi.String("string"),
    					SizePerResourceUnit: pulumi.Int(0),
    				},
    				DynamicVolumeSize: &aws.OceanBlockDeviceMappingEbsDynamicVolumeSizeArgs{
    					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"),
    			},
    		},
    	},
    	ClusterOrientations: aws.OceanClusterOrientationArray{
    		&aws.OceanClusterOrientationArgs{
    			AvailabilityVsCost: pulumi.String("string"),
    		},
    	},
    	ControllerId:    pulumi.String("string"),
    	DesiredCapacity: pulumi.Int(0),
    	DetachLoadBalancers: aws.OceanDetachLoadBalancerArray{
    		&aws.OceanDetachLoadBalancerArgs{
    			Type: pulumi.String("string"),
    			Arn:  pulumi.String("string"),
    			Name: pulumi.String("string"),
    		},
    	},
    	AssociateIpv6Address: pulumi.Bool(false),
    	Logging: &aws.OceanLoggingArgs{
    		Export: &aws.OceanLoggingExportArgs{
    			S3s: aws.OceanLoggingExportS3Array{
    				&aws.OceanLoggingExportS3Args{
    					Id: pulumi.String("string"),
    				},
    			},
    		},
    	},
    	FallbackToOndemand: pulumi.Bool(false),
    	Filters: &aws.OceanFiltersArgs{
    		Architectures: pulumi.StringArray{
    			pulumi.String("string"),
    		},
    		Categories: pulumi.StringArray{
    			pulumi.String("string"),
    		},
    		DiskTypes: pulumi.StringArray{
    			pulumi.String("string"),
    		},
    		ExcludeFamilies: pulumi.StringArray{
    			pulumi.String("string"),
    		},
    		ExcludeMetal: pulumi.Bool(false),
    		Hypervisors: pulumi.StringArray{
    			pulumi.String("string"),
    		},
    		IncludeFamilies: pulumi.StringArray{
    			pulumi.String("string"),
    		},
    		IsEnaSupported:        pulumi.String("string"),
    		MaxGpu:                pulumi.Int(0),
    		MaxMemoryGib:          pulumi.Float64(0),
    		MaxNetworkPerformance: pulumi.Int(0),
    		MaxVcpu:               pulumi.Int(0),
    		MinEnis:               pulumi.Int(0),
    		MinGpu:                pulumi.Int(0),
    		MinMemoryGib:          pulumi.Float64(0),
    		MinNetworkPerformance: pulumi.Int(0),
    		MinVcpu:               pulumi.Int(0),
    		RootDeviceTypes: pulumi.StringArray{
    			pulumi.String("string"),
    		},
    		VirtualizationTypes: pulumi.StringArray{
    			pulumi.String("string"),
    		},
    	},
    	GracePeriod: pulumi.Int(0),
    	HealthCheckUnhealthyDurationBeforeReplacement: pulumi.Int(0),
    	IamInstanceProfile:                            pulumi.String("string"),
    	Autoscaler: &aws.OceanAutoscalerArgs{
    		AutoHeadroomPercentage: pulumi.Int(0),
    		AutoscaleCooldown:      pulumi.Int(0),
    		AutoscaleDown: &aws.OceanAutoscalerAutoscaleDownArgs{
    			EvaluationPeriods:            pulumi.Int(0),
    			IsAggressiveScaleDownEnabled: pulumi.Bool(false),
    			MaxScaleDownPercentage:       pulumi.Float64(0),
    		},
    		AutoscaleHeadroom: &aws.OceanAutoscalerAutoscaleHeadroomArgs{
    			CpuPerUnit:    pulumi.Int(0),
    			GpuPerUnit:    pulumi.Int(0),
    			MemoryPerUnit: pulumi.Int(0),
    			NumOfUnits:    pulumi.Int(0),
    		},
    		AutoscaleIsAutoConfig:            pulumi.Bool(false),
    		AutoscaleIsEnabled:               pulumi.Bool(false),
    		EnableAutomaticAndManualHeadroom: pulumi.Bool(false),
    		ExtendedResourceDefinitions: pulumi.StringArray{
    			pulumi.String("string"),
    		},
    		ResourceLimits: &aws.OceanAutoscalerResourceLimitsArgs{
    			MaxMemoryGib: pulumi.Int(0),
    			MaxVcpu:      pulumi.Int(0),
    		},
    	},
    	InstanceMetadataOptions: &aws.OceanInstanceMetadataOptionsArgs{
    		HttpTokens:              pulumi.String("string"),
    		HttpPutResponseHopLimit: pulumi.Int(0),
    	},
    	KeyName: pulumi.String("string"),
    	LoadBalancers: aws.OceanLoadBalancerArray{
    		&aws.OceanLoadBalancerArgs{
    			Arn:  pulumi.String("string"),
    			Name: pulumi.String("string"),
    			Type: pulumi.String("string"),
    		},
    	},
    	EbsOptimized: pulumi.Bool(false),
    	Blacklists: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	RootVolumeSize: pulumi.Int(0),
    	Monitoring:     pulumi.Bool(false),
    	Name:           pulumi.String("string"),
    	Region:         pulumi.String("string"),
    	ResourceTagSpecifications: aws.OceanResourceTagSpecificationArray{
    		&aws.OceanResourceTagSpecificationArgs{
    			ShouldTagVolumes: pulumi.Bool(false),
    		},
    	},
    	MinSize: pulumi.Int(0),
    	ScheduledTasks: aws.OceanScheduledTaskArray{
    		&aws.OceanScheduledTaskArgs{
    			ShutdownHours: &aws.OceanScheduledTaskShutdownHoursArgs{
    				TimeWindows: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    				IsEnabled: pulumi.Bool(false),
    			},
    			Tasks: aws.OceanScheduledTaskTaskArray{
    				&aws.OceanScheduledTaskTaskArgs{
    					CronExpression: pulumi.String("string"),
    					IsEnabled:      pulumi.Bool(false),
    					TaskType:       pulumi.String("string"),
    					Parameters: &aws.OceanScheduledTaskTaskParametersArgs{
    						AmiAutoUpdate: &aws.OceanScheduledTaskTaskParametersAmiAutoUpdateArgs{
    							AmiAutoUpdateClusterRoll: &aws.OceanScheduledTaskTaskParametersAmiAutoUpdateAmiAutoUpdateClusterRollArgs{
    								BatchMinHealthyPercentage: pulumi.Int(0),
    								BatchSizePercentage:       pulumi.Int(0),
    								Comment:                   pulumi.String("string"),
    								RespectPdb:                pulumi.Bool(false),
    							},
    							ApplyRoll:    pulumi.Bool(false),
    							MinorVersion: pulumi.Bool(false),
    							Patch:        pulumi.Bool(false),
    						},
    						ParametersClusterRoll: &aws.OceanScheduledTaskTaskParametersParametersClusterRollArgs{
    							BatchMinHealthyPercentage: pulumi.Int(0),
    							BatchSizePercentage:       pulumi.Int(0),
    							Comment:                   pulumi.String("string"),
    							RespectPdb:                pulumi.Bool(false),
    						},
    					},
    				},
    			},
    		},
    	},
    	AttachLoadBalancers: aws.OceanAttachLoadBalancerArray{
    		&aws.OceanAttachLoadBalancerArgs{
    			Type: pulumi.String("string"),
    			Arn:  pulumi.String("string"),
    			Name: pulumi.String("string"),
    		},
    	},
    	SpotPercentage:           pulumi.Int(0),
    	SpreadNodesBy:            pulumi.String("string"),
    	AssociatePublicIpAddress: pulumi.Bool(false),
    	Tags: aws.OceanTagArray{
    		&aws.OceanTagArgs{
    			Key:   pulumi.String("string"),
    			Value: pulumi.String("string"),
    		},
    	},
    	UpdatePolicy: &aws.OceanUpdatePolicyArgs{
    		ShouldRoll:      pulumi.Bool(false),
    		AutoApplyTags:   pulumi.Bool(false),
    		ConditionedRoll: pulumi.Bool(false),
    		ConditionedRollParams: pulumi.StringArray{
    			pulumi.String("string"),
    		},
    		RollConfig: &aws.OceanUpdatePolicyRollConfigArgs{
    			BatchSizePercentage:       pulumi.Int(0),
    			BatchMinHealthyPercentage: pulumi.Int(0),
    			LaunchSpecIds: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    			RespectPdb: pulumi.Bool(false),
    		},
    	},
    	UseAsTemplateOnly:  pulumi.Bool(false),
    	UserData:           pulumi.String("string"),
    	UtilizeCommitments: pulumi.Bool(false),
    	MaxSize:            pulumi.Int(0),
    	Whitelists: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    })
    
    var oceanResource = new Ocean("oceanResource", OceanArgs.builder()
        .imageId("string")
        .subnetIds("string")
        .securityGroups("string")
        .drainingTimeout(0)
        .utilizeReservedInstances(false)
        .blockDeviceMappings(OceanBlockDeviceMappingArgs.builder()
            .deviceName("string")
            .ebs(OceanBlockDeviceMappingEbsArgs.builder()
                .deleteOnTermination(false)
                .dynamicIops(OceanBlockDeviceMappingEbsDynamicIopsArgs.builder()
                    .baseSize(0)
                    .resource("string")
                    .sizePerResourceUnit(0)
                    .build())
                .dynamicVolumeSize(OceanBlockDeviceMappingEbsDynamicVolumeSizeArgs.builder()
                    .baseSize(0)
                    .resource("string")
                    .sizePerResourceUnit(0)
                    .build())
                .encrypted(false)
                .iops(0)
                .kmsKeyId("string")
                .snapshotId("string")
                .throughput(0)
                .volumeSize(0)
                .volumeType("string")
                .build())
            .build())
        .clusterOrientations(OceanClusterOrientationArgs.builder()
            .availabilityVsCost("string")
            .build())
        .controllerId("string")
        .desiredCapacity(0)
        .detachLoadBalancers(OceanDetachLoadBalancerArgs.builder()
            .type("string")
            .arn("string")
            .name("string")
            .build())
        .associateIpv6Address(false)
        .logging(OceanLoggingArgs.builder()
            .export(OceanLoggingExportArgs.builder()
                .s3s(OceanLoggingExportS3Args.builder()
                    .id("string")
                    .build())
                .build())
            .build())
        .fallbackToOndemand(false)
        .filters(OceanFiltersArgs.builder()
            .architectures("string")
            .categories("string")
            .diskTypes("string")
            .excludeFamilies("string")
            .excludeMetal(false)
            .hypervisors("string")
            .includeFamilies("string")
            .isEnaSupported("string")
            .maxGpu(0)
            .maxMemoryGib(0)
            .maxNetworkPerformance(0)
            .maxVcpu(0)
            .minEnis(0)
            .minGpu(0)
            .minMemoryGib(0)
            .minNetworkPerformance(0)
            .minVcpu(0)
            .rootDeviceTypes("string")
            .virtualizationTypes("string")
            .build())
        .gracePeriod(0)
        .healthCheckUnhealthyDurationBeforeReplacement(0)
        .iamInstanceProfile("string")
        .autoscaler(OceanAutoscalerArgs.builder()
            .autoHeadroomPercentage(0)
            .autoscaleCooldown(0)
            .autoscaleDown(OceanAutoscalerAutoscaleDownArgs.builder()
                .evaluationPeriods(0)
                .isAggressiveScaleDownEnabled(false)
                .maxScaleDownPercentage(0)
                .build())
            .autoscaleHeadroom(OceanAutoscalerAutoscaleHeadroomArgs.builder()
                .cpuPerUnit(0)
                .gpuPerUnit(0)
                .memoryPerUnit(0)
                .numOfUnits(0)
                .build())
            .autoscaleIsAutoConfig(false)
            .autoscaleIsEnabled(false)
            .enableAutomaticAndManualHeadroom(false)
            .extendedResourceDefinitions("string")
            .resourceLimits(OceanAutoscalerResourceLimitsArgs.builder()
                .maxMemoryGib(0)
                .maxVcpu(0)
                .build())
            .build())
        .instanceMetadataOptions(OceanInstanceMetadataOptionsArgs.builder()
            .httpTokens("string")
            .httpPutResponseHopLimit(0)
            .build())
        .keyName("string")
        .loadBalancers(OceanLoadBalancerArgs.builder()
            .arn("string")
            .name("string")
            .type("string")
            .build())
        .ebsOptimized(false)
        .blacklists("string")
        .rootVolumeSize(0)
        .monitoring(false)
        .name("string")
        .region("string")
        .resourceTagSpecifications(OceanResourceTagSpecificationArgs.builder()
            .shouldTagVolumes(false)
            .build())
        .minSize(0)
        .scheduledTasks(OceanScheduledTaskArgs.builder()
            .shutdownHours(OceanScheduledTaskShutdownHoursArgs.builder()
                .timeWindows("string")
                .isEnabled(false)
                .build())
            .tasks(OceanScheduledTaskTaskArgs.builder()
                .cronExpression("string")
                .isEnabled(false)
                .taskType("string")
                .parameters(OceanScheduledTaskTaskParametersArgs.builder()
                    .amiAutoUpdate(OceanScheduledTaskTaskParametersAmiAutoUpdateArgs.builder()
                        .amiAutoUpdateClusterRoll(OceanScheduledTaskTaskParametersAmiAutoUpdateAmiAutoUpdateClusterRollArgs.builder()
                            .batchMinHealthyPercentage(0)
                            .batchSizePercentage(0)
                            .comment("string")
                            .respectPdb(false)
                            .build())
                        .applyRoll(false)
                        .minorVersion(false)
                        .patch(false)
                        .build())
                    .parametersClusterRoll(OceanScheduledTaskTaskParametersParametersClusterRollArgs.builder()
                        .batchMinHealthyPercentage(0)
                        .batchSizePercentage(0)
                        .comment("string")
                        .respectPdb(false)
                        .build())
                    .build())
                .build())
            .build())
        .attachLoadBalancers(OceanAttachLoadBalancerArgs.builder()
            .type("string")
            .arn("string")
            .name("string")
            .build())
        .spotPercentage(0)
        .spreadNodesBy("string")
        .associatePublicIpAddress(false)
        .tags(OceanTagArgs.builder()
            .key("string")
            .value("string")
            .build())
        .updatePolicy(OceanUpdatePolicyArgs.builder()
            .shouldRoll(false)
            .autoApplyTags(false)
            .conditionedRoll(false)
            .conditionedRollParams("string")
            .rollConfig(OceanUpdatePolicyRollConfigArgs.builder()
                .batchSizePercentage(0)
                .batchMinHealthyPercentage(0)
                .launchSpecIds("string")
                .respectPdb(false)
                .build())
            .build())
        .useAsTemplateOnly(false)
        .userData("string")
        .utilizeCommitments(false)
        .maxSize(0)
        .whitelists("string")
        .build());
    
    ocean_resource = spotinst.aws.Ocean("oceanResource",
        image_id="string",
        subnet_ids=["string"],
        security_groups=["string"],
        draining_timeout=0,
        utilize_reserved_instances=False,
        block_device_mappings=[{
            "device_name": "string",
            "ebs": {
                "delete_on_termination": False,
                "dynamic_iops": {
                    "base_size": 0,
                    "resource": "string",
                    "size_per_resource_unit": 0,
                },
                "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",
            },
        }],
        cluster_orientations=[{
            "availability_vs_cost": "string",
        }],
        controller_id="string",
        desired_capacity=0,
        detach_load_balancers=[{
            "type": "string",
            "arn": "string",
            "name": "string",
        }],
        associate_ipv6_address=False,
        logging={
            "export": {
                "s3s": [{
                    "id": "string",
                }],
            },
        },
        fallback_to_ondemand=False,
        filters={
            "architectures": ["string"],
            "categories": ["string"],
            "disk_types": ["string"],
            "exclude_families": ["string"],
            "exclude_metal": False,
            "hypervisors": ["string"],
            "include_families": ["string"],
            "is_ena_supported": "string",
            "max_gpu": 0,
            "max_memory_gib": 0,
            "max_network_performance": 0,
            "max_vcpu": 0,
            "min_enis": 0,
            "min_gpu": 0,
            "min_memory_gib": 0,
            "min_network_performance": 0,
            "min_vcpu": 0,
            "root_device_types": ["string"],
            "virtualization_types": ["string"],
        },
        grace_period=0,
        health_check_unhealthy_duration_before_replacement=0,
        iam_instance_profile="string",
        autoscaler={
            "auto_headroom_percentage": 0,
            "autoscale_cooldown": 0,
            "autoscale_down": {
                "evaluation_periods": 0,
                "is_aggressive_scale_down_enabled": False,
                "max_scale_down_percentage": 0,
            },
            "autoscale_headroom": {
                "cpu_per_unit": 0,
                "gpu_per_unit": 0,
                "memory_per_unit": 0,
                "num_of_units": 0,
            },
            "autoscale_is_auto_config": False,
            "autoscale_is_enabled": False,
            "enable_automatic_and_manual_headroom": False,
            "extended_resource_definitions": ["string"],
            "resource_limits": {
                "max_memory_gib": 0,
                "max_vcpu": 0,
            },
        },
        instance_metadata_options={
            "http_tokens": "string",
            "http_put_response_hop_limit": 0,
        },
        key_name="string",
        load_balancers=[{
            "arn": "string",
            "name": "string",
            "type": "string",
        }],
        ebs_optimized=False,
        blacklists=["string"],
        root_volume_size=0,
        monitoring=False,
        name="string",
        region="string",
        resource_tag_specifications=[{
            "should_tag_volumes": False,
        }],
        min_size=0,
        scheduled_tasks=[{
            "shutdown_hours": {
                "time_windows": ["string"],
                "is_enabled": False,
            },
            "tasks": [{
                "cron_expression": "string",
                "is_enabled": False,
                "task_type": "string",
                "parameters": {
                    "ami_auto_update": {
                        "ami_auto_update_cluster_roll": {
                            "batch_min_healthy_percentage": 0,
                            "batch_size_percentage": 0,
                            "comment": "string",
                            "respect_pdb": False,
                        },
                        "apply_roll": False,
                        "minor_version": False,
                        "patch": False,
                    },
                    "parameters_cluster_roll": {
                        "batch_min_healthy_percentage": 0,
                        "batch_size_percentage": 0,
                        "comment": "string",
                        "respect_pdb": False,
                    },
                },
            }],
        }],
        attach_load_balancers=[{
            "type": "string",
            "arn": "string",
            "name": "string",
        }],
        spot_percentage=0,
        spread_nodes_by="string",
        associate_public_ip_address=False,
        tags=[{
            "key": "string",
            "value": "string",
        }],
        update_policy={
            "should_roll": False,
            "auto_apply_tags": False,
            "conditioned_roll": False,
            "conditioned_roll_params": ["string"],
            "roll_config": {
                "batch_size_percentage": 0,
                "batch_min_healthy_percentage": 0,
                "launch_spec_ids": ["string"],
                "respect_pdb": False,
            },
        },
        use_as_template_only=False,
        user_data="string",
        utilize_commitments=False,
        max_size=0,
        whitelists=["string"])
    
    const oceanResource = new spotinst.aws.Ocean("oceanResource", {
        imageId: "string",
        subnetIds: ["string"],
        securityGroups: ["string"],
        drainingTimeout: 0,
        utilizeReservedInstances: false,
        blockDeviceMappings: [{
            deviceName: "string",
            ebs: {
                deleteOnTermination: false,
                dynamicIops: {
                    baseSize: 0,
                    resource: "string",
                    sizePerResourceUnit: 0,
                },
                dynamicVolumeSize: {
                    baseSize: 0,
                    resource: "string",
                    sizePerResourceUnit: 0,
                },
                encrypted: false,
                iops: 0,
                kmsKeyId: "string",
                snapshotId: "string",
                throughput: 0,
                volumeSize: 0,
                volumeType: "string",
            },
        }],
        clusterOrientations: [{
            availabilityVsCost: "string",
        }],
        controllerId: "string",
        desiredCapacity: 0,
        detachLoadBalancers: [{
            type: "string",
            arn: "string",
            name: "string",
        }],
        associateIpv6Address: false,
        logging: {
            "export": {
                s3s: [{
                    id: "string",
                }],
            },
        },
        fallbackToOndemand: false,
        filters: {
            architectures: ["string"],
            categories: ["string"],
            diskTypes: ["string"],
            excludeFamilies: ["string"],
            excludeMetal: false,
            hypervisors: ["string"],
            includeFamilies: ["string"],
            isEnaSupported: "string",
            maxGpu: 0,
            maxMemoryGib: 0,
            maxNetworkPerformance: 0,
            maxVcpu: 0,
            minEnis: 0,
            minGpu: 0,
            minMemoryGib: 0,
            minNetworkPerformance: 0,
            minVcpu: 0,
            rootDeviceTypes: ["string"],
            virtualizationTypes: ["string"],
        },
        gracePeriod: 0,
        healthCheckUnhealthyDurationBeforeReplacement: 0,
        iamInstanceProfile: "string",
        autoscaler: {
            autoHeadroomPercentage: 0,
            autoscaleCooldown: 0,
            autoscaleDown: {
                evaluationPeriods: 0,
                isAggressiveScaleDownEnabled: false,
                maxScaleDownPercentage: 0,
            },
            autoscaleHeadroom: {
                cpuPerUnit: 0,
                gpuPerUnit: 0,
                memoryPerUnit: 0,
                numOfUnits: 0,
            },
            autoscaleIsAutoConfig: false,
            autoscaleIsEnabled: false,
            enableAutomaticAndManualHeadroom: false,
            extendedResourceDefinitions: ["string"],
            resourceLimits: {
                maxMemoryGib: 0,
                maxVcpu: 0,
            },
        },
        instanceMetadataOptions: {
            httpTokens: "string",
            httpPutResponseHopLimit: 0,
        },
        keyName: "string",
        loadBalancers: [{
            arn: "string",
            name: "string",
            type: "string",
        }],
        ebsOptimized: false,
        blacklists: ["string"],
        rootVolumeSize: 0,
        monitoring: false,
        name: "string",
        region: "string",
        resourceTagSpecifications: [{
            shouldTagVolumes: false,
        }],
        minSize: 0,
        scheduledTasks: [{
            shutdownHours: {
                timeWindows: ["string"],
                isEnabled: false,
            },
            tasks: [{
                cronExpression: "string",
                isEnabled: false,
                taskType: "string",
                parameters: {
                    amiAutoUpdate: {
                        amiAutoUpdateClusterRoll: {
                            batchMinHealthyPercentage: 0,
                            batchSizePercentage: 0,
                            comment: "string",
                            respectPdb: false,
                        },
                        applyRoll: false,
                        minorVersion: false,
                        patch: false,
                    },
                    parametersClusterRoll: {
                        batchMinHealthyPercentage: 0,
                        batchSizePercentage: 0,
                        comment: "string",
                        respectPdb: false,
                    },
                },
            }],
        }],
        attachLoadBalancers: [{
            type: "string",
            arn: "string",
            name: "string",
        }],
        spotPercentage: 0,
        spreadNodesBy: "string",
        associatePublicIpAddress: false,
        tags: [{
            key: "string",
            value: "string",
        }],
        updatePolicy: {
            shouldRoll: false,
            autoApplyTags: false,
            conditionedRoll: false,
            conditionedRollParams: ["string"],
            rollConfig: {
                batchSizePercentage: 0,
                batchMinHealthyPercentage: 0,
                launchSpecIds: ["string"],
                respectPdb: false,
            },
        },
        useAsTemplateOnly: false,
        userData: "string",
        utilizeCommitments: false,
        maxSize: 0,
        whitelists: ["string"],
    });
    
    type: spotinst:aws:Ocean
    properties:
        associateIpv6Address: false
        associatePublicIpAddress: false
        attachLoadBalancers:
            - arn: string
              name: string
              type: string
        autoscaler:
            autoHeadroomPercentage: 0
            autoscaleCooldown: 0
            autoscaleDown:
                evaluationPeriods: 0
                isAggressiveScaleDownEnabled: false
                maxScaleDownPercentage: 0
            autoscaleHeadroom:
                cpuPerUnit: 0
                gpuPerUnit: 0
                memoryPerUnit: 0
                numOfUnits: 0
            autoscaleIsAutoConfig: false
            autoscaleIsEnabled: false
            enableAutomaticAndManualHeadroom: false
            extendedResourceDefinitions:
                - string
            resourceLimits:
                maxMemoryGib: 0
                maxVcpu: 0
        blacklists:
            - string
        blockDeviceMappings:
            - deviceName: string
              ebs:
                deleteOnTermination: false
                dynamicIops:
                    baseSize: 0
                    resource: string
                    sizePerResourceUnit: 0
                dynamicVolumeSize:
                    baseSize: 0
                    resource: string
                    sizePerResourceUnit: 0
                encrypted: false
                iops: 0
                kmsKeyId: string
                snapshotId: string
                throughput: 0
                volumeSize: 0
                volumeType: string
        clusterOrientations:
            - availabilityVsCost: string
        controllerId: string
        desiredCapacity: 0
        detachLoadBalancers:
            - arn: string
              name: string
              type: string
        drainingTimeout: 0
        ebsOptimized: false
        fallbackToOndemand: false
        filters:
            architectures:
                - string
            categories:
                - string
            diskTypes:
                - string
            excludeFamilies:
                - string
            excludeMetal: false
            hypervisors:
                - string
            includeFamilies:
                - string
            isEnaSupported: string
            maxGpu: 0
            maxMemoryGib: 0
            maxNetworkPerformance: 0
            maxVcpu: 0
            minEnis: 0
            minGpu: 0
            minMemoryGib: 0
            minNetworkPerformance: 0
            minVcpu: 0
            rootDeviceTypes:
                - string
            virtualizationTypes:
                - string
        gracePeriod: 0
        healthCheckUnhealthyDurationBeforeReplacement: 0
        iamInstanceProfile: string
        imageId: string
        instanceMetadataOptions:
            httpPutResponseHopLimit: 0
            httpTokens: string
        keyName: string
        loadBalancers:
            - arn: string
              name: string
              type: string
        logging:
            export:
                s3s:
                    - id: string
        maxSize: 0
        minSize: 0
        monitoring: false
        name: string
        region: string
        resourceTagSpecifications:
            - shouldTagVolumes: false
        rootVolumeSize: 0
        scheduledTasks:
            - shutdownHours:
                isEnabled: false
                timeWindows:
                    - string
              tasks:
                - cronExpression: string
                  isEnabled: false
                  parameters:
                    amiAutoUpdate:
                        amiAutoUpdateClusterRoll:
                            batchMinHealthyPercentage: 0
                            batchSizePercentage: 0
                            comment: string
                            respectPdb: false
                        applyRoll: false
                        minorVersion: false
                        patch: false
                    parametersClusterRoll:
                        batchMinHealthyPercentage: 0
                        batchSizePercentage: 0
                        comment: string
                        respectPdb: false
                  taskType: string
        securityGroups:
            - string
        spotPercentage: 0
        spreadNodesBy: string
        subnetIds:
            - string
        tags:
            - key: string
              value: string
        updatePolicy:
            autoApplyTags: false
            conditionedRoll: false
            conditionedRollParams:
                - string
            rollConfig:
                batchMinHealthyPercentage: 0
                batchSizePercentage: 0
                launchSpecIds:
                    - string
                respectPdb: false
            shouldRoll: false
        useAsTemplateOnly: false
        userData: string
        utilizeCommitments: false
        utilizeReservedInstances: false
        whitelists:
            - string
    

    Ocean Resource Properties

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

    Inputs

    In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

    The Ocean resource accepts the following input properties:

    ImageId string
    ID of the image used to launch the instances.
    SecurityGroups List<string>
    One or more security group ids.
    SubnetIds List<string>
    A comma-separated list of subnet identifiers for the Ocean cluster. Subnet IDs should be configured with auto assign public IP.

    • instanceTypes - (Optional) The type of instances that may or may not be a part of the Ocean cluster.
    AssociateIpv6Address bool
    Configure IPv6 address allocation.
    AssociatePublicIpAddress bool
    Configure public IP address allocation.
    AttachLoadBalancers List<Pulumi.SpotInst.Aws.Inputs.OceanAttachLoadBalancer>
    Attach load balancers to the cluster.
    Autoscaler Pulumi.SpotInst.Aws.Inputs.OceanAutoscaler
    Describes the Ocean Kubernetes Auto Scaler.
    Blacklists List<string>
    BlockDeviceMappings List<Pulumi.SpotInst.Aws.Inputs.OceanBlockDeviceMapping>
    Object. Array list of block devices that are exposed to the instance, specify either virtual devices and EBS volumes.
    ClusterOrientations List<Pulumi.SpotInst.Aws.Inputs.OceanClusterOrientation>
    ControllerId string
    A unique identifier used for connecting the Ocean SaaS platform and the Kubernetes cluster. Typically, the cluster name is used as its identifier.
    DesiredCapacity int
    The number of instances to launch and maintain in the cluster.
    DetachLoadBalancers List<Pulumi.SpotInst.Aws.Inputs.OceanDetachLoadBalancer>
    Detach load balancers from the cluster.
    DrainingTimeout int
    The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.
    EbsOptimized bool
    Enable EBS optimized for cluster. Flag will enable optimized capacity for high bandwidth connectivity to the EB service for non EBS optimized instance types. For instances that are EBS optimized this flag will be ignored.
    FallbackToOndemand bool
    If not Spot instance markets are available, enable Ocean to launch On-Demand instances instead.
    Filters Pulumi.SpotInst.Aws.Inputs.OceanFilters
    GracePeriod int
    The amount of time, in seconds, after the instance has launched to start checking its health.
    HealthCheckUnhealthyDurationBeforeReplacement int
    The amount of time, in seconds, an existing instance should remain active after becoming unhealthy. After the set time out the instance will be replaced. The minimum value allowed is 60, and it must be a multiple of 60.
    IamInstanceProfile string
    The instance profile iam role.
    InstanceMetadataOptions Pulumi.SpotInst.Aws.Inputs.OceanInstanceMetadataOptions
    Ocean instance metadata options object for IMDSv2.
    KeyName string
    The key pair to attach the instances.
    LoadBalancers List<Pulumi.SpotInst.Aws.Inputs.OceanLoadBalancer>
    Array of load balancer objects to add to ocean cluster
    Logging Pulumi.SpotInst.Aws.Inputs.OceanLogging
    Logging configuration.
    MaxSize int
    The upper limit of instances the cluster can scale up to.
    MinSize int
    The lower limit of instances the cluster can scale down to.
    Monitoring bool
    Enable detailed monitoring for cluster. Flag will enable Cloud Watch detailed monitoring (one minute increments). Note: there are additional hourly costs for this service based on the region used.
    Name string
    The cluster name.
    Region string
    The region the cluster will run in.
    ResourceTagSpecifications List<Pulumi.SpotInst.Aws.Inputs.OceanResourceTagSpecification>
    Specify which resources should be tagged with Virtual Node Group tags or Ocean tags. If tags are set on the VNG, the resources will be tagged with the VNG tags; otherwise, they will be tagged with the Ocean tags.
    RootVolumeSize int
    The size (in Gb) to allocate for the root volume. Minimum 20.
    ScheduledTasks List<Pulumi.SpotInst.Aws.Inputs.OceanScheduledTask>
    Set scheduling object.
    SpotPercentage int
    The desired percentage of Spot instances out of all running instances. Only available when the field is not set in any VNG directly (launchSpec.strategy.spotPercentage).
    SpreadNodesBy string
    Ocean will spread the nodes across markets by this value. Possible values: vcpu or count.
    Tags List<Pulumi.SpotInst.Aws.Inputs.OceanTag>
    Optionally adds tags to instances launched in an Ocean cluster.
    UpdatePolicy Pulumi.SpotInst.Aws.Inputs.OceanUpdatePolicy
    UseAsTemplateOnly bool
    launch specification defined on the Ocean object will function only as a template for virtual node groups. When set to true, on Ocean resource creation please make sure your custom VNG has an initial_nodes parameter to create nodes for your VNG.
    UserData string
    Base64-encoded MIME user data to make available to the instances.
    UtilizeCommitments bool
    If savings plans exist, Ocean will utilize them before launching Spot instances.
    UtilizeReservedInstances bool
    If Reserved instances exist, Ocean will utilize them before launching Spot instances.
    Whitelists List<string>
    ImageId string
    ID of the image used to launch the instances.
    SecurityGroups []string
    One or more security group ids.
    SubnetIds []string
    A comma-separated list of subnet identifiers for the Ocean cluster. Subnet IDs should be configured with auto assign public IP.

    • instanceTypes - (Optional) The type of instances that may or may not be a part of the Ocean cluster.
    AssociateIpv6Address bool
    Configure IPv6 address allocation.
    AssociatePublicIpAddress bool
    Configure public IP address allocation.
    AttachLoadBalancers []OceanAttachLoadBalancerArgs
    Attach load balancers to the cluster.
    Autoscaler OceanAutoscalerArgs
    Describes the Ocean Kubernetes Auto Scaler.
    Blacklists []string
    BlockDeviceMappings []OceanBlockDeviceMappingArgs
    Object. Array list of block devices that are exposed to the instance, specify either virtual devices and EBS volumes.
    ClusterOrientations []OceanClusterOrientationArgs
    ControllerId string
    A unique identifier used for connecting the Ocean SaaS platform and the Kubernetes cluster. Typically, the cluster name is used as its identifier.
    DesiredCapacity int
    The number of instances to launch and maintain in the cluster.
    DetachLoadBalancers []OceanDetachLoadBalancerArgs
    Detach load balancers from the cluster.
    DrainingTimeout int
    The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.
    EbsOptimized bool
    Enable EBS optimized for cluster. Flag will enable optimized capacity for high bandwidth connectivity to the EB service for non EBS optimized instance types. For instances that are EBS optimized this flag will be ignored.
    FallbackToOndemand bool
    If not Spot instance markets are available, enable Ocean to launch On-Demand instances instead.
    Filters OceanFiltersArgs
    GracePeriod int
    The amount of time, in seconds, after the instance has launched to start checking its health.
    HealthCheckUnhealthyDurationBeforeReplacement int
    The amount of time, in seconds, an existing instance should remain active after becoming unhealthy. After the set time out the instance will be replaced. The minimum value allowed is 60, and it must be a multiple of 60.
    IamInstanceProfile string
    The instance profile iam role.
    InstanceMetadataOptions OceanInstanceMetadataOptionsArgs
    Ocean instance metadata options object for IMDSv2.
    KeyName string
    The key pair to attach the instances.
    LoadBalancers []OceanLoadBalancerArgs
    Array of load balancer objects to add to ocean cluster
    Logging OceanLoggingArgs
    Logging configuration.
    MaxSize int
    The upper limit of instances the cluster can scale up to.
    MinSize int
    The lower limit of instances the cluster can scale down to.
    Monitoring bool
    Enable detailed monitoring for cluster. Flag will enable Cloud Watch detailed monitoring (one minute increments). Note: there are additional hourly costs for this service based on the region used.
    Name string
    The cluster name.
    Region string
    The region the cluster will run in.
    ResourceTagSpecifications []OceanResourceTagSpecificationArgs
    Specify which resources should be tagged with Virtual Node Group tags or Ocean tags. If tags are set on the VNG, the resources will be tagged with the VNG tags; otherwise, they will be tagged with the Ocean tags.
    RootVolumeSize int
    The size (in Gb) to allocate for the root volume. Minimum 20.
    ScheduledTasks []OceanScheduledTaskArgs
    Set scheduling object.
    SpotPercentage int
    The desired percentage of Spot instances out of all running instances. Only available when the field is not set in any VNG directly (launchSpec.strategy.spotPercentage).
    SpreadNodesBy string
    Ocean will spread the nodes across markets by this value. Possible values: vcpu or count.
    Tags []OceanTagArgs
    Optionally adds tags to instances launched in an Ocean cluster.
    UpdatePolicy OceanUpdatePolicyArgs
    UseAsTemplateOnly bool
    launch specification defined on the Ocean object will function only as a template for virtual node groups. When set to true, on Ocean resource creation please make sure your custom VNG has an initial_nodes parameter to create nodes for your VNG.
    UserData string
    Base64-encoded MIME user data to make available to the instances.
    UtilizeCommitments bool
    If savings plans exist, Ocean will utilize them before launching Spot instances.
    UtilizeReservedInstances bool
    If Reserved instances exist, Ocean will utilize them before launching Spot instances.
    Whitelists []string
    imageId String
    ID of the image used to launch the instances.
    securityGroups List<String>
    One or more security group ids.
    subnetIds List<String>
    A comma-separated list of subnet identifiers for the Ocean cluster. Subnet IDs should be configured with auto assign public IP.

    • instanceTypes - (Optional) The type of instances that may or may not be a part of the Ocean cluster.
    associateIpv6Address Boolean
    Configure IPv6 address allocation.
    associatePublicIpAddress Boolean
    Configure public IP address allocation.
    attachLoadBalancers List<OceanAttachLoadBalancer>
    Attach load balancers to the cluster.
    autoscaler OceanAutoscaler
    Describes the Ocean Kubernetes Auto Scaler.
    blacklists List<String>
    blockDeviceMappings List<OceanBlockDeviceMapping>
    Object. Array list of block devices that are exposed to the instance, specify either virtual devices and EBS volumes.
    clusterOrientations List<OceanClusterOrientation>
    controllerId String
    A unique identifier used for connecting the Ocean SaaS platform and the Kubernetes cluster. Typically, the cluster name is used as its identifier.
    desiredCapacity Integer
    The number of instances to launch and maintain in the cluster.
    detachLoadBalancers List<OceanDetachLoadBalancer>
    Detach load balancers from the cluster.
    drainingTimeout Integer
    The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.
    ebsOptimized Boolean
    Enable EBS optimized for cluster. Flag will enable optimized capacity for high bandwidth connectivity to the EB service for non EBS optimized instance types. For instances that are EBS optimized this flag will be ignored.
    fallbackToOndemand Boolean
    If not Spot instance markets are available, enable Ocean to launch On-Demand instances instead.
    filters OceanFilters
    gracePeriod Integer
    The amount of time, in seconds, after the instance has launched to start checking its health.
    healthCheckUnhealthyDurationBeforeReplacement Integer
    The amount of time, in seconds, an existing instance should remain active after becoming unhealthy. After the set time out the instance will be replaced. The minimum value allowed is 60, and it must be a multiple of 60.
    iamInstanceProfile String
    The instance profile iam role.
    instanceMetadataOptions OceanInstanceMetadataOptions
    Ocean instance metadata options object for IMDSv2.
    keyName String
    The key pair to attach the instances.
    loadBalancers List<OceanLoadBalancer>
    Array of load balancer objects to add to ocean cluster
    logging OceanLogging
    Logging configuration.
    maxSize Integer
    The upper limit of instances the cluster can scale up to.
    minSize Integer
    The lower limit of instances the cluster can scale down to.
    monitoring Boolean
    Enable detailed monitoring for cluster. Flag will enable Cloud Watch detailed monitoring (one minute increments). Note: there are additional hourly costs for this service based on the region used.
    name String
    The cluster name.
    region String
    The region the cluster will run in.
    resourceTagSpecifications List<OceanResourceTagSpecification>
    Specify which resources should be tagged with Virtual Node Group tags or Ocean tags. If tags are set on the VNG, the resources will be tagged with the VNG tags; otherwise, they will be tagged with the Ocean tags.
    rootVolumeSize Integer
    The size (in Gb) to allocate for the root volume. Minimum 20.
    scheduledTasks List<OceanScheduledTask>
    Set scheduling object.
    spotPercentage Integer
    The desired percentage of Spot instances out of all running instances. Only available when the field is not set in any VNG directly (launchSpec.strategy.spotPercentage).
    spreadNodesBy String
    Ocean will spread the nodes across markets by this value. Possible values: vcpu or count.
    tags List<OceanTag>
    Optionally adds tags to instances launched in an Ocean cluster.
    updatePolicy OceanUpdatePolicy
    useAsTemplateOnly Boolean
    launch specification defined on the Ocean object will function only as a template for virtual node groups. When set to true, on Ocean resource creation please make sure your custom VNG has an initial_nodes parameter to create nodes for your VNG.
    userData String
    Base64-encoded MIME user data to make available to the instances.
    utilizeCommitments Boolean
    If savings plans exist, Ocean will utilize them before launching Spot instances.
    utilizeReservedInstances Boolean
    If Reserved instances exist, Ocean will utilize them before launching Spot instances.
    whitelists List<String>
    imageId string
    ID of the image used to launch the instances.
    securityGroups string[]
    One or more security group ids.
    subnetIds string[]
    A comma-separated list of subnet identifiers for the Ocean cluster. Subnet IDs should be configured with auto assign public IP.

    • instanceTypes - (Optional) The type of instances that may or may not be a part of the Ocean cluster.
    associateIpv6Address boolean
    Configure IPv6 address allocation.
    associatePublicIpAddress boolean
    Configure public IP address allocation.
    attachLoadBalancers OceanAttachLoadBalancer[]
    Attach load balancers to the cluster.
    autoscaler OceanAutoscaler
    Describes the Ocean Kubernetes Auto Scaler.
    blacklists string[]
    blockDeviceMappings OceanBlockDeviceMapping[]
    Object. Array list of block devices that are exposed to the instance, specify either virtual devices and EBS volumes.
    clusterOrientations OceanClusterOrientation[]
    controllerId string
    A unique identifier used for connecting the Ocean SaaS platform and the Kubernetes cluster. Typically, the cluster name is used as its identifier.
    desiredCapacity number
    The number of instances to launch and maintain in the cluster.
    detachLoadBalancers OceanDetachLoadBalancer[]
    Detach load balancers from the cluster.
    drainingTimeout number
    The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.
    ebsOptimized boolean
    Enable EBS optimized for cluster. Flag will enable optimized capacity for high bandwidth connectivity to the EB service for non EBS optimized instance types. For instances that are EBS optimized this flag will be ignored.
    fallbackToOndemand boolean
    If not Spot instance markets are available, enable Ocean to launch On-Demand instances instead.
    filters OceanFilters
    gracePeriod number
    The amount of time, in seconds, after the instance has launched to start checking its health.
    healthCheckUnhealthyDurationBeforeReplacement number
    The amount of time, in seconds, an existing instance should remain active after becoming unhealthy. After the set time out the instance will be replaced. The minimum value allowed is 60, and it must be a multiple of 60.
    iamInstanceProfile string
    The instance profile iam role.
    instanceMetadataOptions OceanInstanceMetadataOptions
    Ocean instance metadata options object for IMDSv2.
    keyName string
    The key pair to attach the instances.
    loadBalancers OceanLoadBalancer[]
    Array of load balancer objects to add to ocean cluster
    logging OceanLogging
    Logging configuration.
    maxSize number
    The upper limit of instances the cluster can scale up to.
    minSize number
    The lower limit of instances the cluster can scale down to.
    monitoring boolean
    Enable detailed monitoring for cluster. Flag will enable Cloud Watch detailed monitoring (one minute increments). Note: there are additional hourly costs for this service based on the region used.
    name string
    The cluster name.
    region string
    The region the cluster will run in.
    resourceTagSpecifications OceanResourceTagSpecification[]
    Specify which resources should be tagged with Virtual Node Group tags or Ocean tags. If tags are set on the VNG, the resources will be tagged with the VNG tags; otherwise, they will be tagged with the Ocean tags.
    rootVolumeSize number
    The size (in Gb) to allocate for the root volume. Minimum 20.
    scheduledTasks OceanScheduledTask[]
    Set scheduling object.
    spotPercentage number
    The desired percentage of Spot instances out of all running instances. Only available when the field is not set in any VNG directly (launchSpec.strategy.spotPercentage).
    spreadNodesBy string
    Ocean will spread the nodes across markets by this value. Possible values: vcpu or count.
    tags OceanTag[]
    Optionally adds tags to instances launched in an Ocean cluster.
    updatePolicy OceanUpdatePolicy
    useAsTemplateOnly boolean
    launch specification defined on the Ocean object will function only as a template for virtual node groups. When set to true, on Ocean resource creation please make sure your custom VNG has an initial_nodes parameter to create nodes for your VNG.
    userData string
    Base64-encoded MIME user data to make available to the instances.
    utilizeCommitments boolean
    If savings plans exist, Ocean will utilize them before launching Spot instances.
    utilizeReservedInstances boolean
    If Reserved instances exist, Ocean will utilize them before launching Spot instances.
    whitelists string[]
    image_id str
    ID of the image used to launch the instances.
    security_groups Sequence[str]
    One or more security group ids.
    subnet_ids Sequence[str]
    A comma-separated list of subnet identifiers for the Ocean cluster. Subnet IDs should be configured with auto assign public IP.

    • instanceTypes - (Optional) The type of instances that may or may not be a part of the Ocean cluster.
    associate_ipv6_address bool
    Configure IPv6 address allocation.
    associate_public_ip_address bool
    Configure public IP address allocation.
    attach_load_balancers Sequence[OceanAttachLoadBalancerArgs]
    Attach load balancers to the cluster.
    autoscaler OceanAutoscalerArgs
    Describes the Ocean Kubernetes Auto Scaler.
    blacklists Sequence[str]
    block_device_mappings Sequence[OceanBlockDeviceMappingArgs]
    Object. Array list of block devices that are exposed to the instance, specify either virtual devices and EBS volumes.
    cluster_orientations Sequence[OceanClusterOrientationArgs]
    controller_id str
    A unique identifier used for connecting the Ocean SaaS platform and the Kubernetes cluster. Typically, the cluster name is used as its identifier.
    desired_capacity int
    The number of instances to launch and maintain in the cluster.
    detach_load_balancers Sequence[OceanDetachLoadBalancerArgs]
    Detach load balancers from the cluster.
    draining_timeout int
    The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.
    ebs_optimized bool
    Enable EBS optimized for cluster. Flag will enable optimized capacity for high bandwidth connectivity to the EB service for non EBS optimized instance types. For instances that are EBS optimized this flag will be ignored.
    fallback_to_ondemand bool
    If not Spot instance markets are available, enable Ocean to launch On-Demand instances instead.
    filters OceanFiltersArgs
    grace_period int
    The amount of time, in seconds, after the instance has launched to start checking its health.
    health_check_unhealthy_duration_before_replacement int
    The amount of time, in seconds, an existing instance should remain active after becoming unhealthy. After the set time out the instance will be replaced. The minimum value allowed is 60, and it must be a multiple of 60.
    iam_instance_profile str
    The instance profile iam role.
    instance_metadata_options OceanInstanceMetadataOptionsArgs
    Ocean instance metadata options object for IMDSv2.
    key_name str
    The key pair to attach the instances.
    load_balancers Sequence[OceanLoadBalancerArgs]
    Array of load balancer objects to add to ocean cluster
    logging OceanLoggingArgs
    Logging configuration.
    max_size int
    The upper limit of instances the cluster can scale up to.
    min_size int
    The lower limit of instances the cluster can scale down to.
    monitoring bool
    Enable detailed monitoring for cluster. Flag will enable Cloud Watch detailed monitoring (one minute increments). Note: there are additional hourly costs for this service based on the region used.
    name str
    The cluster name.
    region str
    The region the cluster will run in.
    resource_tag_specifications Sequence[OceanResourceTagSpecificationArgs]
    Specify which resources should be tagged with Virtual Node Group tags or Ocean tags. If tags are set on the VNG, the resources will be tagged with the VNG tags; otherwise, they will be tagged with the Ocean tags.
    root_volume_size int
    The size (in Gb) to allocate for the root volume. Minimum 20.
    scheduled_tasks Sequence[OceanScheduledTaskArgs]
    Set scheduling object.
    spot_percentage int
    The desired percentage of Spot instances out of all running instances. Only available when the field is not set in any VNG directly (launchSpec.strategy.spotPercentage).
    spread_nodes_by str
    Ocean will spread the nodes across markets by this value. Possible values: vcpu or count.
    tags Sequence[OceanTagArgs]
    Optionally adds tags to instances launched in an Ocean cluster.
    update_policy OceanUpdatePolicyArgs
    use_as_template_only bool
    launch specification defined on the Ocean object will function only as a template for virtual node groups. When set to true, on Ocean resource creation please make sure your custom VNG has an initial_nodes parameter to create nodes for your VNG.
    user_data str
    Base64-encoded MIME user data to make available to the instances.
    utilize_commitments bool
    If savings plans exist, Ocean will utilize them before launching Spot instances.
    utilize_reserved_instances bool
    If Reserved instances exist, Ocean will utilize them before launching Spot instances.
    whitelists Sequence[str]
    imageId String
    ID of the image used to launch the instances.
    securityGroups List<String>
    One or more security group ids.
    subnetIds List<String>
    A comma-separated list of subnet identifiers for the Ocean cluster. Subnet IDs should be configured with auto assign public IP.

    • instanceTypes - (Optional) The type of instances that may or may not be a part of the Ocean cluster.
    associateIpv6Address Boolean
    Configure IPv6 address allocation.
    associatePublicIpAddress Boolean
    Configure public IP address allocation.
    attachLoadBalancers List<Property Map>
    Attach load balancers to the cluster.
    autoscaler Property Map
    Describes the Ocean Kubernetes Auto Scaler.
    blacklists List<String>
    blockDeviceMappings List<Property Map>
    Object. Array list of block devices that are exposed to the instance, specify either virtual devices and EBS volumes.
    clusterOrientations List<Property Map>
    controllerId String
    A unique identifier used for connecting the Ocean SaaS platform and the Kubernetes cluster. Typically, the cluster name is used as its identifier.
    desiredCapacity Number
    The number of instances to launch and maintain in the cluster.
    detachLoadBalancers List<Property Map>
    Detach load balancers from the cluster.
    drainingTimeout Number
    The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.
    ebsOptimized Boolean
    Enable EBS optimized for cluster. Flag will enable optimized capacity for high bandwidth connectivity to the EB service for non EBS optimized instance types. For instances that are EBS optimized this flag will be ignored.
    fallbackToOndemand Boolean
    If not Spot instance markets are available, enable Ocean to launch On-Demand instances instead.
    filters Property Map
    gracePeriod Number
    The amount of time, in seconds, after the instance has launched to start checking its health.
    healthCheckUnhealthyDurationBeforeReplacement Number
    The amount of time, in seconds, an existing instance should remain active after becoming unhealthy. After the set time out the instance will be replaced. The minimum value allowed is 60, and it must be a multiple of 60.
    iamInstanceProfile String
    The instance profile iam role.
    instanceMetadataOptions Property Map
    Ocean instance metadata options object for IMDSv2.
    keyName String
    The key pair to attach the instances.
    loadBalancers List<Property Map>
    Array of load balancer objects to add to ocean cluster
    logging Property Map
    Logging configuration.
    maxSize Number
    The upper limit of instances the cluster can scale up to.
    minSize Number
    The lower limit of instances the cluster can scale down to.
    monitoring Boolean
    Enable detailed monitoring for cluster. Flag will enable Cloud Watch detailed monitoring (one minute increments). Note: there are additional hourly costs for this service based on the region used.
    name String
    The cluster name.
    region String
    The region the cluster will run in.
    resourceTagSpecifications List<Property Map>
    Specify which resources should be tagged with Virtual Node Group tags or Ocean tags. If tags are set on the VNG, the resources will be tagged with the VNG tags; otherwise, they will be tagged with the Ocean tags.
    rootVolumeSize Number
    The size (in Gb) to allocate for the root volume. Minimum 20.
    scheduledTasks List<Property Map>
    Set scheduling object.
    spotPercentage Number
    The desired percentage of Spot instances out of all running instances. Only available when the field is not set in any VNG directly (launchSpec.strategy.spotPercentage).
    spreadNodesBy String
    Ocean will spread the nodes across markets by this value. Possible values: vcpu or count.
    tags List<Property Map>
    Optionally adds tags to instances launched in an Ocean cluster.
    updatePolicy Property Map
    useAsTemplateOnly Boolean
    launch specification defined on the Ocean object will function only as a template for virtual node groups. When set to true, on Ocean resource creation please make sure your custom VNG has an initial_nodes parameter to create nodes for your VNG.
    userData String
    Base64-encoded MIME user data to make available to the instances.
    utilizeCommitments Boolean
    If savings plans exist, Ocean will utilize them before launching Spot instances.
    utilizeReservedInstances Boolean
    If Reserved instances exist, Ocean will utilize them before launching Spot instances.
    whitelists List<String>

    Outputs

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

    Id string
    The provider-assigned unique ID for this managed resource.
    Id string
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.
    id string
    The provider-assigned unique ID for this managed resource.
    id str
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.

    Look up Existing Ocean Resource

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

    public static get(name: string, id: Input<ID>, state?: OceanState, opts?: CustomResourceOptions): Ocean
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            associate_ipv6_address: Optional[bool] = None,
            associate_public_ip_address: Optional[bool] = None,
            attach_load_balancers: Optional[Sequence[OceanAttachLoadBalancerArgs]] = None,
            autoscaler: Optional[OceanAutoscalerArgs] = None,
            blacklists: Optional[Sequence[str]] = None,
            block_device_mappings: Optional[Sequence[OceanBlockDeviceMappingArgs]] = None,
            cluster_orientations: Optional[Sequence[OceanClusterOrientationArgs]] = None,
            controller_id: Optional[str] = None,
            desired_capacity: Optional[int] = None,
            detach_load_balancers: Optional[Sequence[OceanDetachLoadBalancerArgs]] = None,
            draining_timeout: Optional[int] = None,
            ebs_optimized: Optional[bool] = None,
            fallback_to_ondemand: Optional[bool] = None,
            filters: Optional[OceanFiltersArgs] = None,
            grace_period: Optional[int] = None,
            health_check_unhealthy_duration_before_replacement: Optional[int] = None,
            iam_instance_profile: Optional[str] = None,
            image_id: Optional[str] = None,
            instance_metadata_options: Optional[OceanInstanceMetadataOptionsArgs] = None,
            key_name: Optional[str] = None,
            load_balancers: Optional[Sequence[OceanLoadBalancerArgs]] = None,
            logging: Optional[OceanLoggingArgs] = None,
            max_size: Optional[int] = None,
            min_size: Optional[int] = None,
            monitoring: Optional[bool] = None,
            name: Optional[str] = None,
            region: Optional[str] = None,
            resource_tag_specifications: Optional[Sequence[OceanResourceTagSpecificationArgs]] = None,
            root_volume_size: Optional[int] = None,
            scheduled_tasks: Optional[Sequence[OceanScheduledTaskArgs]] = None,
            security_groups: Optional[Sequence[str]] = None,
            spot_percentage: Optional[int] = None,
            spread_nodes_by: Optional[str] = None,
            subnet_ids: Optional[Sequence[str]] = None,
            tags: Optional[Sequence[OceanTagArgs]] = None,
            update_policy: Optional[OceanUpdatePolicyArgs] = None,
            use_as_template_only: Optional[bool] = None,
            user_data: Optional[str] = None,
            utilize_commitments: Optional[bool] = None,
            utilize_reserved_instances: Optional[bool] = None,
            whitelists: Optional[Sequence[str]] = None) -> Ocean
    func GetOcean(ctx *Context, name string, id IDInput, state *OceanState, opts ...ResourceOption) (*Ocean, error)
    public static Ocean Get(string name, Input<string> id, OceanState? state, CustomResourceOptions? opts = null)
    public static Ocean get(String name, Output<String> id, OceanState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    AssociateIpv6Address bool
    Configure IPv6 address allocation.
    AssociatePublicIpAddress bool
    Configure public IP address allocation.
    AttachLoadBalancers List<Pulumi.SpotInst.Aws.Inputs.OceanAttachLoadBalancer>
    Attach load balancers to the cluster.
    Autoscaler Pulumi.SpotInst.Aws.Inputs.OceanAutoscaler
    Describes the Ocean Kubernetes Auto Scaler.
    Blacklists List<string>
    BlockDeviceMappings List<Pulumi.SpotInst.Aws.Inputs.OceanBlockDeviceMapping>
    Object. Array list of block devices that are exposed to the instance, specify either virtual devices and EBS volumes.
    ClusterOrientations List<Pulumi.SpotInst.Aws.Inputs.OceanClusterOrientation>
    ControllerId string
    A unique identifier used for connecting the Ocean SaaS platform and the Kubernetes cluster. Typically, the cluster name is used as its identifier.
    DesiredCapacity int
    The number of instances to launch and maintain in the cluster.
    DetachLoadBalancers List<Pulumi.SpotInst.Aws.Inputs.OceanDetachLoadBalancer>
    Detach load balancers from the cluster.
    DrainingTimeout int
    The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.
    EbsOptimized bool
    Enable EBS optimized for cluster. Flag will enable optimized capacity for high bandwidth connectivity to the EB service for non EBS optimized instance types. For instances that are EBS optimized this flag will be ignored.
    FallbackToOndemand bool
    If not Spot instance markets are available, enable Ocean to launch On-Demand instances instead.
    Filters Pulumi.SpotInst.Aws.Inputs.OceanFilters
    GracePeriod int
    The amount of time, in seconds, after the instance has launched to start checking its health.
    HealthCheckUnhealthyDurationBeforeReplacement int
    The amount of time, in seconds, an existing instance should remain active after becoming unhealthy. After the set time out the instance will be replaced. The minimum value allowed is 60, and it must be a multiple of 60.
    IamInstanceProfile string
    The instance profile iam role.
    ImageId string
    ID of the image used to launch the instances.
    InstanceMetadataOptions Pulumi.SpotInst.Aws.Inputs.OceanInstanceMetadataOptions
    Ocean instance metadata options object for IMDSv2.
    KeyName string
    The key pair to attach the instances.
    LoadBalancers List<Pulumi.SpotInst.Aws.Inputs.OceanLoadBalancer>
    Array of load balancer objects to add to ocean cluster
    Logging Pulumi.SpotInst.Aws.Inputs.OceanLogging
    Logging configuration.
    MaxSize int
    The upper limit of instances the cluster can scale up to.
    MinSize int
    The lower limit of instances the cluster can scale down to.
    Monitoring bool
    Enable detailed monitoring for cluster. Flag will enable Cloud Watch detailed monitoring (one minute increments). Note: there are additional hourly costs for this service based on the region used.
    Name string
    The cluster name.
    Region string
    The region the cluster will run in.
    ResourceTagSpecifications List<Pulumi.SpotInst.Aws.Inputs.OceanResourceTagSpecification>
    Specify which resources should be tagged with Virtual Node Group tags or Ocean tags. If tags are set on the VNG, the resources will be tagged with the VNG tags; otherwise, they will be tagged with the Ocean tags.
    RootVolumeSize int
    The size (in Gb) to allocate for the root volume. Minimum 20.
    ScheduledTasks List<Pulumi.SpotInst.Aws.Inputs.OceanScheduledTask>
    Set scheduling object.
    SecurityGroups List<string>
    One or more security group ids.
    SpotPercentage int
    The desired percentage of Spot instances out of all running instances. Only available when the field is not set in any VNG directly (launchSpec.strategy.spotPercentage).
    SpreadNodesBy string
    Ocean will spread the nodes across markets by this value. Possible values: vcpu or count.
    SubnetIds List<string>
    A comma-separated list of subnet identifiers for the Ocean cluster. Subnet IDs should be configured with auto assign public IP.

    • instanceTypes - (Optional) The type of instances that may or may not be a part of the Ocean cluster.
    Tags List<Pulumi.SpotInst.Aws.Inputs.OceanTag>
    Optionally adds tags to instances launched in an Ocean cluster.
    UpdatePolicy Pulumi.SpotInst.Aws.Inputs.OceanUpdatePolicy
    UseAsTemplateOnly bool
    launch specification defined on the Ocean object will function only as a template for virtual node groups. When set to true, on Ocean resource creation please make sure your custom VNG has an initial_nodes parameter to create nodes for your VNG.
    UserData string
    Base64-encoded MIME user data to make available to the instances.
    UtilizeCommitments bool
    If savings plans exist, Ocean will utilize them before launching Spot instances.
    UtilizeReservedInstances bool
    If Reserved instances exist, Ocean will utilize them before launching Spot instances.
    Whitelists List<string>
    AssociateIpv6Address bool
    Configure IPv6 address allocation.
    AssociatePublicIpAddress bool
    Configure public IP address allocation.
    AttachLoadBalancers []OceanAttachLoadBalancerArgs
    Attach load balancers to the cluster.
    Autoscaler OceanAutoscalerArgs
    Describes the Ocean Kubernetes Auto Scaler.
    Blacklists []string
    BlockDeviceMappings []OceanBlockDeviceMappingArgs
    Object. Array list of block devices that are exposed to the instance, specify either virtual devices and EBS volumes.
    ClusterOrientations []OceanClusterOrientationArgs
    ControllerId string
    A unique identifier used for connecting the Ocean SaaS platform and the Kubernetes cluster. Typically, the cluster name is used as its identifier.
    DesiredCapacity int
    The number of instances to launch and maintain in the cluster.
    DetachLoadBalancers []OceanDetachLoadBalancerArgs
    Detach load balancers from the cluster.
    DrainingTimeout int
    The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.
    EbsOptimized bool
    Enable EBS optimized for cluster. Flag will enable optimized capacity for high bandwidth connectivity to the EB service for non EBS optimized instance types. For instances that are EBS optimized this flag will be ignored.
    FallbackToOndemand bool
    If not Spot instance markets are available, enable Ocean to launch On-Demand instances instead.
    Filters OceanFiltersArgs
    GracePeriod int
    The amount of time, in seconds, after the instance has launched to start checking its health.
    HealthCheckUnhealthyDurationBeforeReplacement int
    The amount of time, in seconds, an existing instance should remain active after becoming unhealthy. After the set time out the instance will be replaced. The minimum value allowed is 60, and it must be a multiple of 60.
    IamInstanceProfile string
    The instance profile iam role.
    ImageId string
    ID of the image used to launch the instances.
    InstanceMetadataOptions OceanInstanceMetadataOptionsArgs
    Ocean instance metadata options object for IMDSv2.
    KeyName string
    The key pair to attach the instances.
    LoadBalancers []OceanLoadBalancerArgs
    Array of load balancer objects to add to ocean cluster
    Logging OceanLoggingArgs
    Logging configuration.
    MaxSize int
    The upper limit of instances the cluster can scale up to.
    MinSize int
    The lower limit of instances the cluster can scale down to.
    Monitoring bool
    Enable detailed monitoring for cluster. Flag will enable Cloud Watch detailed monitoring (one minute increments). Note: there are additional hourly costs for this service based on the region used.
    Name string
    The cluster name.
    Region string
    The region the cluster will run in.
    ResourceTagSpecifications []OceanResourceTagSpecificationArgs
    Specify which resources should be tagged with Virtual Node Group tags or Ocean tags. If tags are set on the VNG, the resources will be tagged with the VNG tags; otherwise, they will be tagged with the Ocean tags.
    RootVolumeSize int
    The size (in Gb) to allocate for the root volume. Minimum 20.
    ScheduledTasks []OceanScheduledTaskArgs
    Set scheduling object.
    SecurityGroups []string
    One or more security group ids.
    SpotPercentage int
    The desired percentage of Spot instances out of all running instances. Only available when the field is not set in any VNG directly (launchSpec.strategy.spotPercentage).
    SpreadNodesBy string
    Ocean will spread the nodes across markets by this value. Possible values: vcpu or count.
    SubnetIds []string
    A comma-separated list of subnet identifiers for the Ocean cluster. Subnet IDs should be configured with auto assign public IP.

    • instanceTypes - (Optional) The type of instances that may or may not be a part of the Ocean cluster.
    Tags []OceanTagArgs
    Optionally adds tags to instances launched in an Ocean cluster.
    UpdatePolicy OceanUpdatePolicyArgs
    UseAsTemplateOnly bool
    launch specification defined on the Ocean object will function only as a template for virtual node groups. When set to true, on Ocean resource creation please make sure your custom VNG has an initial_nodes parameter to create nodes for your VNG.
    UserData string
    Base64-encoded MIME user data to make available to the instances.
    UtilizeCommitments bool
    If savings plans exist, Ocean will utilize them before launching Spot instances.
    UtilizeReservedInstances bool
    If Reserved instances exist, Ocean will utilize them before launching Spot instances.
    Whitelists []string
    associateIpv6Address Boolean
    Configure IPv6 address allocation.
    associatePublicIpAddress Boolean
    Configure public IP address allocation.
    attachLoadBalancers List<OceanAttachLoadBalancer>
    Attach load balancers to the cluster.
    autoscaler OceanAutoscaler
    Describes the Ocean Kubernetes Auto Scaler.
    blacklists List<String>
    blockDeviceMappings List<OceanBlockDeviceMapping>
    Object. Array list of block devices that are exposed to the instance, specify either virtual devices and EBS volumes.
    clusterOrientations List<OceanClusterOrientation>
    controllerId String
    A unique identifier used for connecting the Ocean SaaS platform and the Kubernetes cluster. Typically, the cluster name is used as its identifier.
    desiredCapacity Integer
    The number of instances to launch and maintain in the cluster.
    detachLoadBalancers List<OceanDetachLoadBalancer>
    Detach load balancers from the cluster.
    drainingTimeout Integer
    The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.
    ebsOptimized Boolean
    Enable EBS optimized for cluster. Flag will enable optimized capacity for high bandwidth connectivity to the EB service for non EBS optimized instance types. For instances that are EBS optimized this flag will be ignored.
    fallbackToOndemand Boolean
    If not Spot instance markets are available, enable Ocean to launch On-Demand instances instead.
    filters OceanFilters
    gracePeriod Integer
    The amount of time, in seconds, after the instance has launched to start checking its health.
    healthCheckUnhealthyDurationBeforeReplacement Integer
    The amount of time, in seconds, an existing instance should remain active after becoming unhealthy. After the set time out the instance will be replaced. The minimum value allowed is 60, and it must be a multiple of 60.
    iamInstanceProfile String
    The instance profile iam role.
    imageId String
    ID of the image used to launch the instances.
    instanceMetadataOptions OceanInstanceMetadataOptions
    Ocean instance metadata options object for IMDSv2.
    keyName String
    The key pair to attach the instances.
    loadBalancers List<OceanLoadBalancer>
    Array of load balancer objects to add to ocean cluster
    logging OceanLogging
    Logging configuration.
    maxSize Integer
    The upper limit of instances the cluster can scale up to.
    minSize Integer
    The lower limit of instances the cluster can scale down to.
    monitoring Boolean
    Enable detailed monitoring for cluster. Flag will enable Cloud Watch detailed monitoring (one minute increments). Note: there are additional hourly costs for this service based on the region used.
    name String
    The cluster name.
    region String
    The region the cluster will run in.
    resourceTagSpecifications List<OceanResourceTagSpecification>
    Specify which resources should be tagged with Virtual Node Group tags or Ocean tags. If tags are set on the VNG, the resources will be tagged with the VNG tags; otherwise, they will be tagged with the Ocean tags.
    rootVolumeSize Integer
    The size (in Gb) to allocate for the root volume. Minimum 20.
    scheduledTasks List<OceanScheduledTask>
    Set scheduling object.
    securityGroups List<String>
    One or more security group ids.
    spotPercentage Integer
    The desired percentage of Spot instances out of all running instances. Only available when the field is not set in any VNG directly (launchSpec.strategy.spotPercentage).
    spreadNodesBy String
    Ocean will spread the nodes across markets by this value. Possible values: vcpu or count.
    subnetIds List<String>
    A comma-separated list of subnet identifiers for the Ocean cluster. Subnet IDs should be configured with auto assign public IP.

    • instanceTypes - (Optional) The type of instances that may or may not be a part of the Ocean cluster.
    tags List<OceanTag>
    Optionally adds tags to instances launched in an Ocean cluster.
    updatePolicy OceanUpdatePolicy
    useAsTemplateOnly Boolean
    launch specification defined on the Ocean object will function only as a template for virtual node groups. When set to true, on Ocean resource creation please make sure your custom VNG has an initial_nodes parameter to create nodes for your VNG.
    userData String
    Base64-encoded MIME user data to make available to the instances.
    utilizeCommitments Boolean
    If savings plans exist, Ocean will utilize them before launching Spot instances.
    utilizeReservedInstances Boolean
    If Reserved instances exist, Ocean will utilize them before launching Spot instances.
    whitelists List<String>
    associateIpv6Address boolean
    Configure IPv6 address allocation.
    associatePublicIpAddress boolean
    Configure public IP address allocation.
    attachLoadBalancers OceanAttachLoadBalancer[]
    Attach load balancers to the cluster.
    autoscaler OceanAutoscaler
    Describes the Ocean Kubernetes Auto Scaler.
    blacklists string[]
    blockDeviceMappings OceanBlockDeviceMapping[]
    Object. Array list of block devices that are exposed to the instance, specify either virtual devices and EBS volumes.
    clusterOrientations OceanClusterOrientation[]
    controllerId string
    A unique identifier used for connecting the Ocean SaaS platform and the Kubernetes cluster. Typically, the cluster name is used as its identifier.
    desiredCapacity number
    The number of instances to launch and maintain in the cluster.
    detachLoadBalancers OceanDetachLoadBalancer[]
    Detach load balancers from the cluster.
    drainingTimeout number
    The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.
    ebsOptimized boolean
    Enable EBS optimized for cluster. Flag will enable optimized capacity for high bandwidth connectivity to the EB service for non EBS optimized instance types. For instances that are EBS optimized this flag will be ignored.
    fallbackToOndemand boolean
    If not Spot instance markets are available, enable Ocean to launch On-Demand instances instead.
    filters OceanFilters
    gracePeriod number
    The amount of time, in seconds, after the instance has launched to start checking its health.
    healthCheckUnhealthyDurationBeforeReplacement number
    The amount of time, in seconds, an existing instance should remain active after becoming unhealthy. After the set time out the instance will be replaced. The minimum value allowed is 60, and it must be a multiple of 60.
    iamInstanceProfile string
    The instance profile iam role.
    imageId string
    ID of the image used to launch the instances.
    instanceMetadataOptions OceanInstanceMetadataOptions
    Ocean instance metadata options object for IMDSv2.
    keyName string
    The key pair to attach the instances.
    loadBalancers OceanLoadBalancer[]
    Array of load balancer objects to add to ocean cluster
    logging OceanLogging
    Logging configuration.
    maxSize number
    The upper limit of instances the cluster can scale up to.
    minSize number
    The lower limit of instances the cluster can scale down to.
    monitoring boolean
    Enable detailed monitoring for cluster. Flag will enable Cloud Watch detailed monitoring (one minute increments). Note: there are additional hourly costs for this service based on the region used.
    name string
    The cluster name.
    region string
    The region the cluster will run in.
    resourceTagSpecifications OceanResourceTagSpecification[]
    Specify which resources should be tagged with Virtual Node Group tags or Ocean tags. If tags are set on the VNG, the resources will be tagged with the VNG tags; otherwise, they will be tagged with the Ocean tags.
    rootVolumeSize number
    The size (in Gb) to allocate for the root volume. Minimum 20.
    scheduledTasks OceanScheduledTask[]
    Set scheduling object.
    securityGroups string[]
    One or more security group ids.
    spotPercentage number
    The desired percentage of Spot instances out of all running instances. Only available when the field is not set in any VNG directly (launchSpec.strategy.spotPercentage).
    spreadNodesBy string
    Ocean will spread the nodes across markets by this value. Possible values: vcpu or count.
    subnetIds string[]
    A comma-separated list of subnet identifiers for the Ocean cluster. Subnet IDs should be configured with auto assign public IP.

    • instanceTypes - (Optional) The type of instances that may or may not be a part of the Ocean cluster.
    tags OceanTag[]
    Optionally adds tags to instances launched in an Ocean cluster.
    updatePolicy OceanUpdatePolicy
    useAsTemplateOnly boolean
    launch specification defined on the Ocean object will function only as a template for virtual node groups. When set to true, on Ocean resource creation please make sure your custom VNG has an initial_nodes parameter to create nodes for your VNG.
    userData string
    Base64-encoded MIME user data to make available to the instances.
    utilizeCommitments boolean
    If savings plans exist, Ocean will utilize them before launching Spot instances.
    utilizeReservedInstances boolean
    If Reserved instances exist, Ocean will utilize them before launching Spot instances.
    whitelists string[]
    associate_ipv6_address bool
    Configure IPv6 address allocation.
    associate_public_ip_address bool
    Configure public IP address allocation.
    attach_load_balancers Sequence[OceanAttachLoadBalancerArgs]
    Attach load balancers to the cluster.
    autoscaler OceanAutoscalerArgs
    Describes the Ocean Kubernetes Auto Scaler.
    blacklists Sequence[str]
    block_device_mappings Sequence[OceanBlockDeviceMappingArgs]
    Object. Array list of block devices that are exposed to the instance, specify either virtual devices and EBS volumes.
    cluster_orientations Sequence[OceanClusterOrientationArgs]
    controller_id str
    A unique identifier used for connecting the Ocean SaaS platform and the Kubernetes cluster. Typically, the cluster name is used as its identifier.
    desired_capacity int
    The number of instances to launch and maintain in the cluster.
    detach_load_balancers Sequence[OceanDetachLoadBalancerArgs]
    Detach load balancers from the cluster.
    draining_timeout int
    The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.
    ebs_optimized bool
    Enable EBS optimized for cluster. Flag will enable optimized capacity for high bandwidth connectivity to the EB service for non EBS optimized instance types. For instances that are EBS optimized this flag will be ignored.
    fallback_to_ondemand bool
    If not Spot instance markets are available, enable Ocean to launch On-Demand instances instead.
    filters OceanFiltersArgs
    grace_period int
    The amount of time, in seconds, after the instance has launched to start checking its health.
    health_check_unhealthy_duration_before_replacement int
    The amount of time, in seconds, an existing instance should remain active after becoming unhealthy. After the set time out the instance will be replaced. The minimum value allowed is 60, and it must be a multiple of 60.
    iam_instance_profile str
    The instance profile iam role.
    image_id str
    ID of the image used to launch the instances.
    instance_metadata_options OceanInstanceMetadataOptionsArgs
    Ocean instance metadata options object for IMDSv2.
    key_name str
    The key pair to attach the instances.
    load_balancers Sequence[OceanLoadBalancerArgs]
    Array of load balancer objects to add to ocean cluster
    logging OceanLoggingArgs
    Logging configuration.
    max_size int
    The upper limit of instances the cluster can scale up to.
    min_size int
    The lower limit of instances the cluster can scale down to.
    monitoring bool
    Enable detailed monitoring for cluster. Flag will enable Cloud Watch detailed monitoring (one minute increments). Note: there are additional hourly costs for this service based on the region used.
    name str
    The cluster name.
    region str
    The region the cluster will run in.
    resource_tag_specifications Sequence[OceanResourceTagSpecificationArgs]
    Specify which resources should be tagged with Virtual Node Group tags or Ocean tags. If tags are set on the VNG, the resources will be tagged with the VNG tags; otherwise, they will be tagged with the Ocean tags.
    root_volume_size int
    The size (in Gb) to allocate for the root volume. Minimum 20.
    scheduled_tasks Sequence[OceanScheduledTaskArgs]
    Set scheduling object.
    security_groups Sequence[str]
    One or more security group ids.
    spot_percentage int
    The desired percentage of Spot instances out of all running instances. Only available when the field is not set in any VNG directly (launchSpec.strategy.spotPercentage).
    spread_nodes_by str
    Ocean will spread the nodes across markets by this value. Possible values: vcpu or count.
    subnet_ids Sequence[str]
    A comma-separated list of subnet identifiers for the Ocean cluster. Subnet IDs should be configured with auto assign public IP.

    • instanceTypes - (Optional) The type of instances that may or may not be a part of the Ocean cluster.
    tags Sequence[OceanTagArgs]
    Optionally adds tags to instances launched in an Ocean cluster.
    update_policy OceanUpdatePolicyArgs
    use_as_template_only bool
    launch specification defined on the Ocean object will function only as a template for virtual node groups. When set to true, on Ocean resource creation please make sure your custom VNG has an initial_nodes parameter to create nodes for your VNG.
    user_data str
    Base64-encoded MIME user data to make available to the instances.
    utilize_commitments bool
    If savings plans exist, Ocean will utilize them before launching Spot instances.
    utilize_reserved_instances bool
    If Reserved instances exist, Ocean will utilize them before launching Spot instances.
    whitelists Sequence[str]
    associateIpv6Address Boolean
    Configure IPv6 address allocation.
    associatePublicIpAddress Boolean
    Configure public IP address allocation.
    attachLoadBalancers List<Property Map>
    Attach load balancers to the cluster.
    autoscaler Property Map
    Describes the Ocean Kubernetes Auto Scaler.
    blacklists List<String>
    blockDeviceMappings List<Property Map>
    Object. Array list of block devices that are exposed to the instance, specify either virtual devices and EBS volumes.
    clusterOrientations List<Property Map>
    controllerId String
    A unique identifier used for connecting the Ocean SaaS platform and the Kubernetes cluster. Typically, the cluster name is used as its identifier.
    desiredCapacity Number
    The number of instances to launch and maintain in the cluster.
    detachLoadBalancers List<Property Map>
    Detach load balancers from the cluster.
    drainingTimeout Number
    The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.
    ebsOptimized Boolean
    Enable EBS optimized for cluster. Flag will enable optimized capacity for high bandwidth connectivity to the EB service for non EBS optimized instance types. For instances that are EBS optimized this flag will be ignored.
    fallbackToOndemand Boolean
    If not Spot instance markets are available, enable Ocean to launch On-Demand instances instead.
    filters Property Map
    gracePeriod Number
    The amount of time, in seconds, after the instance has launched to start checking its health.
    healthCheckUnhealthyDurationBeforeReplacement Number
    The amount of time, in seconds, an existing instance should remain active after becoming unhealthy. After the set time out the instance will be replaced. The minimum value allowed is 60, and it must be a multiple of 60.
    iamInstanceProfile String
    The instance profile iam role.
    imageId String
    ID of the image used to launch the instances.
    instanceMetadataOptions Property Map
    Ocean instance metadata options object for IMDSv2.
    keyName String
    The key pair to attach the instances.
    loadBalancers List<Property Map>
    Array of load balancer objects to add to ocean cluster
    logging Property Map
    Logging configuration.
    maxSize Number
    The upper limit of instances the cluster can scale up to.
    minSize Number
    The lower limit of instances the cluster can scale down to.
    monitoring Boolean
    Enable detailed monitoring for cluster. Flag will enable Cloud Watch detailed monitoring (one minute increments). Note: there are additional hourly costs for this service based on the region used.
    name String
    The cluster name.
    region String
    The region the cluster will run in.
    resourceTagSpecifications List<Property Map>
    Specify which resources should be tagged with Virtual Node Group tags or Ocean tags. If tags are set on the VNG, the resources will be tagged with the VNG tags; otherwise, they will be tagged with the Ocean tags.
    rootVolumeSize Number
    The size (in Gb) to allocate for the root volume. Minimum 20.
    scheduledTasks List<Property Map>
    Set scheduling object.
    securityGroups List<String>
    One or more security group ids.
    spotPercentage Number
    The desired percentage of Spot instances out of all running instances. Only available when the field is not set in any VNG directly (launchSpec.strategy.spotPercentage).
    spreadNodesBy String
    Ocean will spread the nodes across markets by this value. Possible values: vcpu or count.
    subnetIds List<String>
    A comma-separated list of subnet identifiers for the Ocean cluster. Subnet IDs should be configured with auto assign public IP.

    • instanceTypes - (Optional) The type of instances that may or may not be a part of the Ocean cluster.
    tags List<Property Map>
    Optionally adds tags to instances launched in an Ocean cluster.
    updatePolicy Property Map
    useAsTemplateOnly Boolean
    launch specification defined on the Ocean object will function only as a template for virtual node groups. When set to true, on Ocean resource creation please make sure your custom VNG has an initial_nodes parameter to create nodes for your VNG.
    userData String
    Base64-encoded MIME user data to make available to the instances.
    utilizeCommitments Boolean
    If savings plans exist, Ocean will utilize them before launching Spot instances.
    utilizeReservedInstances Boolean
    If Reserved instances exist, Ocean will utilize them before launching Spot instances.
    whitelists List<String>

    Supporting Types

    OceanAttachLoadBalancer, OceanAttachLoadBalancerArgs

    Type string
    Type of load balancer to use.
    Arn string
    If type is "TARGET_GROUP" then an ARN is required. Otherwise is not allowed.
    Name string
    If type is "CLASSIC" then a name is required. Otherwise is not allowed.
    Type string
    Type of load balancer to use.
    Arn string
    If type is "TARGET_GROUP" then an ARN is required. Otherwise is not allowed.
    Name string
    If type is "CLASSIC" then a name is required. Otherwise is not allowed.
    type String
    Type of load balancer to use.
    arn String
    If type is "TARGET_GROUP" then an ARN is required. Otherwise is not allowed.
    name String
    If type is "CLASSIC" then a name is required. Otherwise is not allowed.
    type string
    Type of load balancer to use.
    arn string
    If type is "TARGET_GROUP" then an ARN is required. Otherwise is not allowed.
    name string
    If type is "CLASSIC" then a name is required. Otherwise is not allowed.
    type str
    Type of load balancer to use.
    arn str
    If type is "TARGET_GROUP" then an ARN is required. Otherwise is not allowed.
    name str
    If type is "CLASSIC" then a name is required. Otherwise is not allowed.
    type String
    Type of load balancer to use.
    arn String
    If type is "TARGET_GROUP" then an ARN is required. Otherwise is not allowed.
    name String
    If type is "CLASSIC" then a name is required. Otherwise is not allowed.

    OceanAutoscaler, OceanAutoscalerArgs

    AutoHeadroomPercentage int
    Set the auto headroom percentage (a number in the range [0, 200]) which controls the percentage of headroom from the cluster. Relevant only when autoscale_is_auto_config toggled on.
    AutoscaleCooldown int
    Cooldown period between scaling actions.
    AutoscaleDown Pulumi.SpotInst.Aws.Inputs.OceanAutoscalerAutoscaleDown
    Auto Scaling scale down operations.
    AutoscaleHeadroom Pulumi.SpotInst.Aws.Inputs.OceanAutoscalerAutoscaleHeadroom
    Spare resource capacity management enabling fast assignment of Pods without waiting for new resources to launch.
    AutoscaleIsAutoConfig bool
    Automatically configure and optimize headroom resources.
    AutoscaleIsEnabled bool
    Enable the Ocean Kubernetes Auto Scaler.
    EnableAutomaticAndManualHeadroom bool
    enables automatic and manual headroom to work in parallel. When set to false, automatic headroom overrides all other headroom definitions manually configured, whether they are at cluster or VNG level.
    ExtendedResourceDefinitions List<string>
    List of Ocean extended resource definitions to use in this cluster.
    ResourceLimits Pulumi.SpotInst.Aws.Inputs.OceanAutoscalerResourceLimits
    Optionally set upper and lower bounds on the resource usage of the cluster.
    AutoHeadroomPercentage int
    Set the auto headroom percentage (a number in the range [0, 200]) which controls the percentage of headroom from the cluster. Relevant only when autoscale_is_auto_config toggled on.
    AutoscaleCooldown int
    Cooldown period between scaling actions.
    AutoscaleDown OceanAutoscalerAutoscaleDown
    Auto Scaling scale down operations.
    AutoscaleHeadroom OceanAutoscalerAutoscaleHeadroom
    Spare resource capacity management enabling fast assignment of Pods without waiting for new resources to launch.
    AutoscaleIsAutoConfig bool
    Automatically configure and optimize headroom resources.
    AutoscaleIsEnabled bool
    Enable the Ocean Kubernetes Auto Scaler.
    EnableAutomaticAndManualHeadroom bool
    enables automatic and manual headroom to work in parallel. When set to false, automatic headroom overrides all other headroom definitions manually configured, whether they are at cluster or VNG level.
    ExtendedResourceDefinitions []string
    List of Ocean extended resource definitions to use in this cluster.
    ResourceLimits OceanAutoscalerResourceLimits
    Optionally set upper and lower bounds on the resource usage of the cluster.
    autoHeadroomPercentage Integer
    Set the auto headroom percentage (a number in the range [0, 200]) which controls the percentage of headroom from the cluster. Relevant only when autoscale_is_auto_config toggled on.
    autoscaleCooldown Integer
    Cooldown period between scaling actions.
    autoscaleDown OceanAutoscalerAutoscaleDown
    Auto Scaling scale down operations.
    autoscaleHeadroom OceanAutoscalerAutoscaleHeadroom
    Spare resource capacity management enabling fast assignment of Pods without waiting for new resources to launch.
    autoscaleIsAutoConfig Boolean
    Automatically configure and optimize headroom resources.
    autoscaleIsEnabled Boolean
    Enable the Ocean Kubernetes Auto Scaler.
    enableAutomaticAndManualHeadroom Boolean
    enables automatic and manual headroom to work in parallel. When set to false, automatic headroom overrides all other headroom definitions manually configured, whether they are at cluster or VNG level.
    extendedResourceDefinitions List<String>
    List of Ocean extended resource definitions to use in this cluster.
    resourceLimits OceanAutoscalerResourceLimits
    Optionally set upper and lower bounds on the resource usage of the cluster.
    autoHeadroomPercentage number
    Set the auto headroom percentage (a number in the range [0, 200]) which controls the percentage of headroom from the cluster. Relevant only when autoscale_is_auto_config toggled on.
    autoscaleCooldown number
    Cooldown period between scaling actions.
    autoscaleDown OceanAutoscalerAutoscaleDown
    Auto Scaling scale down operations.
    autoscaleHeadroom OceanAutoscalerAutoscaleHeadroom
    Spare resource capacity management enabling fast assignment of Pods without waiting for new resources to launch.
    autoscaleIsAutoConfig boolean
    Automatically configure and optimize headroom resources.
    autoscaleIsEnabled boolean
    Enable the Ocean Kubernetes Auto Scaler.
    enableAutomaticAndManualHeadroom boolean
    enables automatic and manual headroom to work in parallel. When set to false, automatic headroom overrides all other headroom definitions manually configured, whether they are at cluster or VNG level.
    extendedResourceDefinitions string[]
    List of Ocean extended resource definitions to use in this cluster.
    resourceLimits OceanAutoscalerResourceLimits
    Optionally set upper and lower bounds on the resource usage of the cluster.
    auto_headroom_percentage int
    Set the auto headroom percentage (a number in the range [0, 200]) which controls the percentage of headroom from the cluster. Relevant only when autoscale_is_auto_config toggled on.
    autoscale_cooldown int
    Cooldown period between scaling actions.
    autoscale_down OceanAutoscalerAutoscaleDown
    Auto Scaling scale down operations.
    autoscale_headroom OceanAutoscalerAutoscaleHeadroom
    Spare resource capacity management enabling fast assignment of Pods without waiting for new resources to launch.
    autoscale_is_auto_config bool
    Automatically configure and optimize headroom resources.
    autoscale_is_enabled bool
    Enable the Ocean Kubernetes Auto Scaler.
    enable_automatic_and_manual_headroom bool
    enables automatic and manual headroom to work in parallel. When set to false, automatic headroom overrides all other headroom definitions manually configured, whether they are at cluster or VNG level.
    extended_resource_definitions Sequence[str]
    List of Ocean extended resource definitions to use in this cluster.
    resource_limits OceanAutoscalerResourceLimits
    Optionally set upper and lower bounds on the resource usage of the cluster.
    autoHeadroomPercentage Number
    Set the auto headroom percentage (a number in the range [0, 200]) which controls the percentage of headroom from the cluster. Relevant only when autoscale_is_auto_config toggled on.
    autoscaleCooldown Number
    Cooldown period between scaling actions.
    autoscaleDown Property Map
    Auto Scaling scale down operations.
    autoscaleHeadroom Property Map
    Spare resource capacity management enabling fast assignment of Pods without waiting for new resources to launch.
    autoscaleIsAutoConfig Boolean
    Automatically configure and optimize headroom resources.
    autoscaleIsEnabled Boolean
    Enable the Ocean Kubernetes Auto Scaler.
    enableAutomaticAndManualHeadroom Boolean
    enables automatic and manual headroom to work in parallel. When set to false, automatic headroom overrides all other headroom definitions manually configured, whether they are at cluster or VNG level.
    extendedResourceDefinitions List<String>
    List of Ocean extended resource definitions to use in this cluster.
    resourceLimits Property Map
    Optionally set upper and lower bounds on the resource usage of the cluster.

    OceanAutoscalerAutoscaleDown, OceanAutoscalerAutoscaleDownArgs

    EvaluationPeriods int
    IsAggressiveScaleDownEnabled bool
    When set to 'true', the Aggressive Scale Down feature is enabled.
    MaxScaleDownPercentage double
    Would represent the maximum % to scale-down. Number between 1-100.
    EvaluationPeriods int
    IsAggressiveScaleDownEnabled bool
    When set to 'true', the Aggressive Scale Down feature is enabled.
    MaxScaleDownPercentage float64
    Would represent the maximum % to scale-down. Number between 1-100.
    evaluationPeriods Integer
    isAggressiveScaleDownEnabled Boolean
    When set to 'true', the Aggressive Scale Down feature is enabled.
    maxScaleDownPercentage Double
    Would represent the maximum % to scale-down. Number between 1-100.
    evaluationPeriods number
    isAggressiveScaleDownEnabled boolean
    When set to 'true', the Aggressive Scale Down feature is enabled.
    maxScaleDownPercentage number
    Would represent the maximum % to scale-down. Number between 1-100.
    evaluation_periods int
    is_aggressive_scale_down_enabled bool
    When set to 'true', the Aggressive Scale Down feature is enabled.
    max_scale_down_percentage float
    Would represent the maximum % to scale-down. Number between 1-100.
    evaluationPeriods Number
    isAggressiveScaleDownEnabled Boolean
    When set to 'true', the Aggressive Scale Down feature is enabled.
    maxScaleDownPercentage Number
    Would represent the maximum % to scale-down. Number between 1-100.

    OceanAutoscalerAutoscaleHeadroom, OceanAutoscalerAutoscaleHeadroomArgs

    CpuPerUnit int
    Optionally configure the number of CPUs to allocate the headroom. CPUs are denoted in millicores, where 1000 millicores = 1 vCPU.
    GpuPerUnit int
    Optionally configure the number of GPUs to allocate the headroom.
    MemoryPerUnit int
    Optionally configure the amount of memory (MB) to allocate the headroom.
    NumOfUnits int
    The number of units to retain as headroom, where each unit has the defined headroom CPU and memory.
    CpuPerUnit int
    Optionally configure the number of CPUs to allocate the headroom. CPUs are denoted in millicores, where 1000 millicores = 1 vCPU.
    GpuPerUnit int
    Optionally configure the number of GPUs to allocate the headroom.
    MemoryPerUnit int
    Optionally configure the amount of memory (MB) to allocate the headroom.
    NumOfUnits int
    The number of units to retain as headroom, where each unit has the defined headroom CPU and memory.
    cpuPerUnit Integer
    Optionally configure the number of CPUs to allocate the headroom. CPUs are denoted in millicores, where 1000 millicores = 1 vCPU.
    gpuPerUnit Integer
    Optionally configure the number of GPUs to allocate the headroom.
    memoryPerUnit Integer
    Optionally configure the amount of memory (MB) to allocate the headroom.
    numOfUnits Integer
    The number of units to retain as headroom, where each unit has the defined headroom CPU and memory.
    cpuPerUnit number
    Optionally configure the number of CPUs to allocate the headroom. CPUs are denoted in millicores, where 1000 millicores = 1 vCPU.
    gpuPerUnit number
    Optionally configure the number of GPUs to allocate the headroom.
    memoryPerUnit number
    Optionally configure the amount of memory (MB) to allocate the headroom.
    numOfUnits number
    The number of units to retain as headroom, where each unit has the defined headroom CPU and memory.
    cpu_per_unit int
    Optionally configure the number of CPUs to allocate the headroom. CPUs are denoted in millicores, where 1000 millicores = 1 vCPU.
    gpu_per_unit int
    Optionally configure the number of GPUs to allocate the headroom.
    memory_per_unit int
    Optionally configure the amount of memory (MB) to allocate the headroom.
    num_of_units int
    The number of units to retain as headroom, where each unit has the defined headroom CPU and memory.
    cpuPerUnit Number
    Optionally configure the number of CPUs to allocate the headroom. CPUs are denoted in millicores, where 1000 millicores = 1 vCPU.
    gpuPerUnit Number
    Optionally configure the number of GPUs to allocate the headroom.
    memoryPerUnit Number
    Optionally configure the amount of memory (MB) to allocate the headroom.
    numOfUnits Number
    The number of units to retain as headroom, where each unit has the defined headroom CPU and memory.

    OceanAutoscalerResourceLimits, OceanAutoscalerResourceLimitsArgs

    MaxMemoryGib int
    The maximum memory in GiB units that can be allocated to the cluster.
    MaxVcpu int
    The maximum cpu in vCPU units that can be allocated to the cluster.
    MaxMemoryGib int
    The maximum memory in GiB units that can be allocated to the cluster.
    MaxVcpu int
    The maximum cpu in vCPU units that can be allocated to the cluster.
    maxMemoryGib Integer
    The maximum memory in GiB units that can be allocated to the cluster.
    maxVcpu Integer
    The maximum cpu in vCPU units that can be allocated to the cluster.
    maxMemoryGib number
    The maximum memory in GiB units that can be allocated to the cluster.
    maxVcpu number
    The maximum cpu in vCPU units that can be allocated to the cluster.
    max_memory_gib int
    The maximum memory in GiB units that can be allocated to the cluster.
    max_vcpu int
    The maximum cpu in vCPU units that can be allocated to the cluster.
    maxMemoryGib Number
    The maximum memory in GiB units that can be allocated to the cluster.
    maxVcpu Number
    The maximum cpu in vCPU units that can be allocated to the cluster.

    OceanBlockDeviceMapping, OceanBlockDeviceMappingArgs

    DeviceName string
    String. Set device name. (Example: /dev/xvda).
    Ebs Pulumi.SpotInst.Aws.Inputs.OceanBlockDeviceMappingEbs
    Object. Set Elastic Block Store properties .
    DeviceName string
    String. Set device name. (Example: /dev/xvda).
    Ebs OceanBlockDeviceMappingEbs
    Object. Set Elastic Block Store properties .
    deviceName String
    String. Set device name. (Example: /dev/xvda).
    ebs OceanBlockDeviceMappingEbs
    Object. Set Elastic Block Store properties .
    deviceName string
    String. Set device name. (Example: /dev/xvda).
    ebs OceanBlockDeviceMappingEbs
    Object. Set Elastic Block Store properties .
    device_name str
    String. Set device name. (Example: /dev/xvda).
    ebs OceanBlockDeviceMappingEbs
    Object. Set Elastic Block Store properties .
    deviceName String
    String. Set device name. (Example: /dev/xvda).
    ebs Property Map
    Object. Set Elastic Block Store properties .

    OceanBlockDeviceMappingEbs, OceanBlockDeviceMappingEbsArgs

    DeleteOnTermination bool
    Boolean. Flag to delete the EBS on instance termination.
    DynamicIops Pulumi.SpotInst.Aws.Inputs.OceanBlockDeviceMappingEbsDynamicIops
    Set dynamic IOPS properties. When using this object, you cannot use the iops attribute. You must use one or the other.
    DynamicVolumeSize Pulumi.SpotInst.Aws.Inputs.OceanBlockDeviceMappingEbsDynamicVolumeSize
    Object. Set dynamic volume size properties. When using this object, you cannot use volumeSize. You must use one or the other.
    Encrypted bool
    Boolean. Enables EBS encryption on the volume.
    Iops int
    Must be greater than or equal to 0.
    KmsKeyId string
    String. Identifier (key ID, key alias, ID ARN, or alias ARN) for a customer managed CMK under which the EBS volume is encrypted.
    SnapshotId string
    (Optional) String. The Snapshot ID to mount by.
    Throughput int
    The amount of data transferred to or from a storage device per second, you can use this param just in a case that volume_type = gp3.
    VolumeSize int
    Int. The size, in GB of the volume.
    VolumeType string
    String. The type of the volume. (Example: gp2).
    DeleteOnTermination bool
    Boolean. Flag to delete the EBS on instance termination.
    DynamicIops OceanBlockDeviceMappingEbsDynamicIops
    Set dynamic IOPS properties. When using this object, you cannot use the iops attribute. You must use one or the other.
    DynamicVolumeSize OceanBlockDeviceMappingEbsDynamicVolumeSize
    Object. Set dynamic volume size properties. When using this object, you cannot use volumeSize. You must use one or the other.
    Encrypted bool
    Boolean. Enables EBS encryption on the volume.
    Iops int
    Must be greater than or equal to 0.
    KmsKeyId string
    String. Identifier (key ID, key alias, ID ARN, or alias ARN) for a customer managed CMK under which the EBS volume is encrypted.
    SnapshotId string
    (Optional) String. The Snapshot ID to mount by.
    Throughput int
    The amount of data transferred to or from a storage device per second, you can use this param just in a case that volume_type = gp3.
    VolumeSize int
    Int. The size, in GB of the volume.
    VolumeType string
    String. The type of the volume. (Example: gp2).
    deleteOnTermination Boolean
    Boolean. Flag to delete the EBS on instance termination.
    dynamicIops OceanBlockDeviceMappingEbsDynamicIops
    Set dynamic IOPS properties. When using this object, you cannot use the iops attribute. You must use one or the other.
    dynamicVolumeSize OceanBlockDeviceMappingEbsDynamicVolumeSize
    Object. Set dynamic volume size properties. When using this object, you cannot use volumeSize. You must use one or the other.
    encrypted Boolean
    Boolean. Enables EBS encryption on the volume.
    iops Integer
    Must be greater than or equal to 0.
    kmsKeyId String
    String. Identifier (key ID, key alias, ID ARN, or alias ARN) for a customer managed CMK under which the EBS volume is encrypted.
    snapshotId String
    (Optional) String. The Snapshot ID to mount by.
    throughput Integer
    The amount of data transferred to or from a storage device per second, you can use this param just in a case that volume_type = gp3.
    volumeSize Integer
    Int. The size, in GB of the volume.
    volumeType String
    String. The type of the volume. (Example: gp2).
    deleteOnTermination boolean
    Boolean. Flag to delete the EBS on instance termination.
    dynamicIops OceanBlockDeviceMappingEbsDynamicIops
    Set dynamic IOPS properties. When using this object, you cannot use the iops attribute. You must use one or the other.
    dynamicVolumeSize OceanBlockDeviceMappingEbsDynamicVolumeSize
    Object. Set dynamic volume size properties. When using this object, you cannot use volumeSize. You must use one or the other.
    encrypted boolean
    Boolean. Enables EBS encryption on the volume.
    iops number
    Must be greater than or equal to 0.
    kmsKeyId string
    String. Identifier (key ID, key alias, ID ARN, or alias ARN) for a customer managed CMK under which the EBS volume is encrypted.
    snapshotId string
    (Optional) String. The Snapshot ID to mount by.
    throughput number
    The amount of data transferred to or from a storage device per second, you can use this param just in a case that volume_type = gp3.
    volumeSize number
    Int. The size, in GB of the volume.
    volumeType string
    String. The type of the volume. (Example: gp2).
    delete_on_termination bool
    Boolean. Flag to delete the EBS on instance termination.
    dynamic_iops OceanBlockDeviceMappingEbsDynamicIops
    Set dynamic IOPS properties. When using this object, you cannot use the iops attribute. You must use one or the other.
    dynamic_volume_size OceanBlockDeviceMappingEbsDynamicVolumeSize
    Object. Set dynamic volume size properties. When using this object, you cannot use volumeSize. You must use one or the other.
    encrypted bool
    Boolean. Enables EBS encryption on the volume.
    iops int
    Must be greater than or equal to 0.
    kms_key_id str
    String. Identifier (key ID, key alias, ID ARN, or alias ARN) for a customer managed CMK under which the EBS volume is encrypted.
    snapshot_id str
    (Optional) String. The Snapshot ID to mount by.
    throughput int
    The amount of data transferred to or from a storage device per second, you can use this param just in a case that volume_type = gp3.
    volume_size int
    Int. The size, in GB of the volume.
    volume_type str
    String. The type of the volume. (Example: gp2).
    deleteOnTermination Boolean
    Boolean. Flag to delete the EBS on instance termination.
    dynamicIops Property Map
    Set dynamic IOPS properties. When using this object, you cannot use the iops attribute. You must use one or the other.
    dynamicVolumeSize Property Map
    Object. Set dynamic volume size properties. When using this object, you cannot use volumeSize. You must use one or the other.
    encrypted Boolean
    Boolean. Enables EBS encryption on the volume.
    iops Number
    Must be greater than or equal to 0.
    kmsKeyId String
    String. Identifier (key ID, key alias, ID ARN, or alias ARN) for a customer managed CMK under which the EBS volume is encrypted.
    snapshotId String
    (Optional) String. The Snapshot ID to mount by.
    throughput Number
    The amount of data transferred to or from a storage device per second, you can use this param just in a case that volume_type = gp3.
    volumeSize Number
    Int. The size, in GB of the volume.
    volumeType String
    String. The type of the volume. (Example: gp2).

    OceanBlockDeviceMappingEbsDynamicIops, OceanBlockDeviceMappingEbsDynamicIopsArgs

    BaseSize int
    Initial size for IOPS.
    Resource string
    SizePerResourceUnit int
    Additional size per resource unit (in IOPS). (Example: baseSize=50, sizePerResourceUnit=20, and an instance with 2 CPU is launched; its IOPS size will be: 90).
    BaseSize int
    Initial size for IOPS.
    Resource string
    SizePerResourceUnit int
    Additional size per resource unit (in IOPS). (Example: baseSize=50, sizePerResourceUnit=20, and an instance with 2 CPU is launched; its IOPS size will be: 90).
    baseSize Integer
    Initial size for IOPS.
    resource String
    sizePerResourceUnit Integer
    Additional size per resource unit (in IOPS). (Example: baseSize=50, sizePerResourceUnit=20, and an instance with 2 CPU is launched; its IOPS size will be: 90).
    baseSize number
    Initial size for IOPS.
    resource string
    sizePerResourceUnit number
    Additional size per resource unit (in IOPS). (Example: baseSize=50, sizePerResourceUnit=20, and an instance with 2 CPU is launched; its IOPS size will be: 90).
    base_size int
    Initial size for IOPS.
    resource str
    size_per_resource_unit int
    Additional size per resource unit (in IOPS). (Example: baseSize=50, sizePerResourceUnit=20, and an instance with 2 CPU is launched; its IOPS size will be: 90).
    baseSize Number
    Initial size for IOPS.
    resource String
    sizePerResourceUnit Number
    Additional size per resource unit (in IOPS). (Example: baseSize=50, sizePerResourceUnit=20, and an instance with 2 CPU is launched; its IOPS size will be: 90).

    OceanBlockDeviceMappingEbsDynamicVolumeSize, OceanBlockDeviceMappingEbsDynamicVolumeSizeArgs

    BaseSize int
    Int. Initial size for volume. (Example: 50)
    Resource string
    String. Resource type to increase volume size dynamically by. (Valid values: CPU)
    SizePerResourceUnit int
    Int. Additional size (in GB) per resource unit. (Example: baseSize=50, sizePerResourceUnit=20, and instance with 2 CPU is launched; its total disk size will be: 90GB).
    BaseSize int
    Int. Initial size for volume. (Example: 50)
    Resource string
    String. Resource type to increase volume size dynamically by. (Valid values: CPU)
    SizePerResourceUnit int
    Int. Additional size (in GB) per resource unit. (Example: baseSize=50, sizePerResourceUnit=20, and instance with 2 CPU is launched; its total disk size will be: 90GB).
    baseSize Integer
    Int. Initial size for volume. (Example: 50)
    resource String
    String. Resource type to increase volume size dynamically by. (Valid values: CPU)
    sizePerResourceUnit Integer
    Int. Additional size (in GB) per resource unit. (Example: baseSize=50, sizePerResourceUnit=20, and instance with 2 CPU is launched; its total disk size will be: 90GB).
    baseSize number
    Int. Initial size for volume. (Example: 50)
    resource string
    String. Resource type to increase volume size dynamically by. (Valid values: CPU)
    sizePerResourceUnit number
    Int. Additional size (in GB) per resource unit. (Example: 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_resource_unit int
    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).
    baseSize Number
    Int. Initial size for volume. (Example: 50)
    resource String
    String. Resource type to increase volume size dynamically by. (Valid values: CPU)
    sizePerResourceUnit Number
    Int. Additional size (in GB) per resource unit. (Example: baseSize=50, sizePerResourceUnit=20, and instance with 2 CPU is launched; its total disk size will be: 90GB).

    OceanClusterOrientation, OceanClusterOrientationArgs

    AvailabilityVsCost string
    You can control the approach that Ocean takes while launching nodes by configuring this value. Possible values: costOriented,balanced,cheapest.
    AvailabilityVsCost string
    You can control the approach that Ocean takes while launching nodes by configuring this value. Possible values: costOriented,balanced,cheapest.
    availabilityVsCost String
    You can control the approach that Ocean takes while launching nodes by configuring this value. Possible values: costOriented,balanced,cheapest.
    availabilityVsCost string
    You can control the approach that Ocean takes while launching nodes by configuring this value. Possible values: costOriented,balanced,cheapest.
    availability_vs_cost str
    You can control the approach that Ocean takes while launching nodes by configuring this value. Possible values: costOriented,balanced,cheapest.
    availabilityVsCost String
    You can control the approach that Ocean takes while launching nodes by configuring this value. Possible values: costOriented,balanced,cheapest.

    OceanDetachLoadBalancer, OceanDetachLoadBalancerArgs

    Type string
    Type of load balancer to use.
    Arn string
    If type is "TARGET_GROUP" then an ARN is required. Otherwise is not allowed.
    Name string
    If type is "CLASSIC" then a name is required. Otherwise is not allowed.
    Type string
    Type of load balancer to use.
    Arn string
    If type is "TARGET_GROUP" then an ARN is required. Otherwise is not allowed.
    Name string
    If type is "CLASSIC" then a name is required. Otherwise is not allowed.
    type String
    Type of load balancer to use.
    arn String
    If type is "TARGET_GROUP" then an ARN is required. Otherwise is not allowed.
    name String
    If type is "CLASSIC" then a name is required. Otherwise is not allowed.
    type string
    Type of load balancer to use.
    arn string
    If type is "TARGET_GROUP" then an ARN is required. Otherwise is not allowed.
    name string
    If type is "CLASSIC" then a name is required. Otherwise is not allowed.
    type str
    Type of load balancer to use.
    arn str
    If type is "TARGET_GROUP" then an ARN is required. Otherwise is not allowed.
    name str
    If type is "CLASSIC" then a name is required. Otherwise is not allowed.
    type String
    Type of load balancer to use.
    arn String
    If type is "TARGET_GROUP" then an ARN is required. Otherwise is not allowed.
    name String
    If type is "CLASSIC" then a name is required. Otherwise is not allowed.

    OceanFilters, OceanFiltersArgs

    Architectures List<string>
    The filtered instance types will support at least one of the architectures from this list.
    Categories List<string>
    The filtered instance types will belong to one of the categories types from this list.
    DiskTypes List<string>
    The filtered instance types will have one of the disk type from this list.
    ExcludeFamilies List<string>
    Types belonging to a family from the ExcludeFamilies will not be available for scaling (asterisk wildcard is also supported). For example, C* will exclude instance types from these families: c5, c4, c4a, etc.
    ExcludeMetal bool
    In case excludeMetal is set to true, metal types will not be available for scaling.
    Hypervisors List<string>
    The filtered instance types will have a hypervisor type from this list.
    IncludeFamilies List<string>
    Types belonging to a family from the IncludeFamilies will be available for scaling (asterisk wildcard is also supported). For example, C* will include instance types from these families: c5, c4, c4a, etc.
    IsEnaSupported string
    Ena is supported or not.
    MaxGpu int
    Maximum total number of GPUs.
    MaxMemoryGib double
    MaxNetworkPerformance int
    Maximum Bandwidth in Gib/s of network performance.
    MaxVcpu int
    MinEnis int
    Minimum number of network interfaces (ENIs).
    MinGpu int
    Minimum total number of GPUs.
    MinMemoryGib double
    Minimum amount of Memory (GiB).
    MinNetworkPerformance int
    Minimum Bandwidth in Gib/s of network performance.
    MinVcpu int
    Minimum number of vcpus available.
    RootDeviceTypes List<string>
    The filtered instance types will have a root device types from this list.
    VirtualizationTypes List<string>
    The filtered instance types will support at least one of the virtualization types from this list.
    Architectures []string
    The filtered instance types will support at least one of the architectures from this list.
    Categories []string
    The filtered instance types will belong to one of the categories types from this list.
    DiskTypes []string
    The filtered instance types will have one of the disk type from this list.
    ExcludeFamilies []string
    Types belonging to a family from the ExcludeFamilies will not be available for scaling (asterisk wildcard is also supported). For example, C* will exclude instance types from these families: c5, c4, c4a, etc.
    ExcludeMetal bool
    In case excludeMetal is set to true, metal types will not be available for scaling.
    Hypervisors []string
    The filtered instance types will have a hypervisor type from this list.
    IncludeFamilies []string
    Types belonging to a family from the IncludeFamilies will be available for scaling (asterisk wildcard is also supported). For example, C* will include instance types from these families: c5, c4, c4a, etc.
    IsEnaSupported string
    Ena is supported or not.
    MaxGpu int
    Maximum total number of GPUs.
    MaxMemoryGib float64
    MaxNetworkPerformance int
    Maximum Bandwidth in Gib/s of network performance.
    MaxVcpu int
    MinEnis int
    Minimum number of network interfaces (ENIs).
    MinGpu int
    Minimum total number of GPUs.
    MinMemoryGib float64
    Minimum amount of Memory (GiB).
    MinNetworkPerformance int
    Minimum Bandwidth in Gib/s of network performance.
    MinVcpu int
    Minimum number of vcpus available.
    RootDeviceTypes []string
    The filtered instance types will have a root device types from this list.
    VirtualizationTypes []string
    The filtered instance types will support at least one of the virtualization types from this list.
    architectures List<String>
    The filtered instance types will support at least one of the architectures from this list.
    categories List<String>
    The filtered instance types will belong to one of the categories types from this list.
    diskTypes List<String>
    The filtered instance types will have one of the disk type from this list.
    excludeFamilies List<String>
    Types belonging to a family from the ExcludeFamilies will not be available for scaling (asterisk wildcard is also supported). For example, C* will exclude instance types from these families: c5, c4, c4a, etc.
    excludeMetal Boolean
    In case excludeMetal is set to true, metal types will not be available for scaling.
    hypervisors List<String>
    The filtered instance types will have a hypervisor type from this list.
    includeFamilies List<String>
    Types belonging to a family from the IncludeFamilies will be available for scaling (asterisk wildcard is also supported). For example, C* will include instance types from these families: c5, c4, c4a, etc.
    isEnaSupported String
    Ena is supported or not.
    maxGpu Integer
    Maximum total number of GPUs.
    maxMemoryGib Double
    maxNetworkPerformance Integer
    Maximum Bandwidth in Gib/s of network performance.
    maxVcpu Integer
    minEnis Integer
    Minimum number of network interfaces (ENIs).
    minGpu Integer
    Minimum total number of GPUs.
    minMemoryGib Double
    Minimum amount of Memory (GiB).
    minNetworkPerformance Integer
    Minimum Bandwidth in Gib/s of network performance.
    minVcpu Integer
    Minimum number of vcpus available.
    rootDeviceTypes List<String>
    The filtered instance types will have a root device types from this list.
    virtualizationTypes List<String>
    The filtered instance types will support at least one of the virtualization types from this list.
    architectures string[]
    The filtered instance types will support at least one of the architectures from this list.
    categories string[]
    The filtered instance types will belong to one of the categories types from this list.
    diskTypes string[]
    The filtered instance types will have one of the disk type from this list.
    excludeFamilies string[]
    Types belonging to a family from the ExcludeFamilies will not be available for scaling (asterisk wildcard is also supported). For example, C* will exclude instance types from these families: c5, c4, c4a, etc.
    excludeMetal boolean
    In case excludeMetal is set to true, metal types will not be available for scaling.
    hypervisors string[]
    The filtered instance types will have a hypervisor type from this list.
    includeFamilies string[]
    Types belonging to a family from the IncludeFamilies will be available for scaling (asterisk wildcard is also supported). For example, C* will include instance types from these families: c5, c4, c4a, etc.
    isEnaSupported string
    Ena is supported or not.
    maxGpu number
    Maximum total number of GPUs.
    maxMemoryGib number
    maxNetworkPerformance number
    Maximum Bandwidth in Gib/s of network performance.
    maxVcpu number
    minEnis number
    Minimum number of network interfaces (ENIs).
    minGpu number
    Minimum total number of GPUs.
    minMemoryGib number
    Minimum amount of Memory (GiB).
    minNetworkPerformance number
    Minimum Bandwidth in Gib/s of network performance.
    minVcpu number
    Minimum number of vcpus available.
    rootDeviceTypes string[]
    The filtered instance types will have a root device types from this list.
    virtualizationTypes string[]
    The filtered instance types will support at least one of the virtualization types from this list.
    architectures Sequence[str]
    The filtered instance types will support at least one of the architectures from this list.
    categories Sequence[str]
    The filtered instance types will belong to one of the categories types from this list.
    disk_types Sequence[str]
    The filtered instance types will have one of the disk type from this list.
    exclude_families Sequence[str]
    Types belonging to a family from the ExcludeFamilies will not be available for scaling (asterisk wildcard is also supported). For example, C* will exclude instance types from these families: c5, c4, c4a, etc.
    exclude_metal bool
    In case excludeMetal is set to true, metal types will not be available for scaling.
    hypervisors Sequence[str]
    The filtered instance types will have a hypervisor type from this list.
    include_families Sequence[str]
    Types belonging to a family from the IncludeFamilies will be available for scaling (asterisk wildcard is also supported). For example, C* will include instance types from these families: c5, c4, c4a, etc.
    is_ena_supported str
    Ena is supported or not.
    max_gpu int
    Maximum total number of GPUs.
    max_memory_gib float
    max_network_performance int
    Maximum Bandwidth in Gib/s of network performance.
    max_vcpu int
    min_enis int
    Minimum number of network interfaces (ENIs).
    min_gpu int
    Minimum total number of GPUs.
    min_memory_gib float
    Minimum amount of Memory (GiB).
    min_network_performance int
    Minimum Bandwidth in Gib/s of network performance.
    min_vcpu int
    Minimum number of vcpus available.
    root_device_types Sequence[str]
    The filtered instance types will have a root device types from this list.
    virtualization_types Sequence[str]
    The filtered instance types will support at least one of the virtualization types from this list.
    architectures List<String>
    The filtered instance types will support at least one of the architectures from this list.
    categories List<String>
    The filtered instance types will belong to one of the categories types from this list.
    diskTypes List<String>
    The filtered instance types will have one of the disk type from this list.
    excludeFamilies List<String>
    Types belonging to a family from the ExcludeFamilies will not be available for scaling (asterisk wildcard is also supported). For example, C* will exclude instance types from these families: c5, c4, c4a, etc.
    excludeMetal Boolean
    In case excludeMetal is set to true, metal types will not be available for scaling.
    hypervisors List<String>
    The filtered instance types will have a hypervisor type from this list.
    includeFamilies List<String>
    Types belonging to a family from the IncludeFamilies will be available for scaling (asterisk wildcard is also supported). For example, C* will include instance types from these families: c5, c4, c4a, etc.
    isEnaSupported String
    Ena is supported or not.
    maxGpu Number
    Maximum total number of GPUs.
    maxMemoryGib Number
    maxNetworkPerformance Number
    Maximum Bandwidth in Gib/s of network performance.
    maxVcpu Number
    minEnis Number
    Minimum number of network interfaces (ENIs).
    minGpu Number
    Minimum total number of GPUs.
    minMemoryGib Number
    Minimum amount of Memory (GiB).
    minNetworkPerformance Number
    Minimum Bandwidth in Gib/s of network performance.
    minVcpu Number
    Minimum number of vcpus available.
    rootDeviceTypes List<String>
    The filtered instance types will have a root device types from this list.
    virtualizationTypes List<String>
    The filtered instance types will support at least one of the virtualization types from this list.

    OceanInstanceMetadataOptions, OceanInstanceMetadataOptionsArgs

    HttpTokens string
    Determines if a signed token is required or not. Valid values: optional or required.
    HttpPutResponseHopLimit int
    An integer from 1 through 64. The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further the instance metadata requests can travel.
    HttpTokens string
    Determines if a signed token is required or not. Valid values: optional or required.
    HttpPutResponseHopLimit int
    An integer from 1 through 64. The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further the instance metadata requests can travel.
    httpTokens String
    Determines if a signed token is required or not. Valid values: optional or required.
    httpPutResponseHopLimit Integer
    An integer from 1 through 64. The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further the instance metadata requests can travel.
    httpTokens string
    Determines if a signed token is required or not. Valid values: optional or required.
    httpPutResponseHopLimit number
    An integer from 1 through 64. The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further the instance metadata requests can travel.
    http_tokens str
    Determines if a signed token is required or not. Valid values: optional or required.
    http_put_response_hop_limit int
    An integer from 1 through 64. The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further the instance metadata requests can travel.
    httpTokens String
    Determines if a signed token is required or not. Valid values: optional or required.
    httpPutResponseHopLimit Number
    An integer from 1 through 64. The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further the instance metadata requests can travel.

    OceanLoadBalancer, OceanLoadBalancerArgs

    Arn string
    Required if type is set to TARGET_GROUP
    Name string
    Required if type is set to CLASSIC
    Type string
    Can be set to CLASSIC or TARGET_GROUP
    Arn string
    Required if type is set to TARGET_GROUP
    Name string
    Required if type is set to CLASSIC
    Type string
    Can be set to CLASSIC or TARGET_GROUP
    arn String
    Required if type is set to TARGET_GROUP
    name String
    Required if type is set to CLASSIC
    type String
    Can be set to CLASSIC or TARGET_GROUP
    arn string
    Required if type is set to TARGET_GROUP
    name string
    Required if type is set to CLASSIC
    type string
    Can be set to CLASSIC or TARGET_GROUP
    arn str
    Required if type is set to TARGET_GROUP
    name str
    Required if type is set to CLASSIC
    type str
    Can be set to CLASSIC or TARGET_GROUP
    arn String
    Required if type is set to TARGET_GROUP
    name String
    Required if type is set to CLASSIC
    type String
    Can be set to CLASSIC or TARGET_GROUP

    OceanLogging, OceanLoggingArgs

    Export OceanLoggingExport
    Logging Export configuration.
    export OceanLoggingExport
    Logging Export configuration.
    export OceanLoggingExport
    Logging Export configuration.
    export OceanLoggingExport
    Logging Export configuration.
    export Property Map
    Logging Export configuration.

    OceanLoggingExport, OceanLoggingExportArgs

    S3s List<Pulumi.SpotInst.Aws.Inputs.OceanLoggingExportS3>
    Exports your cluster's logs to the S3 bucket and subdir configured on the S3 data integration given.
    S3s []OceanLoggingExportS3
    Exports your cluster's logs to the S3 bucket and subdir configured on the S3 data integration given.
    s3s List<OceanLoggingExportS3>
    Exports your cluster's logs to the S3 bucket and subdir configured on the S3 data integration given.
    s3s OceanLoggingExportS3[]
    Exports your cluster's logs to the S3 bucket and subdir configured on the S3 data integration given.
    s3s Sequence[OceanLoggingExportS3]
    Exports your cluster's logs to the S3 bucket and subdir configured on the S3 data integration given.
    s3s List<Property Map>
    Exports your cluster's logs to the S3 bucket and subdir configured on the S3 data integration given.

    OceanLoggingExportS3, OceanLoggingExportS3Args

    Id string
    The identifier of The S3 data integration to export the logs to.
    Id string
    The identifier of The S3 data integration to export the logs to.
    id String
    The identifier of The S3 data integration to export the logs to.
    id string
    The identifier of The S3 data integration to export the logs to.
    id str
    The identifier of The S3 data integration to export the logs to.
    id String
    The identifier of The S3 data integration to export the logs to.

    OceanResourceTagSpecification, OceanResourceTagSpecificationArgs

    ShouldTagVolumes bool
    Specify if Volume resources will be tagged with Virtual Node Group tags or Ocean tags.
    ShouldTagVolumes bool
    Specify if Volume resources will be tagged with Virtual Node Group tags or Ocean tags.
    shouldTagVolumes Boolean
    Specify if Volume resources will be tagged with Virtual Node Group tags or Ocean tags.
    shouldTagVolumes boolean
    Specify if Volume resources will be tagged with Virtual Node Group tags or Ocean tags.
    should_tag_volumes bool
    Specify if Volume resources will be tagged with Virtual Node Group tags or Ocean tags.
    shouldTagVolumes Boolean
    Specify if Volume resources will be tagged with Virtual Node Group tags or Ocean tags.

    OceanScheduledTask, OceanScheduledTaskArgs

    ShutdownHours OceanScheduledTaskShutdownHours
    Set shutdown hours for cluster object.
    Tasks []OceanScheduledTaskTask
    The scheduling tasks for the cluster.
    shutdownHours OceanScheduledTaskShutdownHours
    Set shutdown hours for cluster object.
    tasks List<OceanScheduledTaskTask>
    The scheduling tasks for the cluster.
    shutdownHours OceanScheduledTaskShutdownHours
    Set shutdown hours for cluster object.
    tasks OceanScheduledTaskTask[]
    The scheduling tasks for the cluster.
    shutdown_hours OceanScheduledTaskShutdownHours
    Set shutdown hours for cluster object.
    tasks Sequence[OceanScheduledTaskTask]
    The scheduling tasks for the cluster.
    shutdownHours Property Map
    Set shutdown hours for cluster object.
    tasks List<Property Map>
    The scheduling tasks for the cluster.

    OceanScheduledTaskShutdownHours, OceanScheduledTaskShutdownHoursArgs

    TimeWindows List<string>
    Set time windows for shutdown hours. Specify a list of timeWindows with at least one time window Each string is in the format of: ddd:hh:mm-ddd:hh:mm where ddd = day of week = Sun | Mon | Tue | Wed | Thu | Fri | Sat, hh = hour 24 = 0 -23, mm = minute = 0 - 59. Time windows should not overlap. Required if cluster.scheduling.isEnabled is true. (Example: Fri:15:30-Wed:14:30).
    IsEnabled bool
    Toggle the shutdown hours task. (Example: true).
    TimeWindows []string
    Set time windows for shutdown hours. Specify a list of timeWindows with at least one time window Each string is in the format of: ddd:hh:mm-ddd:hh:mm where ddd = day of week = Sun | Mon | Tue | Wed | Thu | Fri | Sat, hh = hour 24 = 0 -23, mm = minute = 0 - 59. Time windows should not overlap. Required if cluster.scheduling.isEnabled is true. (Example: Fri:15:30-Wed:14:30).
    IsEnabled bool
    Toggle the shutdown hours task. (Example: true).
    timeWindows List<String>
    Set time windows for shutdown hours. Specify a list of timeWindows with at least one time window Each string is in the format of: ddd:hh:mm-ddd:hh:mm where ddd = day of week = Sun | Mon | Tue | Wed | Thu | Fri | Sat, hh = hour 24 = 0 -23, mm = minute = 0 - 59. Time windows should not overlap. Required if cluster.scheduling.isEnabled is true. (Example: Fri:15:30-Wed:14:30).
    isEnabled Boolean
    Toggle the shutdown hours task. (Example: true).
    timeWindows string[]
    Set time windows for shutdown hours. Specify a list of timeWindows with at least one time window Each string is in the format of: ddd:hh:mm-ddd:hh:mm where ddd = day of week = Sun | Mon | Tue | Wed | Thu | Fri | Sat, hh = hour 24 = 0 -23, mm = minute = 0 - 59. Time windows should not overlap. Required if cluster.scheduling.isEnabled is true. (Example: Fri:15:30-Wed:14:30).
    isEnabled boolean
    Toggle the shutdown hours task. (Example: true).
    time_windows Sequence[str]
    Set time windows for shutdown hours. Specify a list of timeWindows with at least one time window Each string is in the format of: ddd:hh:mm-ddd:hh:mm where ddd = day of week = Sun | Mon | Tue | Wed | Thu | Fri | Sat, hh = hour 24 = 0 -23, mm = minute = 0 - 59. Time windows should not overlap. Required if cluster.scheduling.isEnabled is true. (Example: Fri:15:30-Wed:14:30).
    is_enabled bool
    Toggle the shutdown hours task. (Example: true).
    timeWindows List<String>
    Set time windows for shutdown hours. Specify a list of timeWindows with at least one time window Each string is in the format of: ddd:hh:mm-ddd:hh:mm where ddd = day of week = Sun | Mon | Tue | Wed | Thu | Fri | Sat, hh = hour 24 = 0 -23, mm = minute = 0 - 59. Time windows should not overlap. Required if cluster.scheduling.isEnabled is true. (Example: Fri:15:30-Wed:14:30).
    isEnabled Boolean
    Toggle the shutdown hours task. (Example: true).

    OceanScheduledTaskTask, OceanScheduledTaskTaskArgs

    CronExpression string
    A valid cron expression. The cron is running in UTC time zone and is in Unix cron format Cron Expression Validator Script. Only one of frequency or cronExpression should be used at a time. Required for cluster.scheduling.tasks object. (Example: 0 1 * * *).
    IsEnabled bool
    Describes whether the task is enabled. When true the task should run when false it should not run. Required for cluster.scheduling.tasks object.
    TaskType string
    Valid values: clusterRoll amiAutoUpdate. Required for cluster.scheduling.tasks
    Parameters Pulumi.SpotInst.Aws.Inputs.OceanScheduledTaskTaskParameters
    This filed will be compatible to the task_type field. If task_type is defined as clusterRoll, user cluster roll object in parameters.
    CronExpression string
    A valid cron expression. The cron is running in UTC time zone and is in Unix cron format Cron Expression Validator Script. Only one of frequency or cronExpression should be used at a time. Required for cluster.scheduling.tasks object. (Example: 0 1 * * *).
    IsEnabled bool
    Describes whether the task is enabled. When true the task should run when false it should not run. Required for cluster.scheduling.tasks object.
    TaskType string
    Valid values: clusterRoll amiAutoUpdate. Required for cluster.scheduling.tasks
    Parameters OceanScheduledTaskTaskParameters
    This filed will be compatible to the task_type field. If task_type is defined as clusterRoll, user cluster roll object in parameters.
    cronExpression String
    A valid cron expression. The cron is running in UTC time zone and is in Unix cron format Cron Expression Validator Script. Only one of frequency or cronExpression should be used at a time. Required for cluster.scheduling.tasks object. (Example: 0 1 * * *).
    isEnabled Boolean
    Describes whether the task is enabled. When true the task should run when false it should not run. Required for cluster.scheduling.tasks object.
    taskType String
    Valid values: clusterRoll amiAutoUpdate. Required for cluster.scheduling.tasks
    parameters OceanScheduledTaskTaskParameters
    This filed will be compatible to the task_type field. If task_type is defined as clusterRoll, user cluster roll object in parameters.
    cronExpression string
    A valid cron expression. The cron is running in UTC time zone and is in Unix cron format Cron Expression Validator Script. Only one of frequency or cronExpression should be used at a time. Required for cluster.scheduling.tasks object. (Example: 0 1 * * *).
    isEnabled boolean
    Describes whether the task is enabled. When true the task should run when false it should not run. Required for cluster.scheduling.tasks object.
    taskType string
    Valid values: clusterRoll amiAutoUpdate. Required for cluster.scheduling.tasks
    parameters OceanScheduledTaskTaskParameters
    This filed will be compatible to the task_type field. If task_type is defined as clusterRoll, user cluster roll object in parameters.
    cron_expression str
    A valid cron expression. The cron is running in UTC time zone and is in Unix cron format Cron Expression Validator Script. Only one of frequency or cronExpression should be used at a time. Required for cluster.scheduling.tasks object. (Example: 0 1 * * *).
    is_enabled bool
    Describes whether the task is enabled. When true the task should run when false it should not run. Required for cluster.scheduling.tasks object.
    task_type str
    Valid values: clusterRoll amiAutoUpdate. Required for cluster.scheduling.tasks
    parameters OceanScheduledTaskTaskParameters
    This filed will be compatible to the task_type field. If task_type is defined as clusterRoll, user cluster roll object in parameters.
    cronExpression String
    A valid cron expression. The cron is running in UTC time zone and is in Unix cron format Cron Expression Validator Script. Only one of frequency or cronExpression should be used at a time. Required for cluster.scheduling.tasks object. (Example: 0 1 * * *).
    isEnabled Boolean
    Describes whether the task is enabled. When true the task should run when false it should not run. Required for cluster.scheduling.tasks object.
    taskType String
    Valid values: clusterRoll amiAutoUpdate. Required for cluster.scheduling.tasks
    parameters Property Map
    This filed will be compatible to the task_type field. If task_type is defined as clusterRoll, user cluster roll object in parameters.

    OceanScheduledTaskTaskParameters, OceanScheduledTaskTaskParametersArgs

    amiAutoUpdate Property Map
    Set amiAutoUpdate object
    parametersClusterRoll Property Map
    Set clusterRoll object

    OceanScheduledTaskTaskParametersAmiAutoUpdate, OceanScheduledTaskTaskParametersAmiAutoUpdateArgs

    AmiAutoUpdateClusterRoll Pulumi.SpotInst.Aws.Inputs.OceanScheduledTaskTaskParametersAmiAutoUpdateAmiAutoUpdateClusterRoll
    Set clusterRoll object
    ApplyRoll bool
    When the AMI is updated according to the configuration set, a cluster roll can be triggered
    MinorVersion bool
    When set to 'true', the auto-update process will update the VNGs’ AMI with the AMI to match the Kubernetes control plane version. either "patch" or "minor_version" must be true.
    Patch bool
    When set to 'true', the auto-update process will update the VNGs’ images with the latest security patches. either "patch" or "minorVersion" must be true.
    AmiAutoUpdateClusterRoll OceanScheduledTaskTaskParametersAmiAutoUpdateAmiAutoUpdateClusterRoll
    Set clusterRoll object
    ApplyRoll bool
    When the AMI is updated according to the configuration set, a cluster roll can be triggered
    MinorVersion bool
    When set to 'true', the auto-update process will update the VNGs’ AMI with the AMI to match the Kubernetes control plane version. either "patch" or "minor_version" must be true.
    Patch bool
    When set to 'true', the auto-update process will update the VNGs’ images with the latest security patches. either "patch" or "minorVersion" must be true.
    amiAutoUpdateClusterRoll OceanScheduledTaskTaskParametersAmiAutoUpdateAmiAutoUpdateClusterRoll
    Set clusterRoll object
    applyRoll Boolean
    When the AMI is updated according to the configuration set, a cluster roll can be triggered
    minorVersion Boolean
    When set to 'true', the auto-update process will update the VNGs’ AMI with the AMI to match the Kubernetes control plane version. either "patch" or "minor_version" must be true.
    patch Boolean
    When set to 'true', the auto-update process will update the VNGs’ images with the latest security patches. either "patch" or "minorVersion" must be true.
    amiAutoUpdateClusterRoll OceanScheduledTaskTaskParametersAmiAutoUpdateAmiAutoUpdateClusterRoll
    Set clusterRoll object
    applyRoll boolean
    When the AMI is updated according to the configuration set, a cluster roll can be triggered
    minorVersion boolean
    When set to 'true', the auto-update process will update the VNGs’ AMI with the AMI to match the Kubernetes control plane version. either "patch" or "minor_version" must be true.
    patch boolean
    When set to 'true', the auto-update process will update the VNGs’ images with the latest security patches. either "patch" or "minorVersion" must be true.
    ami_auto_update_cluster_roll OceanScheduledTaskTaskParametersAmiAutoUpdateAmiAutoUpdateClusterRoll
    Set clusterRoll object
    apply_roll bool
    When the AMI is updated according to the configuration set, a cluster roll can be triggered
    minor_version bool
    When set to 'true', the auto-update process will update the VNGs’ AMI with the AMI to match the Kubernetes control plane version. either "patch" or "minor_version" must be true.
    patch bool
    When set to 'true', the auto-update process will update the VNGs’ images with the latest security patches. either "patch" or "minorVersion" must be true.
    amiAutoUpdateClusterRoll Property Map
    Set clusterRoll object
    applyRoll Boolean
    When the AMI is updated according to the configuration set, a cluster roll can be triggered
    minorVersion Boolean
    When set to 'true', the auto-update process will update the VNGs’ AMI with the AMI to match the Kubernetes control plane version. either "patch" or "minor_version" must be true.
    patch Boolean
    When set to 'true', the auto-update process will update the VNGs’ images with the latest security patches. either "patch" or "minorVersion" must be true.

    OceanScheduledTaskTaskParametersAmiAutoUpdateAmiAutoUpdateClusterRoll, OceanScheduledTaskTaskParametersAmiAutoUpdateAmiAutoUpdateClusterRollArgs

    BatchMinHealthyPercentage int
    Indicates the threshold of minimum healthy instances in single batch. If the amount of healthy instances in single batch is under the threshold, the cluster roll will fail. If exists, the parameter value will be in range of 1-100. In case of null as value, the default value in the backend will be 50%. Value of param should represent the number in percentage (%) of the batch.
    BatchSizePercentage int
    Value as a percent to set the size of a batch in a roll. Valid values are 0-100.
    Comment string
    Add a comment description for the roll. The comment is limited to 256 chars
    RespectPdb bool
    During the roll, if the parameter is set to true we honor PDB during the instance replacement.
    BatchMinHealthyPercentage int
    Indicates the threshold of minimum healthy instances in single batch. If the amount of healthy instances in single batch is under the threshold, the cluster roll will fail. If exists, the parameter value will be in range of 1-100. In case of null as value, the default value in the backend will be 50%. Value of param should represent the number in percentage (%) of the batch.
    BatchSizePercentage int
    Value as a percent to set the size of a batch in a roll. Valid values are 0-100.
    Comment string
    Add a comment description for the roll. The comment is limited to 256 chars
    RespectPdb bool
    During the roll, if the parameter is set to true we honor PDB during the instance replacement.
    batchMinHealthyPercentage Integer
    Indicates the threshold of minimum healthy instances in single batch. If the amount of healthy instances in single batch is under the threshold, the cluster roll will fail. If exists, the parameter value will be in range of 1-100. In case of null as value, the default value in the backend will be 50%. Value of param should represent the number in percentage (%) of the batch.
    batchSizePercentage Integer
    Value as a percent to set the size of a batch in a roll. Valid values are 0-100.
    comment String
    Add a comment description for the roll. The comment is limited to 256 chars
    respectPdb Boolean
    During the roll, if the parameter is set to true we honor PDB during the instance replacement.
    batchMinHealthyPercentage number
    Indicates the threshold of minimum healthy instances in single batch. If the amount of healthy instances in single batch is under the threshold, the cluster roll will fail. If exists, the parameter value will be in range of 1-100. In case of null as value, the default value in the backend will be 50%. Value of param should represent the number in percentage (%) of the batch.
    batchSizePercentage number
    Value as a percent to set the size of a batch in a roll. Valid values are 0-100.
    comment string
    Add a comment description for the roll. The comment is limited to 256 chars
    respectPdb boolean
    During the roll, if the parameter is set to true we honor PDB during the instance replacement.
    batch_min_healthy_percentage int
    Indicates the threshold of minimum healthy instances in single batch. If the amount of healthy instances in single batch is under the threshold, the cluster roll will fail. If exists, the parameter value will be in range of 1-100. In case of null as value, the default value in the backend will be 50%. Value of param should represent the number in percentage (%) of the batch.
    batch_size_percentage int
    Value as a percent to set the size of a batch in a roll. Valid values are 0-100.
    comment str
    Add a comment description for the roll. The comment is limited to 256 chars
    respect_pdb bool
    During the roll, if the parameter is set to true we honor PDB during the instance replacement.
    batchMinHealthyPercentage Number
    Indicates the threshold of minimum healthy instances in single batch. If the amount of healthy instances in single batch is under the threshold, the cluster roll will fail. If exists, the parameter value will be in range of 1-100. In case of null as value, the default value in the backend will be 50%. Value of param should represent the number in percentage (%) of the batch.
    batchSizePercentage Number
    Value as a percent to set the size of a batch in a roll. Valid values are 0-100.
    comment String
    Add a comment description for the roll. The comment is limited to 256 chars
    respectPdb Boolean
    During the roll, if the parameter is set to true we honor PDB during the instance replacement.

    OceanScheduledTaskTaskParametersParametersClusterRoll, OceanScheduledTaskTaskParametersParametersClusterRollArgs

    BatchMinHealthyPercentage int
    Indicates the threshold of minimum healthy instances in single batch. If the amount of healthy instances in single batch is under the threshold, the cluster roll will fail. If exists, the parameter value will be in range of 1-100. In case of null as value, the default value in the backend will be 50%. Value of param should represent the number in percentage (%) of the batch.
    BatchSizePercentage int
    Value as a percent to set the size of a batch in a roll. Valid values are 0-100.
    Comment string
    Add a comment description for the roll. The comment is limited to 256 chars
    RespectPdb bool
    During the roll, if the parameter is set to true we honor PDB during the instance replacement.
    BatchMinHealthyPercentage int
    Indicates the threshold of minimum healthy instances in single batch. If the amount of healthy instances in single batch is under the threshold, the cluster roll will fail. If exists, the parameter value will be in range of 1-100. In case of null as value, the default value in the backend will be 50%. Value of param should represent the number in percentage (%) of the batch.
    BatchSizePercentage int
    Value as a percent to set the size of a batch in a roll. Valid values are 0-100.
    Comment string
    Add a comment description for the roll. The comment is limited to 256 chars
    RespectPdb bool
    During the roll, if the parameter is set to true we honor PDB during the instance replacement.
    batchMinHealthyPercentage Integer
    Indicates the threshold of minimum healthy instances in single batch. If the amount of healthy instances in single batch is under the threshold, the cluster roll will fail. If exists, the parameter value will be in range of 1-100. In case of null as value, the default value in the backend will be 50%. Value of param should represent the number in percentage (%) of the batch.
    batchSizePercentage Integer
    Value as a percent to set the size of a batch in a roll. Valid values are 0-100.
    comment String
    Add a comment description for the roll. The comment is limited to 256 chars
    respectPdb Boolean
    During the roll, if the parameter is set to true we honor PDB during the instance replacement.
    batchMinHealthyPercentage number
    Indicates the threshold of minimum healthy instances in single batch. If the amount of healthy instances in single batch is under the threshold, the cluster roll will fail. If exists, the parameter value will be in range of 1-100. In case of null as value, the default value in the backend will be 50%. Value of param should represent the number in percentage (%) of the batch.
    batchSizePercentage number
    Value as a percent to set the size of a batch in a roll. Valid values are 0-100.
    comment string
    Add a comment description for the roll. The comment is limited to 256 chars
    respectPdb boolean
    During the roll, if the parameter is set to true we honor PDB during the instance replacement.
    batch_min_healthy_percentage int
    Indicates the threshold of minimum healthy instances in single batch. If the amount of healthy instances in single batch is under the threshold, the cluster roll will fail. If exists, the parameter value will be in range of 1-100. In case of null as value, the default value in the backend will be 50%. Value of param should represent the number in percentage (%) of the batch.
    batch_size_percentage int
    Value as a percent to set the size of a batch in a roll. Valid values are 0-100.
    comment str
    Add a comment description for the roll. The comment is limited to 256 chars
    respect_pdb bool
    During the roll, if the parameter is set to true we honor PDB during the instance replacement.
    batchMinHealthyPercentage Number
    Indicates the threshold of minimum healthy instances in single batch. If the amount of healthy instances in single batch is under the threshold, the cluster roll will fail. If exists, the parameter value will be in range of 1-100. In case of null as value, the default value in the backend will be 50%. Value of param should represent the number in percentage (%) of the batch.
    batchSizePercentage Number
    Value as a percent to set the size of a batch in a roll. Valid values are 0-100.
    comment String
    Add a comment description for the roll. The comment is limited to 256 chars
    respectPdb Boolean
    During the roll, if the parameter is set to true we honor PDB during the instance replacement.

    OceanTag, OceanTagArgs

    Key string
    The tag key.
    Value string
    The tag value.
    Key string
    The tag key.
    Value string
    The tag value.
    key String
    The tag key.
    value String
    The tag value.
    key string
    The tag key.
    value string
    The tag value.
    key str
    The tag key.
    value str
    The tag value.
    key String
    The tag key.
    value String
    The tag value.

    OceanUpdatePolicy, OceanUpdatePolicyArgs

    ShouldRoll bool
    Enables the roll.
    AutoApplyTags bool
    will update instance tags on the fly without rolling the cluster.
    ConditionedRoll bool
    Spot will perform a cluster Roll in accordance with a relevant modification of the cluster’s settings. When set to true , only specific changes in the cluster’s configuration will trigger a cluster roll (such as AMI, Key Pair, user data, instance types, load balancers, etc).
    ConditionedRollParams List<string>
    A custom list of attributes will trigger the cluster roll operation (overrides the predefined list of parameters). Valid only when the conditioned_roll parameter is set to true. (Valid values: "subnet_ids","whitelist","blacklist","user_data","image_id","security_groups","key_name","iam_instance_profile","associate_public_ip_address","load_balancers","instance_metadata_options","ebs_optimized","root_volume_size")
    RollConfig Pulumi.SpotInst.Aws.Inputs.OceanUpdatePolicyRollConfig
    While used, you can control whether the group should perform a deployment after an update to the configuration.
    ShouldRoll bool
    Enables the roll.
    AutoApplyTags bool
    will update instance tags on the fly without rolling the cluster.
    ConditionedRoll bool
    Spot will perform a cluster Roll in accordance with a relevant modification of the cluster’s settings. When set to true , only specific changes in the cluster’s configuration will trigger a cluster roll (such as AMI, Key Pair, user data, instance types, load balancers, etc).
    ConditionedRollParams []string
    A custom list of attributes will trigger the cluster roll operation (overrides the predefined list of parameters). Valid only when the conditioned_roll parameter is set to true. (Valid values: "subnet_ids","whitelist","blacklist","user_data","image_id","security_groups","key_name","iam_instance_profile","associate_public_ip_address","load_balancers","instance_metadata_options","ebs_optimized","root_volume_size")
    RollConfig OceanUpdatePolicyRollConfig
    While used, you can control whether the group should perform a deployment after an update to the configuration.
    shouldRoll Boolean
    Enables the roll.
    autoApplyTags Boolean
    will update instance tags on the fly without rolling the cluster.
    conditionedRoll Boolean
    Spot will perform a cluster Roll in accordance with a relevant modification of the cluster’s settings. When set to true , only specific changes in the cluster’s configuration will trigger a cluster roll (such as AMI, Key Pair, user data, instance types, load balancers, etc).
    conditionedRollParams List<String>
    A custom list of attributes will trigger the cluster roll operation (overrides the predefined list of parameters). Valid only when the conditioned_roll parameter is set to true. (Valid values: "subnet_ids","whitelist","blacklist","user_data","image_id","security_groups","key_name","iam_instance_profile","associate_public_ip_address","load_balancers","instance_metadata_options","ebs_optimized","root_volume_size")
    rollConfig OceanUpdatePolicyRollConfig
    While used, you can control whether the group should perform a deployment after an update to the configuration.
    shouldRoll boolean
    Enables the roll.
    autoApplyTags boolean
    will update instance tags on the fly without rolling the cluster.
    conditionedRoll boolean
    Spot will perform a cluster Roll in accordance with a relevant modification of the cluster’s settings. When set to true , only specific changes in the cluster’s configuration will trigger a cluster roll (such as AMI, Key Pair, user data, instance types, load balancers, etc).
    conditionedRollParams string[]
    A custom list of attributes will trigger the cluster roll operation (overrides the predefined list of parameters). Valid only when the conditioned_roll parameter is set to true. (Valid values: "subnet_ids","whitelist","blacklist","user_data","image_id","security_groups","key_name","iam_instance_profile","associate_public_ip_address","load_balancers","instance_metadata_options","ebs_optimized","root_volume_size")
    rollConfig OceanUpdatePolicyRollConfig
    While used, you can control whether the group should perform a deployment after an update to the configuration.
    should_roll bool
    Enables the roll.
    auto_apply_tags bool
    will update instance tags on the fly without rolling the cluster.
    conditioned_roll bool
    Spot will perform a cluster Roll in accordance with a relevant modification of the cluster’s settings. When set to true , only specific changes in the cluster’s configuration will trigger a cluster roll (such as AMI, Key Pair, user data, instance types, load balancers, etc).
    conditioned_roll_params Sequence[str]
    A custom list of attributes will trigger the cluster roll operation (overrides the predefined list of parameters). Valid only when the conditioned_roll parameter is set to true. (Valid values: "subnet_ids","whitelist","blacklist","user_data","image_id","security_groups","key_name","iam_instance_profile","associate_public_ip_address","load_balancers","instance_metadata_options","ebs_optimized","root_volume_size")
    roll_config OceanUpdatePolicyRollConfig
    While used, you can control whether the group should perform a deployment after an update to the configuration.
    shouldRoll Boolean
    Enables the roll.
    autoApplyTags Boolean
    will update instance tags on the fly without rolling the cluster.
    conditionedRoll Boolean
    Spot will perform a cluster Roll in accordance with a relevant modification of the cluster’s settings. When set to true , only specific changes in the cluster’s configuration will trigger a cluster roll (such as AMI, Key Pair, user data, instance types, load balancers, etc).
    conditionedRollParams List<String>
    A custom list of attributes will trigger the cluster roll operation (overrides the predefined list of parameters). Valid only when the conditioned_roll parameter is set to true. (Valid values: "subnet_ids","whitelist","blacklist","user_data","image_id","security_groups","key_name","iam_instance_profile","associate_public_ip_address","load_balancers","instance_metadata_options","ebs_optimized","root_volume_size")
    rollConfig Property Map
    While used, you can control whether the group should perform a deployment after an update to the configuration.

    OceanUpdatePolicyRollConfig, OceanUpdatePolicyRollConfigArgs

    BatchSizePercentage int
    Sets the percentage of the instances to deploy in each batch.
    BatchMinHealthyPercentage int
    Default: 50. Indicates the threshold of minimum healthy instances in single batch. If the amount of healthy instances in single batch is under the threshold, the cluster roll will fail. If exists, the parameter value will be in range of 1-100. In case of null as value, the default value in the backend will be 50%. Value of param should represent the number in percentage (%) of the batch.
    LaunchSpecIds List<string>
    List of virtual node group identifiers to be rolled.
    RespectPdb bool
    During the roll, if the parameter is set to true we honor PDB during the instance replacement.
    BatchSizePercentage int
    Sets the percentage of the instances to deploy in each batch.
    BatchMinHealthyPercentage int
    Default: 50. Indicates the threshold of minimum healthy instances in single batch. If the amount of healthy instances in single batch is under the threshold, the cluster roll will fail. If exists, the parameter value will be in range of 1-100. In case of null as value, the default value in the backend will be 50%. Value of param should represent the number in percentage (%) of the batch.
    LaunchSpecIds []string
    List of virtual node group identifiers to be rolled.
    RespectPdb bool
    During the roll, if the parameter is set to true we honor PDB during the instance replacement.
    batchSizePercentage Integer
    Sets the percentage of the instances to deploy in each batch.
    batchMinHealthyPercentage Integer
    Default: 50. Indicates the threshold of minimum healthy instances in single batch. If the amount of healthy instances in single batch is under the threshold, the cluster roll will fail. If exists, the parameter value will be in range of 1-100. In case of null as value, the default value in the backend will be 50%. Value of param should represent the number in percentage (%) of the batch.
    launchSpecIds List<String>
    List of virtual node group identifiers to be rolled.
    respectPdb Boolean
    During the roll, if the parameter is set to true we honor PDB during the instance replacement.
    batchSizePercentage number
    Sets the percentage of the instances to deploy in each batch.
    batchMinHealthyPercentage number
    Default: 50. Indicates the threshold of minimum healthy instances in single batch. If the amount of healthy instances in single batch is under the threshold, the cluster roll will fail. If exists, the parameter value will be in range of 1-100. In case of null as value, the default value in the backend will be 50%. Value of param should represent the number in percentage (%) of the batch.
    launchSpecIds string[]
    List of virtual node group identifiers to be rolled.
    respectPdb boolean
    During the roll, if the parameter is set to true we honor PDB during the instance replacement.
    batch_size_percentage int
    Sets the percentage of the instances to deploy in each batch.
    batch_min_healthy_percentage int
    Default: 50. Indicates the threshold of minimum healthy instances in single batch. If the amount of healthy instances in single batch is under the threshold, the cluster roll will fail. If exists, the parameter value will be in range of 1-100. In case of null as value, the default value in the backend will be 50%. Value of param should represent the number in percentage (%) of the batch.
    launch_spec_ids Sequence[str]
    List of virtual node group identifiers to be rolled.
    respect_pdb bool
    During the roll, if the parameter is set to true we honor PDB during the instance replacement.
    batchSizePercentage Number
    Sets the percentage of the instances to deploy in each batch.
    batchMinHealthyPercentage Number
    Default: 50. Indicates the threshold of minimum healthy instances in single batch. If the amount of healthy instances in single batch is under the threshold, the cluster roll will fail. If exists, the parameter value will be in range of 1-100. In case of null as value, the default value in the backend will be 50%. Value of param should represent the number in percentage (%) of the batch.
    launchSpecIds List<String>
    List of virtual node group identifiers to be rolled.
    respectPdb Boolean
    During the roll, if the parameter is set to true we honor PDB during the instance replacement.

    Import

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

    hcl

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

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    Spotinst pulumi/pulumi-spotinst
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the spotinst Terraform Provider.
    spotinst logo
    Spotinst v3.100.0 published on Wednesday, Nov 20, 2024 by Pulumi