1. Packages
  2. Spotinst
  3. API Docs
  4. azure
  5. Ocean
Spotinst v3.59.1 published on Tuesday, Nov 21, 2023 by Pulumi

spotinst.azure.Ocean

Explore with Pulumi AI

spotinst logo
Spotinst v3.59.1 published on Tuesday, Nov 21, 2023 by Pulumi

    Manages a Spotinst Ocean AKS resource.

    This resource contains arguments (such as image and extension) that are automatically populated from the data reported by the Ocean AKS Connector deployed into your cluster. You can override the upstream configuration by defining the corresponding arguments.

    Prerequisites

    Installation of the Ocean controller is required by this resource. You can accomplish this by using the spotinst/ocean-controller module as follows:

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

    You must configure the same cluster_identifier and acd_identifier both for the Ocean controller and for the spotinst.azure.Ocean resource.

    Example Usage

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    
    return await Deployment.RunAsync(() => 
    {
        return new Dictionary<string, object?>
        {
            ["oceanId"] = spotinst_ocean_aks.Example.Id,
        };
    });
    
    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		ctx.Export("oceanId", spotinst_ocean_aks.Example.Id)
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.spotinst.azure.Ocean;
    import com.pulumi.spotinst.azure.OceanArgs;
    import com.pulumi.spotinst.azure.inputs.OceanAutoscalerArgs;
    import com.pulumi.spotinst.azure.inputs.OceanAutoscalerAutoscaleDownArgs;
    import com.pulumi.spotinst.azure.inputs.OceanAutoscalerAutoscaleHeadroomArgs;
    import com.pulumi.spotinst.azure.inputs.OceanAutoscalerAutoscaleHeadroomAutomaticArgs;
    import com.pulumi.spotinst.azure.inputs.OceanAutoscalerResourceLimitsArgs;
    import com.pulumi.spotinst.azure.inputs.OceanExtensionArgs;
    import com.pulumi.spotinst.azure.inputs.OceanHealthArgs;
    import com.pulumi.spotinst.azure.inputs.OceanImageArgs;
    import com.pulumi.spotinst.azure.inputs.OceanLoadBalancerArgs;
    import com.pulumi.spotinst.azure.inputs.OceanManagedServiceIdentityArgs;
    import com.pulumi.spotinst.azure.inputs.OceanNetworkArgs;
    import com.pulumi.spotinst.azure.inputs.OceanOsDiskArgs;
    import com.pulumi.spotinst.azure.inputs.OceanStrategyArgs;
    import com.pulumi.spotinst.azure.inputs.OceanTagArgs;
    import com.pulumi.spotinst.azure.inputs.OceanVmSizeArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var example = new Ocean("example", OceanArgs.builder()        
                .acdIdentifier("acd-12345678")
                .aksName("ocean-westus-dev-aks")
                .aksResourceGroupName("ocean-westus-dev")
                .autoscaler(OceanAutoscalerArgs.builder()
                    .autoscaleDown(OceanAutoscalerAutoscaleDownArgs.builder()
                        .maxScaleDownPercentage(10)
                        .build())
                    .autoscaleHeadroom(OceanAutoscalerAutoscaleHeadroomArgs.builder()
                        .automatic(OceanAutoscalerAutoscaleHeadroomAutomaticArgs.builder()
                            .isEnabled(true)
                            .percentage(10)
                            .build())
                        .build())
                    .autoscaleIsEnabled(true)
                    .resourceLimits(OceanAutoscalerResourceLimitsArgs.builder()
                        .maxMemoryGib(40)
                        .maxVcpu(1024)
                        .build())
                    .build())
                .controllerClusterId("ocean-westus-dev-aks")
                .customData("[... redacted ...]")
                .extensions(OceanExtensionArgs.builder()
                    .apiVersion("1.0")
                    .minorVersionAutoUpgrade(true)
                    .name("extension-name")
                    .publisher("Microsoft.Azure.Extensions")
                    .type("Linux")
                    .build())
                .health(OceanHealthArgs.builder()
                    .gracePeriod(10)
                    .build())
                .images(OceanImageArgs.builder()
                    .marketplaces(OceanImageMarketplaceArgs.builder()
                        .offer("UbuntuServer")
                        .publisher("Canonical")
                        .sku("18.04-LTS")
                        .version("latest")
                        .build())
                    .build())
                .loadBalancers(OceanLoadBalancerArgs.builder()
                    .backendPoolNames("terraform-backend-pool")
                    .loadBalancerSku("Standard")
                    .name("load-balancer-name")
                    .resourceGroupName("resource-group-name")
                    .type("loadBalancer")
                    .build())
                .managedServiceIdentities(OceanManagedServiceIdentityArgs.builder()
                    .name("ocean-westus-dev-aks-agentpool")
                    .resourceGroupName("MC_ocean-westus-dev_ocean-westus-dev-aks_westus")
                    .build())
                .maxPods(30)
                .network(OceanNetworkArgs.builder()
                    .networkInterfaces(OceanNetworkNetworkInterfaceArgs.builder()
                        .additionalIpConfig(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))
                        .assignPublicIp(false)
                        .isPrimary(false)
                        .subnetName("subnet-name")
                        .build())
                    .resourceGroupName("ocean-westus-dev")
                    .virtualNetworkName("vn-name")
                    .build())
                .osDisk(OceanOsDiskArgs.builder()
                    .sizeGb(130)
                    .type("Standard_LRS")
                    .build())
                .resourceGroupName("some-resource-group-name")
                .sshPublicKey("ssh-rsa [... redacted ...] generated-by-azure")
                .strategies(OceanStrategyArgs.builder()
                    .fallbackToOndemand(true)
                    .spotPercentage(40)
                    .build())
                .tags(OceanTagArgs.builder()
                    .key("Environment")
                    .value("Dev")
                    .build())
                .userName("some-name")
                .vmSizes(OceanVmSizeArgs.builder()
                    .whitelists("standard_ds2_v2")
                    .build())
                .zones(            
                    "1",
                    "2",
                    "3")
                .build());
    
        }
    }
    
    import pulumi
    
    pulumi.export("oceanId", spotinst_ocean_aks["example"]["id"])
    
    import * as pulumi from "@pulumi/pulumi";
    
    export const oceanId = spotinst_ocean_aks.example.id;
    
    resources:
      example:
        type: spotinst:azure:Ocean
        properties:
          # --- AKS -----------------------------------------------------------
          acdIdentifier: acd-12345678
          aksName: ocean-westus-dev-aks
          aksResourceGroupName: ocean-westus-dev
          # --- Auto Scaler ------------------------------------------------------
          autoscaler:
            autoscaleDown:
              maxScaleDownPercentage: 10
            autoscaleHeadroom:
              automatic:
                isEnabled: true
                percentage: 10
            autoscaleIsEnabled: true
            resourceLimits:
              maxMemoryGib: 40
              maxVcpu: 1024
          controllerClusterId: ocean-westus-dev-aks
          customData: '[... redacted ...]'
          # --- Extensions -------------------------------------------------------
          extensions:
            - apiVersion: '1.0'
              minorVersionAutoUpgrade: true
              name: extension-name
              publisher: Microsoft.Azure.Extensions
              type: Linux
          # --- Health ----------------------------------------------------------
          health:
            gracePeriod: 10
          # --- Image ---------------------------------------------------------
          images:
            - marketplaces:
                - offer: UbuntuServer
                  publisher: Canonical
                  sku: 18.04-LTS
                  version: latest
          # --- Load Balancers ---------------------------------------------------
          loadBalancers:
            - backendPoolNames:
                - terraform-backend-pool
              loadBalancerSku: Standard
              name: load-balancer-name
              resourceGroupName: resource-group-name
              type: loadBalancer
          managedServiceIdentities:
            - name: ocean-westus-dev-aks-agentpool
              resourceGroupName: MC_ocean-westus-dev_ocean-westus-dev-aks_westus
          maxPods: 30
          # --- NETWORK ---------------------------------------------------------
          network:
            networkInterfaces:
              - additionalIpConfig:
                  - name: ip-config-name
                    privateIpVersion: ipv4
                assignPublicIp: false
                isPrimary: false
                subnetName: subnet-name
            resourceGroupName: ocean-westus-dev
            virtualNetworkName: vn-name
          # --- OSDisk --------------------------------------------------------
          osDisk:
            sizeGb: 130
            type: Standard_LRS
          # --- Launch Specification ------------------------------------------
          resourceGroupName: some-resource-group-name
          # --- Login ---------------------------------------------------------
          sshPublicKey: ssh-rsa [... redacted ...] generated-by-azure
          # --- Strategy --------------------------------------------------------
          strategies:
            - fallbackToOndemand: true
              spotPercentage: 40
          tags:
            - key: Environment
              value: Dev
          userName: some-name
          # --- VMSizes --------------------------------------------------------
          vmSizes:
            - whitelists:
                - standard_ds2_v2
          zones:
            - '1'
            - '2'
            - '3'
    

    Coming soon!

    Coming soon!

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

    Coming soon!

    Coming soon!

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

    Create Ocean Resource

    new Ocean(name: string, args: OceanArgs, opts?: CustomResourceOptions);
    @overload
    def Ocean(resource_name: str,
              opts: Optional[ResourceOptions] = None,
              acd_identifier: Optional[str] = None,
              aks_name: Optional[str] = None,
              aks_resource_group_name: Optional[str] = None,
              autoscaler: Optional[OceanAutoscalerArgs] = None,
              controller_cluster_id: Optional[str] = None,
              custom_data: Optional[str] = None,
              extensions: Optional[Sequence[OceanExtensionArgs]] = None,
              health: Optional[OceanHealthArgs] = None,
              images: Optional[Sequence[OceanImageArgs]] = None,
              load_balancers: Optional[Sequence[OceanLoadBalancerArgs]] = None,
              managed_service_identities: Optional[Sequence[OceanManagedServiceIdentityArgs]] = None,
              max_pods: Optional[int] = None,
              name: Optional[str] = None,
              network: Optional[OceanNetworkArgs] = None,
              os_disk: Optional[OceanOsDiskArgs] = None,
              resource_group_name: Optional[str] = None,
              ssh_public_key: Optional[str] = None,
              strategies: Optional[Sequence[OceanStrategyArgs]] = None,
              tags: Optional[Sequence[OceanTagArgs]] = None,
              user_name: Optional[str] = None,
              vm_sizes: Optional[Sequence[OceanVmSizeArgs]] = None,
              zones: Optional[Sequence[str]] = None)
    @overload
    def Ocean(resource_name: str,
              args: OceanArgs,
              opts: Optional[ResourceOptions] = None)
    func NewOcean(ctx *Context, name string, args OceanArgs, opts ...ResourceOption) (*Ocean, error)
    public Ocean(string name, OceanArgs args, CustomResourceOptions? opts = null)
    public Ocean(String name, OceanArgs args)
    public Ocean(String name, OceanArgs args, CustomResourceOptions options)
    
    type: spotinst:azure:Ocean
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    
    name string
    The unique name of the resource.
    args OceanArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args OceanArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args OceanArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args OceanArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args OceanArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Ocean Resource Properties

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

    Inputs

    The Ocean resource accepts the following input properties:

    AcdIdentifier string

    The AKS identifier. A valid identifier should be formatted as acd-nnnnnnnn and previously used identifiers cannot be reused.

    AksName string

    The AKS cluster name.

    AksResourceGroupName string

    Name of the Azure Resource Group where the AKS cluster is located.

    SshPublicKey string

    SSH public key for admin access to Linux VMs.

    Autoscaler Pulumi.SpotInst.Azure.Inputs.OceanAutoscaler

    The Ocean Kubernetes Autoscaler object.

    ControllerClusterId string

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

    CustomData string

    Must contain a valid Base64 encoded string.

    Extensions List<Pulumi.SpotInst.Azure.Inputs.OceanExtension>

    List of Azure extension objects.

    Health Pulumi.SpotInst.Azure.Inputs.OceanHealth

    The Ocean AKS Health object.

    Images List<Pulumi.SpotInst.Azure.Inputs.OceanImage>

    Image of VM. An image is a template for creating new VMs. Choose from Azure image catalogue (marketplace).

    LoadBalancers List<Pulumi.SpotInst.Azure.Inputs.OceanLoadBalancer>

    Configure Load Balancer.

    ManagedServiceIdentities List<Pulumi.SpotInst.Azure.Inputs.OceanManagedServiceIdentity>

    List of Managed Service Identity objects.

    MaxPods int

    The maximum number of pods per node in an AKS cluster.

    Name string

    Name of the Load Balancer.

    Network Pulumi.SpotInst.Azure.Inputs.OceanNetwork

    Define the Virtual Network and Subnet.

    OsDisk Pulumi.SpotInst.Azure.Inputs.OceanOsDisk

    OS disk specifications.

    ResourceGroupName string

    The Resource Group name of the Load Balancer.

    Strategies List<Pulumi.SpotInst.Azure.Inputs.OceanStrategy>

    The Ocean AKS strategy object.

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

    Unique key-value pairs that will be used to tag VMs that are launched in the cluster.

    UserName string

    Username for admin access to VMs.

    VmSizes List<Pulumi.SpotInst.Azure.Inputs.OceanVmSize>

    The types of virtual machines that may or may not be a part of the Ocean cluster.

    Zones List<string>

    An Array holding default Availability Zones, this configures the availability zones the Ocean may launch instances in.

    AcdIdentifier string

    The AKS identifier. A valid identifier should be formatted as acd-nnnnnnnn and previously used identifiers cannot be reused.

    AksName string

    The AKS cluster name.

    AksResourceGroupName string

    Name of the Azure Resource Group where the AKS cluster is located.

    SshPublicKey string

    SSH public key for admin access to Linux VMs.

    Autoscaler OceanAutoscalerArgs

    The Ocean Kubernetes Autoscaler object.

    ControllerClusterId string

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

    CustomData string

    Must contain a valid Base64 encoded string.

    Extensions []OceanExtensionArgs

    List of Azure extension objects.

    Health OceanHealthArgs

    The Ocean AKS Health object.

    Images []OceanImageArgs

    Image of VM. An image is a template for creating new VMs. Choose from Azure image catalogue (marketplace).

    LoadBalancers []OceanLoadBalancerArgs

    Configure Load Balancer.

    ManagedServiceIdentities []OceanManagedServiceIdentityArgs

    List of Managed Service Identity objects.

    MaxPods int

    The maximum number of pods per node in an AKS cluster.

    Name string

    Name of the Load Balancer.

    Network OceanNetworkArgs

    Define the Virtual Network and Subnet.

    OsDisk OceanOsDiskArgs

    OS disk specifications.

    ResourceGroupName string

    The Resource Group name of the Load Balancer.

    Strategies []OceanStrategyArgs

    The Ocean AKS strategy object.

    Tags []OceanTagArgs

    Unique key-value pairs that will be used to tag VMs that are launched in the cluster.

    UserName string

    Username for admin access to VMs.

    VmSizes []OceanVmSizeArgs

    The types of virtual machines that may or may not be a part of the Ocean cluster.

    Zones []string

    An Array holding default Availability Zones, this configures the availability zones the Ocean may launch instances in.

    acdIdentifier String

    The AKS identifier. A valid identifier should be formatted as acd-nnnnnnnn and previously used identifiers cannot be reused.

    aksName String

    The AKS cluster name.

    aksResourceGroupName String

    Name of the Azure Resource Group where the AKS cluster is located.

    sshPublicKey String

    SSH public key for admin access to Linux VMs.

    autoscaler OceanAutoscaler

    The Ocean Kubernetes Autoscaler object.

    controllerClusterId String

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

    customData String

    Must contain a valid Base64 encoded string.

    extensions List<OceanExtension>

    List of Azure extension objects.

    health OceanHealth

    The Ocean AKS Health object.

    images List<OceanImage>

    Image of VM. An image is a template for creating new VMs. Choose from Azure image catalogue (marketplace).

    loadBalancers List<OceanLoadBalancer>

    Configure Load Balancer.

    managedServiceIdentities List<OceanManagedServiceIdentity>

    List of Managed Service Identity objects.

    maxPods Integer

    The maximum number of pods per node in an AKS cluster.

    name String

    Name of the Load Balancer.

    network OceanNetwork

    Define the Virtual Network and Subnet.

    osDisk OceanOsDisk

    OS disk specifications.

    resourceGroupName String

    The Resource Group name of the Load Balancer.

    strategies List<OceanStrategy>

    The Ocean AKS strategy object.

    tags List<OceanTag>

    Unique key-value pairs that will be used to tag VMs that are launched in the cluster.

    userName String

    Username for admin access to VMs.

    vmSizes List<OceanVmSize>

    The types of virtual machines that may or may not be a part of the Ocean cluster.

    zones List<String>

    An Array holding default Availability Zones, this configures the availability zones the Ocean may launch instances in.

    acdIdentifier string

    The AKS identifier. A valid identifier should be formatted as acd-nnnnnnnn and previously used identifiers cannot be reused.

    aksName string

    The AKS cluster name.

    aksResourceGroupName string

    Name of the Azure Resource Group where the AKS cluster is located.

    sshPublicKey string

    SSH public key for admin access to Linux VMs.

    autoscaler OceanAutoscaler

    The Ocean Kubernetes Autoscaler object.

    controllerClusterId string

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

    customData string

    Must contain a valid Base64 encoded string.

    extensions OceanExtension[]

    List of Azure extension objects.

    health OceanHealth

    The Ocean AKS Health object.

    images OceanImage[]

    Image of VM. An image is a template for creating new VMs. Choose from Azure image catalogue (marketplace).

    loadBalancers OceanLoadBalancer[]

    Configure Load Balancer.

    managedServiceIdentities OceanManagedServiceIdentity[]

    List of Managed Service Identity objects.

    maxPods number

    The maximum number of pods per node in an AKS cluster.

    name string

    Name of the Load Balancer.

    network OceanNetwork

    Define the Virtual Network and Subnet.

    osDisk OceanOsDisk

    OS disk specifications.

    resourceGroupName string

    The Resource Group name of the Load Balancer.

    strategies OceanStrategy[]

    The Ocean AKS strategy object.

    tags OceanTag[]

    Unique key-value pairs that will be used to tag VMs that are launched in the cluster.

    userName string

    Username for admin access to VMs.

    vmSizes OceanVmSize[]

    The types of virtual machines that may or may not be a part of the Ocean cluster.

    zones string[]

    An Array holding default Availability Zones, this configures the availability zones the Ocean may launch instances in.

    acd_identifier str

    The AKS identifier. A valid identifier should be formatted as acd-nnnnnnnn and previously used identifiers cannot be reused.

    aks_name str

    The AKS cluster name.

    aks_resource_group_name str

    Name of the Azure Resource Group where the AKS cluster is located.

    ssh_public_key str

    SSH public key for admin access to Linux VMs.

    autoscaler OceanAutoscalerArgs

    The Ocean Kubernetes Autoscaler object.

    controller_cluster_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.

    custom_data str

    Must contain a valid Base64 encoded string.

    extensions Sequence[OceanExtensionArgs]

    List of Azure extension objects.

    health OceanHealthArgs

    The Ocean AKS Health object.

    images Sequence[OceanImageArgs]

    Image of VM. An image is a template for creating new VMs. Choose from Azure image catalogue (marketplace).

    load_balancers Sequence[OceanLoadBalancerArgs]

    Configure Load Balancer.

    managed_service_identities Sequence[OceanManagedServiceIdentityArgs]

    List of Managed Service Identity objects.

    max_pods int

    The maximum number of pods per node in an AKS cluster.

    name str

    Name of the Load Balancer.

    network OceanNetworkArgs

    Define the Virtual Network and Subnet.

    os_disk OceanOsDiskArgs

    OS disk specifications.

    resource_group_name str

    The Resource Group name of the Load Balancer.

    strategies Sequence[OceanStrategyArgs]

    The Ocean AKS strategy object.

    tags Sequence[OceanTagArgs]

    Unique key-value pairs that will be used to tag VMs that are launched in the cluster.

    user_name str

    Username for admin access to VMs.

    vm_sizes Sequence[OceanVmSizeArgs]

    The types of virtual machines that may or may not be a part of the Ocean cluster.

    zones Sequence[str]

    An Array holding default Availability Zones, this configures the availability zones the Ocean may launch instances in.

    acdIdentifier String

    The AKS identifier. A valid identifier should be formatted as acd-nnnnnnnn and previously used identifiers cannot be reused.

    aksName String

    The AKS cluster name.

    aksResourceGroupName String

    Name of the Azure Resource Group where the AKS cluster is located.

    sshPublicKey String

    SSH public key for admin access to Linux VMs.

    autoscaler Property Map

    The Ocean Kubernetes Autoscaler object.

    controllerClusterId String

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

    customData String

    Must contain a valid Base64 encoded string.

    extensions List<Property Map>

    List of Azure extension objects.

    health Property Map

    The Ocean AKS Health object.

    images List<Property Map>

    Image of VM. An image is a template for creating new VMs. Choose from Azure image catalogue (marketplace).

    loadBalancers List<Property Map>

    Configure Load Balancer.

    managedServiceIdentities List<Property Map>

    List of Managed Service Identity objects.

    maxPods Number

    The maximum number of pods per node in an AKS cluster.

    name String

    Name of the Load Balancer.

    network Property Map

    Define the Virtual Network and Subnet.

    osDisk Property Map

    OS disk specifications.

    resourceGroupName String

    The Resource Group name of the Load Balancer.

    strategies List<Property Map>

    The Ocean AKS strategy object.

    tags List<Property Map>

    Unique key-value pairs that will be used to tag VMs that are launched in the cluster.

    userName String

    Username for admin access to VMs.

    vmSizes List<Property Map>

    The types of virtual machines that may or may not be a part of the Ocean cluster.

    zones List<String>

    An Array holding default Availability Zones, this configures the availability zones the Ocean may launch instances in.

    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,
            acd_identifier: Optional[str] = None,
            aks_name: Optional[str] = None,
            aks_resource_group_name: Optional[str] = None,
            autoscaler: Optional[OceanAutoscalerArgs] = None,
            controller_cluster_id: Optional[str] = None,
            custom_data: Optional[str] = None,
            extensions: Optional[Sequence[OceanExtensionArgs]] = None,
            health: Optional[OceanHealthArgs] = None,
            images: Optional[Sequence[OceanImageArgs]] = None,
            load_balancers: Optional[Sequence[OceanLoadBalancerArgs]] = None,
            managed_service_identities: Optional[Sequence[OceanManagedServiceIdentityArgs]] = None,
            max_pods: Optional[int] = None,
            name: Optional[str] = None,
            network: Optional[OceanNetworkArgs] = None,
            os_disk: Optional[OceanOsDiskArgs] = None,
            resource_group_name: Optional[str] = None,
            ssh_public_key: Optional[str] = None,
            strategies: Optional[Sequence[OceanStrategyArgs]] = None,
            tags: Optional[Sequence[OceanTagArgs]] = None,
            user_name: Optional[str] = None,
            vm_sizes: Optional[Sequence[OceanVmSizeArgs]] = None,
            zones: 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:
    AcdIdentifier string

    The AKS identifier. A valid identifier should be formatted as acd-nnnnnnnn and previously used identifiers cannot be reused.

    AksName string

    The AKS cluster name.

    AksResourceGroupName string

    Name of the Azure Resource Group where the AKS cluster is located.

    Autoscaler Pulumi.SpotInst.Azure.Inputs.OceanAutoscaler

    The Ocean Kubernetes Autoscaler object.

    ControllerClusterId string

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

    CustomData string

    Must contain a valid Base64 encoded string.

    Extensions List<Pulumi.SpotInst.Azure.Inputs.OceanExtension>

    List of Azure extension objects.

    Health Pulumi.SpotInst.Azure.Inputs.OceanHealth

    The Ocean AKS Health object.

    Images List<Pulumi.SpotInst.Azure.Inputs.OceanImage>

    Image of VM. An image is a template for creating new VMs. Choose from Azure image catalogue (marketplace).

    LoadBalancers List<Pulumi.SpotInst.Azure.Inputs.OceanLoadBalancer>

    Configure Load Balancer.

    ManagedServiceIdentities List<Pulumi.SpotInst.Azure.Inputs.OceanManagedServiceIdentity>

    List of Managed Service Identity objects.

    MaxPods int

    The maximum number of pods per node in an AKS cluster.

    Name string

    Name of the Load Balancer.

    Network Pulumi.SpotInst.Azure.Inputs.OceanNetwork

    Define the Virtual Network and Subnet.

    OsDisk Pulumi.SpotInst.Azure.Inputs.OceanOsDisk

    OS disk specifications.

    ResourceGroupName string

    The Resource Group name of the Load Balancer.

    SshPublicKey string

    SSH public key for admin access to Linux VMs.

    Strategies List<Pulumi.SpotInst.Azure.Inputs.OceanStrategy>

    The Ocean AKS strategy object.

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

    Unique key-value pairs that will be used to tag VMs that are launched in the cluster.

    UserName string

    Username for admin access to VMs.

    VmSizes List<Pulumi.SpotInst.Azure.Inputs.OceanVmSize>

    The types of virtual machines that may or may not be a part of the Ocean cluster.

    Zones List<string>

    An Array holding default Availability Zones, this configures the availability zones the Ocean may launch instances in.

    AcdIdentifier string

    The AKS identifier. A valid identifier should be formatted as acd-nnnnnnnn and previously used identifiers cannot be reused.

    AksName string

    The AKS cluster name.

    AksResourceGroupName string

    Name of the Azure Resource Group where the AKS cluster is located.

    Autoscaler OceanAutoscalerArgs

    The Ocean Kubernetes Autoscaler object.

    ControllerClusterId string

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

    CustomData string

    Must contain a valid Base64 encoded string.

    Extensions []OceanExtensionArgs

    List of Azure extension objects.

    Health OceanHealthArgs

    The Ocean AKS Health object.

    Images []OceanImageArgs

    Image of VM. An image is a template for creating new VMs. Choose from Azure image catalogue (marketplace).

    LoadBalancers []OceanLoadBalancerArgs

    Configure Load Balancer.

    ManagedServiceIdentities []OceanManagedServiceIdentityArgs

    List of Managed Service Identity objects.

    MaxPods int

    The maximum number of pods per node in an AKS cluster.

    Name string

    Name of the Load Balancer.

    Network OceanNetworkArgs

    Define the Virtual Network and Subnet.

    OsDisk OceanOsDiskArgs

    OS disk specifications.

    ResourceGroupName string

    The Resource Group name of the Load Balancer.

    SshPublicKey string

    SSH public key for admin access to Linux VMs.

    Strategies []OceanStrategyArgs

    The Ocean AKS strategy object.

    Tags []OceanTagArgs

    Unique key-value pairs that will be used to tag VMs that are launched in the cluster.

    UserName string

    Username for admin access to VMs.

    VmSizes []OceanVmSizeArgs

    The types of virtual machines that may or may not be a part of the Ocean cluster.

    Zones []string

    An Array holding default Availability Zones, this configures the availability zones the Ocean may launch instances in.

    acdIdentifier String

    The AKS identifier. A valid identifier should be formatted as acd-nnnnnnnn and previously used identifiers cannot be reused.

    aksName String

    The AKS cluster name.

    aksResourceGroupName String

    Name of the Azure Resource Group where the AKS cluster is located.

    autoscaler OceanAutoscaler

    The Ocean Kubernetes Autoscaler object.

    controllerClusterId String

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

    customData String

    Must contain a valid Base64 encoded string.

    extensions List<OceanExtension>

    List of Azure extension objects.

    health OceanHealth

    The Ocean AKS Health object.

    images List<OceanImage>

    Image of VM. An image is a template for creating new VMs. Choose from Azure image catalogue (marketplace).

    loadBalancers List<OceanLoadBalancer>

    Configure Load Balancer.

    managedServiceIdentities List<OceanManagedServiceIdentity>

    List of Managed Service Identity objects.

    maxPods Integer

    The maximum number of pods per node in an AKS cluster.

    name String

    Name of the Load Balancer.

    network OceanNetwork

    Define the Virtual Network and Subnet.

    osDisk OceanOsDisk

    OS disk specifications.

    resourceGroupName String

    The Resource Group name of the Load Balancer.

    sshPublicKey String

    SSH public key for admin access to Linux VMs.

    strategies List<OceanStrategy>

    The Ocean AKS strategy object.

    tags List<OceanTag>

    Unique key-value pairs that will be used to tag VMs that are launched in the cluster.

    userName String

    Username for admin access to VMs.

    vmSizes List<OceanVmSize>

    The types of virtual machines that may or may not be a part of the Ocean cluster.

    zones List<String>

    An Array holding default Availability Zones, this configures the availability zones the Ocean may launch instances in.

    acdIdentifier string

    The AKS identifier. A valid identifier should be formatted as acd-nnnnnnnn and previously used identifiers cannot be reused.

    aksName string

    The AKS cluster name.

    aksResourceGroupName string

    Name of the Azure Resource Group where the AKS cluster is located.

    autoscaler OceanAutoscaler

    The Ocean Kubernetes Autoscaler object.

    controllerClusterId string

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

    customData string

    Must contain a valid Base64 encoded string.

    extensions OceanExtension[]

    List of Azure extension objects.

    health OceanHealth

    The Ocean AKS Health object.

    images OceanImage[]

    Image of VM. An image is a template for creating new VMs. Choose from Azure image catalogue (marketplace).

    loadBalancers OceanLoadBalancer[]

    Configure Load Balancer.

    managedServiceIdentities OceanManagedServiceIdentity[]

    List of Managed Service Identity objects.

    maxPods number

    The maximum number of pods per node in an AKS cluster.

    name string

    Name of the Load Balancer.

    network OceanNetwork

    Define the Virtual Network and Subnet.

    osDisk OceanOsDisk

    OS disk specifications.

    resourceGroupName string

    The Resource Group name of the Load Balancer.

    sshPublicKey string

    SSH public key for admin access to Linux VMs.

    strategies OceanStrategy[]

    The Ocean AKS strategy object.

    tags OceanTag[]

    Unique key-value pairs that will be used to tag VMs that are launched in the cluster.

    userName string

    Username for admin access to VMs.

    vmSizes OceanVmSize[]

    The types of virtual machines that may or may not be a part of the Ocean cluster.

    zones string[]

    An Array holding default Availability Zones, this configures the availability zones the Ocean may launch instances in.

    acd_identifier str

    The AKS identifier. A valid identifier should be formatted as acd-nnnnnnnn and previously used identifiers cannot be reused.

    aks_name str

    The AKS cluster name.

    aks_resource_group_name str

    Name of the Azure Resource Group where the AKS cluster is located.

    autoscaler OceanAutoscalerArgs

    The Ocean Kubernetes Autoscaler object.

    controller_cluster_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.

    custom_data str

    Must contain a valid Base64 encoded string.

    extensions Sequence[OceanExtensionArgs]

    List of Azure extension objects.

    health OceanHealthArgs

    The Ocean AKS Health object.

    images Sequence[OceanImageArgs]

    Image of VM. An image is a template for creating new VMs. Choose from Azure image catalogue (marketplace).

    load_balancers Sequence[OceanLoadBalancerArgs]

    Configure Load Balancer.

    managed_service_identities Sequence[OceanManagedServiceIdentityArgs]

    List of Managed Service Identity objects.

    max_pods int

    The maximum number of pods per node in an AKS cluster.

    name str

    Name of the Load Balancer.

    network OceanNetworkArgs

    Define the Virtual Network and Subnet.

    os_disk OceanOsDiskArgs

    OS disk specifications.

    resource_group_name str

    The Resource Group name of the Load Balancer.

    ssh_public_key str

    SSH public key for admin access to Linux VMs.

    strategies Sequence[OceanStrategyArgs]

    The Ocean AKS strategy object.

    tags Sequence[OceanTagArgs]

    Unique key-value pairs that will be used to tag VMs that are launched in the cluster.

    user_name str

    Username for admin access to VMs.

    vm_sizes Sequence[OceanVmSizeArgs]

    The types of virtual machines that may or may not be a part of the Ocean cluster.

    zones Sequence[str]

    An Array holding default Availability Zones, this configures the availability zones the Ocean may launch instances in.

    acdIdentifier String

    The AKS identifier. A valid identifier should be formatted as acd-nnnnnnnn and previously used identifiers cannot be reused.

    aksName String

    The AKS cluster name.

    aksResourceGroupName String

    Name of the Azure Resource Group where the AKS cluster is located.

    autoscaler Property Map

    The Ocean Kubernetes Autoscaler object.

    controllerClusterId String

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

    customData String

    Must contain a valid Base64 encoded string.

    extensions List<Property Map>

    List of Azure extension objects.

    health Property Map

    The Ocean AKS Health object.

    images List<Property Map>

    Image of VM. An image is a template for creating new VMs. Choose from Azure image catalogue (marketplace).

    loadBalancers List<Property Map>

    Configure Load Balancer.

    managedServiceIdentities List<Property Map>

    List of Managed Service Identity objects.

    maxPods Number

    The maximum number of pods per node in an AKS cluster.

    name String

    Name of the Load Balancer.

    network Property Map

    Define the Virtual Network and Subnet.

    osDisk Property Map

    OS disk specifications.

    resourceGroupName String

    The Resource Group name of the Load Balancer.

    sshPublicKey String

    SSH public key for admin access to Linux VMs.

    strategies List<Property Map>

    The Ocean AKS strategy object.

    tags List<Property Map>

    Unique key-value pairs that will be used to tag VMs that are launched in the cluster.

    userName String

    Username for admin access to VMs.

    vmSizes List<Property Map>

    The types of virtual machines that may or may not be a part of the Ocean cluster.

    zones List<String>

    An Array holding default Availability Zones, this configures the availability zones the Ocean may launch instances in.

    Supporting Types

    OceanAutoscaler, OceanAutoscalerArgs

    AutoscaleDown Pulumi.SpotInst.Azure.Inputs.OceanAutoscalerAutoscaleDown

    Auto Scaling scale down operations.

    AutoscaleHeadroom Pulumi.SpotInst.Azure.Inputs.OceanAutoscalerAutoscaleHeadroom

    Spare Resource Capacity Management feature enables fast assignment of Pods without having to wait for new resources to be launched.

    AutoscaleIsEnabled bool

    Enable the Ocean Kubernetes Autoscaler.

    ResourceLimits Pulumi.SpotInst.Azure.Inputs.OceanAutoscalerResourceLimits

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

    AutoscaleDown OceanAutoscalerAutoscaleDown

    Auto Scaling scale down operations.

    AutoscaleHeadroom OceanAutoscalerAutoscaleHeadroom

    Spare Resource Capacity Management feature enables fast assignment of Pods without having to wait for new resources to be launched.

    AutoscaleIsEnabled bool

    Enable the Ocean Kubernetes Autoscaler.

    ResourceLimits OceanAutoscalerResourceLimits

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

    autoscaleDown OceanAutoscalerAutoscaleDown

    Auto Scaling scale down operations.

    autoscaleHeadroom OceanAutoscalerAutoscaleHeadroom

    Spare Resource Capacity Management feature enables fast assignment of Pods without having to wait for new resources to be launched.

    autoscaleIsEnabled Boolean

    Enable the Ocean Kubernetes Autoscaler.

    resourceLimits OceanAutoscalerResourceLimits

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

    autoscaleDown OceanAutoscalerAutoscaleDown

    Auto Scaling scale down operations.

    autoscaleHeadroom OceanAutoscalerAutoscaleHeadroom

    Spare Resource Capacity Management feature enables fast assignment of Pods without having to wait for new resources to be launched.

    autoscaleIsEnabled boolean

    Enable the Ocean Kubernetes Autoscaler.

    resourceLimits OceanAutoscalerResourceLimits

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

    autoscale_down OceanAutoscalerAutoscaleDown

    Auto Scaling scale down operations.

    autoscale_headroom OceanAutoscalerAutoscaleHeadroom

    Spare Resource Capacity Management feature enables fast assignment of Pods without having to wait for new resources to be launched.

    autoscale_is_enabled bool

    Enable the Ocean Kubernetes Autoscaler.

    resource_limits OceanAutoscalerResourceLimits

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

    autoscaleDown Property Map

    Auto Scaling scale down operations.

    autoscaleHeadroom Property Map

    Spare Resource Capacity Management feature enables fast assignment of Pods without having to wait for new resources to be launched.

    autoscaleIsEnabled Boolean

    Enable the Ocean Kubernetes Autoscaler.

    resourceLimits Property Map

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

    OceanAutoscalerAutoscaleDown, OceanAutoscalerAutoscaleDownArgs

    MaxScaleDownPercentage double

    Would represent the maximum % to scale-down.

    MaxScaleDownPercentage float64

    Would represent the maximum % to scale-down.

    maxScaleDownPercentage Double

    Would represent the maximum % to scale-down.

    maxScaleDownPercentage number

    Would represent the maximum % to scale-down.

    max_scale_down_percentage float

    Would represent the maximum % to scale-down.

    maxScaleDownPercentage Number

    Would represent the maximum % to scale-down.

    OceanAutoscalerAutoscaleHeadroom, OceanAutoscalerAutoscaleHeadroomArgs

    Automatic OceanAutoscalerAutoscaleHeadroomAutomatic

    Automatic headroom configuration.

    automatic OceanAutoscalerAutoscaleHeadroomAutomatic

    Automatic headroom configuration.

    automatic OceanAutoscalerAutoscaleHeadroomAutomatic

    Automatic headroom configuration.

    automatic OceanAutoscalerAutoscaleHeadroomAutomatic

    Automatic headroom configuration.

    automatic Property Map

    Automatic headroom configuration.

    OceanAutoscalerAutoscaleHeadroomAutomatic, OceanAutoscalerAutoscaleHeadroomAutomaticArgs

    IsEnabled bool

    Enable automatic headroom. When set to true, Ocean configures and optimizes headroom automatically.

    Percentage int

    Optionally set a number between 0-100 to control the percentage of total cluster resources dedicated to headroom. Relevant when isEnabled is toggled on.

    IsEnabled bool

    Enable automatic headroom. When set to true, Ocean configures and optimizes headroom automatically.

    Percentage int

    Optionally set a number between 0-100 to control the percentage of total cluster resources dedicated to headroom. Relevant when isEnabled is toggled on.

    isEnabled Boolean

    Enable automatic headroom. When set to true, Ocean configures and optimizes headroom automatically.

    percentage Integer

    Optionally set a number between 0-100 to control the percentage of total cluster resources dedicated to headroom. Relevant when isEnabled is toggled on.

    isEnabled boolean

    Enable automatic headroom. When set to true, Ocean configures and optimizes headroom automatically.

    percentage number

    Optionally set a number between 0-100 to control the percentage of total cluster resources dedicated to headroom. Relevant when isEnabled is toggled on.

    is_enabled bool

    Enable automatic headroom. When set to true, Ocean configures and optimizes headroom automatically.

    percentage int

    Optionally set a number between 0-100 to control the percentage of total cluster resources dedicated to headroom. Relevant when isEnabled is toggled on.

    isEnabled Boolean

    Enable automatic headroom. When set to true, Ocean configures and optimizes headroom automatically.

    percentage Number

    Optionally set a number between 0-100 to control the percentage of total cluster resources dedicated to headroom. Relevant when isEnabled is toggled on.

    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.

    OceanExtension, OceanExtensionArgs

    ApiVersion string

    API version of the extension.

    MinorVersionAutoUpgrade bool

    Toggles whether auto upgrades are allowed.

    Name string

    Name of the Load Balancer.

    Publisher string

    Image publisher.

    Type string

    The type of load balancer. Supported value: loadBalancer

    ApiVersion string

    API version of the extension.

    MinorVersionAutoUpgrade bool

    Toggles whether auto upgrades are allowed.

    Name string

    Name of the Load Balancer.

    Publisher string

    Image publisher.

    Type string

    The type of load balancer. Supported value: loadBalancer

    apiVersion String

    API version of the extension.

    minorVersionAutoUpgrade Boolean

    Toggles whether auto upgrades are allowed.

    name String

    Name of the Load Balancer.

    publisher String

    Image publisher.

    type String

    The type of load balancer. Supported value: loadBalancer

    apiVersion string

    API version of the extension.

    minorVersionAutoUpgrade boolean

    Toggles whether auto upgrades are allowed.

    name string

    Name of the Load Balancer.

    publisher string

    Image publisher.

    type string

    The type of load balancer. Supported value: loadBalancer

    api_version str

    API version of the extension.

    minor_version_auto_upgrade bool

    Toggles whether auto upgrades are allowed.

    name str

    Name of the Load Balancer.

    publisher str

    Image publisher.

    type str

    The type of load balancer. Supported value: loadBalancer

    apiVersion String

    API version of the extension.

    minorVersionAutoUpgrade Boolean

    Toggles whether auto upgrades are allowed.

    name String

    Name of the Load Balancer.

    publisher String

    Image publisher.

    type String

    The type of load balancer. Supported value: loadBalancer

    OceanHealth, OceanHealthArgs

    GracePeriod int

    The amount of time to wait, in seconds, from the moment the instance has launched before monitoring its health checks.

    GracePeriod int

    The amount of time to wait, in seconds, from the moment the instance has launched before monitoring its health checks.

    gracePeriod Integer

    The amount of time to wait, in seconds, from the moment the instance has launched before monitoring its health checks.

    gracePeriod number

    The amount of time to wait, in seconds, from the moment the instance has launched before monitoring its health checks.

    grace_period int

    The amount of time to wait, in seconds, from the moment the instance has launched before monitoring its health checks.

    gracePeriod Number

    The amount of time to wait, in seconds, from the moment the instance has launched before monitoring its health checks.

    OceanImage, OceanImageArgs

    Marketplaces List<Pulumi.SpotInst.Azure.Inputs.OceanImageMarketplace>

    Select an image from Azure's Marketplace image catalogue.

    Marketplaces []OceanImageMarketplace

    Select an image from Azure's Marketplace image catalogue.

    marketplaces List<OceanImageMarketplace>

    Select an image from Azure's Marketplace image catalogue.

    marketplaces OceanImageMarketplace[]

    Select an image from Azure's Marketplace image catalogue.

    marketplaces Sequence[OceanImageMarketplace]

    Select an image from Azure's Marketplace image catalogue.

    marketplaces List<Property Map>

    Select an image from Azure's Marketplace image catalogue.

    OceanImageMarketplace, OceanImageMarketplaceArgs

    Offer string

    Image name.

    Publisher string

    Image publisher.

    Sku string

    Image Stock Keeping Unit (which is the specific version of the image).

    Version string

    Image version.

    Offer string

    Image name.

    Publisher string

    Image publisher.

    Sku string

    Image Stock Keeping Unit (which is the specific version of the image).

    Version string

    Image version.

    offer String

    Image name.

    publisher String

    Image publisher.

    sku String

    Image Stock Keeping Unit (which is the specific version of the image).

    version String

    Image version.

    offer string

    Image name.

    publisher string

    Image publisher.

    sku string

    Image Stock Keeping Unit (which is the specific version of the image).

    version string

    Image version.

    offer str

    Image name.

    publisher str

    Image publisher.

    sku str

    Image Stock Keeping Unit (which is the specific version of the image).

    version str

    Image version.

    offer String

    Image name.

    publisher String

    Image publisher.

    sku String

    Image Stock Keeping Unit (which is the specific version of the image).

    version String

    Image version.

    OceanLoadBalancer, OceanLoadBalancerArgs

    BackendPoolNames List<string>

    Names of the Backend Pools to register the Cluster VMs to. Each Backend Pool is a separate load balancer.

    LoadBalancerSku string

    Supported values: Standard, Basic.

    Name string

    Name of the Load Balancer.

    ResourceGroupName string

    The Resource Group name of the Load Balancer.

    Type string

    The type of load balancer. Supported value: loadBalancer

    BackendPoolNames []string

    Names of the Backend Pools to register the Cluster VMs to. Each Backend Pool is a separate load balancer.

    LoadBalancerSku string

    Supported values: Standard, Basic.

    Name string

    Name of the Load Balancer.

    ResourceGroupName string

    The Resource Group name of the Load Balancer.

    Type string

    The type of load balancer. Supported value: loadBalancer

    backendPoolNames List<String>

    Names of the Backend Pools to register the Cluster VMs to. Each Backend Pool is a separate load balancer.

    loadBalancerSku String

    Supported values: Standard, Basic.

    name String

    Name of the Load Balancer.

    resourceGroupName String

    The Resource Group name of the Load Balancer.

    type String

    The type of load balancer. Supported value: loadBalancer

    backendPoolNames string[]

    Names of the Backend Pools to register the Cluster VMs to. Each Backend Pool is a separate load balancer.

    loadBalancerSku string

    Supported values: Standard, Basic.

    name string

    Name of the Load Balancer.

    resourceGroupName string

    The Resource Group name of the Load Balancer.

    type string

    The type of load balancer. Supported value: loadBalancer

    backend_pool_names Sequence[str]

    Names of the Backend Pools to register the Cluster VMs to. Each Backend Pool is a separate load balancer.

    load_balancer_sku str

    Supported values: Standard, Basic.

    name str

    Name of the Load Balancer.

    resource_group_name str

    The Resource Group name of the Load Balancer.

    type str

    The type of load balancer. Supported value: loadBalancer

    backendPoolNames List<String>

    Names of the Backend Pools to register the Cluster VMs to. Each Backend Pool is a separate load balancer.

    loadBalancerSku String

    Supported values: Standard, Basic.

    name String

    Name of the Load Balancer.

    resourceGroupName String

    The Resource Group name of the Load Balancer.

    type String

    The type of load balancer. Supported value: loadBalancer

    OceanManagedServiceIdentity, OceanManagedServiceIdentityArgs

    Name string

    Name of the Load Balancer.

    ResourceGroupName string

    The Resource Group name of the Load Balancer.

    Name string

    Name of the Load Balancer.

    ResourceGroupName string

    The Resource Group name of the Load Balancer.

    name String

    Name of the Load Balancer.

    resourceGroupName String

    The Resource Group name of the Load Balancer.

    name string

    Name of the Load Balancer.

    resourceGroupName string

    The Resource Group name of the Load Balancer.

    name str

    Name of the Load Balancer.

    resource_group_name str

    The Resource Group name of the Load Balancer.

    name String

    Name of the Load Balancer.

    resourceGroupName String

    The Resource Group name of the Load Balancer.

    OceanNetwork, OceanNetworkArgs

    NetworkInterfaces List<Pulumi.SpotInst.Azure.Inputs.OceanNetworkNetworkInterface>

    A list of virtual network interfaces. The publicIpSku must be identical between all the network interfaces. One network interface must be set as the primary.

    ResourceGroupName string

    The Resource Group name of the Load Balancer.

    VirtualNetworkName string

    Virtual network.

    NetworkInterfaces []OceanNetworkNetworkInterface

    A list of virtual network interfaces. The publicIpSku must be identical between all the network interfaces. One network interface must be set as the primary.

    ResourceGroupName string

    The Resource Group name of the Load Balancer.

    VirtualNetworkName string

    Virtual network.

    networkInterfaces List<OceanNetworkNetworkInterface>

    A list of virtual network interfaces. The publicIpSku must be identical between all the network interfaces. One network interface must be set as the primary.

    resourceGroupName String

    The Resource Group name of the Load Balancer.

    virtualNetworkName String

    Virtual network.

    networkInterfaces OceanNetworkNetworkInterface[]

    A list of virtual network interfaces. The publicIpSku must be identical between all the network interfaces. One network interface must be set as the primary.

    resourceGroupName string

    The Resource Group name of the Load Balancer.

    virtualNetworkName string

    Virtual network.

    network_interfaces Sequence[OceanNetworkNetworkInterface]

    A list of virtual network interfaces. The publicIpSku must be identical between all the network interfaces. One network interface must be set as the primary.

    resource_group_name str

    The Resource Group name of the Load Balancer.

    virtual_network_name str

    Virtual network.

    networkInterfaces List<Property Map>

    A list of virtual network interfaces. The publicIpSku must be identical between all the network interfaces. One network interface must be set as the primary.

    resourceGroupName String

    The Resource Group name of the Load Balancer.

    virtualNetworkName String

    Virtual network.

    OceanNetworkNetworkInterface, OceanNetworkNetworkInterfaceArgs

    AdditionalIpConfigs List<Pulumi.SpotInst.Azure.Inputs.OceanNetworkNetworkInterfaceAdditionalIpConfig>

    Additional configuration of network interface. The name fields between all the additional_ip_config must be unique.

    AssignPublicIp bool

    Assign public IP.

    IsPrimary bool

    Defines whether the network interface is primary or not.

    SecurityGroup Pulumi.SpotInst.Azure.Inputs.OceanNetworkNetworkInterfaceSecurityGroup
    SubnetName string

    Subnet name.

    AdditionalIpConfigs []OceanNetworkNetworkInterfaceAdditionalIpConfig

    Additional configuration of network interface. The name fields between all the additional_ip_config must be unique.

    AssignPublicIp bool

    Assign public IP.

    IsPrimary bool

    Defines whether the network interface is primary or not.

    SecurityGroup OceanNetworkNetworkInterfaceSecurityGroup
    SubnetName string

    Subnet name.

    additionalIpConfigs List<OceanNetworkNetworkInterfaceAdditionalIpConfig>

    Additional configuration of network interface. The name fields between all the additional_ip_config must be unique.

    assignPublicIp Boolean

    Assign public IP.

    isPrimary Boolean

    Defines whether the network interface is primary or not.

    securityGroup OceanNetworkNetworkInterfaceSecurityGroup
    subnetName String

    Subnet name.

    additionalIpConfigs OceanNetworkNetworkInterfaceAdditionalIpConfig[]

    Additional configuration of network interface. The name fields between all the additional_ip_config must be unique.

    assignPublicIp boolean

    Assign public IP.

    isPrimary boolean

    Defines whether the network interface is primary or not.

    securityGroup OceanNetworkNetworkInterfaceSecurityGroup
    subnetName string

    Subnet name.

    additional_ip_configs Sequence[OceanNetworkNetworkInterfaceAdditionalIpConfig]

    Additional configuration of network interface. The name fields between all the additional_ip_config must be unique.

    assign_public_ip bool

    Assign public IP.

    is_primary bool

    Defines whether the network interface is primary or not.

    security_group OceanNetworkNetworkInterfaceSecurityGroup
    subnet_name str

    Subnet name.

    additionalIpConfigs List<Property Map>

    Additional configuration of network interface. The name fields between all the additional_ip_config must be unique.

    assignPublicIp Boolean

    Assign public IP.

    isPrimary Boolean

    Defines whether the network interface is primary or not.

    securityGroup Property Map
    subnetName String

    Subnet name.

    OceanNetworkNetworkInterfaceAdditionalIpConfig, OceanNetworkNetworkInterfaceAdditionalIpConfigArgs

    Name string

    Name of the Load Balancer.

    PrivateIpVersion string

    Supported values: IPv4, IPv6.

    Name string

    Name of the Load Balancer.

    PrivateIpVersion string

    Supported values: IPv4, IPv6.

    name String

    Name of the Load Balancer.

    privateIpVersion String

    Supported values: IPv4, IPv6.

    name string

    Name of the Load Balancer.

    privateIpVersion string

    Supported values: IPv4, IPv6.

    name str

    Name of the Load Balancer.

    private_ip_version str

    Supported values: IPv4, IPv6.

    name String

    Name of the Load Balancer.

    privateIpVersion String

    Supported values: IPv4, IPv6.

    OceanNetworkNetworkInterfaceSecurityGroup, OceanNetworkNetworkInterfaceSecurityGroupArgs

    Name string

    Name of the Load Balancer.

    ResourceGroupName string

    The Resource Group name of the Load Balancer.

    Name string

    Name of the Load Balancer.

    ResourceGroupName string

    The Resource Group name of the Load Balancer.

    name String

    Name of the Load Balancer.

    resourceGroupName String

    The Resource Group name of the Load Balancer.

    name string

    Name of the Load Balancer.

    resourceGroupName string

    The Resource Group name of the Load Balancer.

    name str

    Name of the Load Balancer.

    resource_group_name str

    The Resource Group name of the Load Balancer.

    name String

    Name of the Load Balancer.

    resourceGroupName String

    The Resource Group name of the Load Balancer.

    OceanOsDisk, OceanOsDiskArgs

    SizeGb int

    The size of the OS disk in GB.

    Type string

    The type of load balancer. Supported value: loadBalancer

    SizeGb int

    The size of the OS disk in GB.

    Type string

    The type of load balancer. Supported value: loadBalancer

    sizeGb Integer

    The size of the OS disk in GB.

    type String

    The type of load balancer. Supported value: loadBalancer

    sizeGb number

    The size of the OS disk in GB.

    type string

    The type of load balancer. Supported value: loadBalancer

    size_gb int

    The size of the OS disk in GB.

    type str

    The type of load balancer. Supported value: loadBalancer

    sizeGb Number

    The size of the OS disk in GB.

    type String

    The type of load balancer. Supported value: loadBalancer

    OceanStrategy, OceanStrategyArgs

    FallbackToOndemand bool

    If no spot instance markets are available, enable Ocean to launch on-demand instances instead.

    SpotPercentage int

    Percentage of Spot VMs to maintain.

    FallbackToOndemand bool

    If no spot instance markets are available, enable Ocean to launch on-demand instances instead.

    SpotPercentage int

    Percentage of Spot VMs to maintain.

    fallbackToOndemand Boolean

    If no spot instance markets are available, enable Ocean to launch on-demand instances instead.

    spotPercentage Integer

    Percentage of Spot VMs to maintain.

    fallbackToOndemand boolean

    If no spot instance markets are available, enable Ocean to launch on-demand instances instead.

    spotPercentage number

    Percentage of Spot VMs to maintain.

    fallback_to_ondemand bool

    If no spot instance markets are available, enable Ocean to launch on-demand instances instead.

    spot_percentage int

    Percentage of Spot VMs to maintain.

    fallbackToOndemand Boolean

    If no spot instance markets are available, enable Ocean to launch on-demand instances instead.

    spotPercentage Number

    Percentage of Spot VMs to maintain.

    OceanTag, OceanTagArgs

    Key string

    Tag key.

    Value string

    Tag value.

    Key string

    Tag key.

    Value string

    Tag value.

    key String

    Tag key.

    value String

    Tag value.

    key string

    Tag key.

    value string

    Tag value.

    key str

    Tag key.

    value str

    Tag value.

    key String

    Tag key.

    value String

    Tag value.

    OceanVmSize, OceanVmSizeArgs

    Whitelists List<string>

    VM types allowed in the Ocean cluster.

    Whitelists []string

    VM types allowed in the Ocean cluster.

    whitelists List<String>

    VM types allowed in the Ocean cluster.

    whitelists string[]

    VM types allowed in the Ocean cluster.

    whitelists Sequence[str]

    VM types allowed in the Ocean cluster.

    whitelists List<String>

    VM types allowed in the Ocean cluster.

    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.59.1 published on Tuesday, Nov 21, 2023 by Pulumi