Module aws

This provider is a derived work of the Terraform Provider distributed under MPL 2.0. If you encounter a bug or missing feature, first check the pulumi/pulumi-spotinst repo; however, if that doesn’t turn up anything, please consult the source terraform-providers/terraform-provider-spotinst repo.

Resources

Others

Resources

Resource Beanstalk

class Beanstalk extends CustomResource

Provides a Spotinst AWS group resource using Elastic Beanstalk.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as spotinst from "@pulumi/spotinst";

const elastigoupAwsBeanstalk = new spotinst.aws.Beanstalk("elastigoup-aws-beanstalk", {
    beanstalkEnvironmentId: "e-example",
    beanstalkEnvironmentName: "example-env",
    deploymentPreferences: {
        automaticRoll: true,
        batchSizePercentage: 100,
        gracePeriod: 90,
        strategies: [{
            action: "REPLACE_SERVER",
            shouldDrainInstances: true,
        }],
    },
    desiredCapacity: 0,
    instanceTypesSpots: [
        "t2.micro",
        "t2.medium",
        "t2.large",
    ],
    managedActions: {
        platformUpdate: {
            performAt: "timeWindow",
            timeWindow: "Mon:23:50-Tue:00:20",
            updateLevel: "minorAndPatch",
        },
    },
    maxSize: 1,
    minSize: 0,
    product: "Linux/UNIX",
    region: "us-west-2",
});

Scheduled Tasks

Each scheduledTask supports the following:

  • taskType - (Required) The task type to run. Supported task types are: "scale", "backupAmi", "roll", "scaleUp", "percentageScaleUp", "scaleDown", "percentageScaleDown", "statefulUpdateCapacity".
  • cronExpression - (Optional; Required if not using frequency) A valid cron expression. The cron is running in UTC time zone and is in Unix cron format.
  • startTime - (Optional; Format: ISO 8601) Set a start time for one time tasks.
  • frequency - (Optional; Required if not using cronExpression) The recurrence frequency to run this task. Supported values are "hourly", "daily", "weekly" and "continuous".
  • scaleTargetCapacity - (Optional) The desired number of instances the group should have.
  • scaleMinCapacity - (Optional) The minimum number of instances the group should have.
  • scaleMaxCapacity - (Optional) The maximum number of instances the group should have.
  • isEnabled - (Optional, Default: true) Setting the task to being enabled or disabled.
  • targetCapacity - (Optional; Only valid for statefulUpdateCapacity) The desired number of instances the group should have.
  • minCapacity - (Optional; Only valid for statefulUpdateCapacity) The minimum number of instances the group should have.
  • maxCapacity - (Optional; Only valid for statefulUpdateCapacity) The maximum number of instances the group should have.
  • batchSizePercentage - (Optional; Required when the taskType is "roll".) The percentage size of each batch in the scheduled deployment roll.
  • gracePeriod - (Optional) The period of time (seconds) to wait before checking a batch’s health after it’s deployment.
  • adjustment - (Optional; Min 1) The number of instances to add or remove.
  • adjustmentPercentage - (Optional; Min 1) The percentage of instances to add or remove.

Usage:

import * as pulumi from "@pulumi/pulumi";

constructor

new Beanstalk(name: string, args: BeanstalkArgs, opts?: pulumi.CustomResourceOptions)

Create a Beanstalk resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: BeanstalkState, opts?: pulumi.CustomResourceOptions): Beanstalk

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

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): obj is Beanstalk

Returns true if the given object is an instance of Beanstalk. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property beanstalkEnvironmentId

public beanstalkEnvironmentId: pulumi.Output<string | undefined>;

The id of an existing Beanstalk environment.

property beanstalkEnvironmentName

public beanstalkEnvironmentName: pulumi.Output<string | undefined>;

The name of an existing Beanstalk environment.

property deploymentPreferences

public deploymentPreferences: pulumi.Output<BeanstalkDeploymentPreferences | undefined>;

Preferences when performing a roll

property desiredCapacity

public desiredCapacity: pulumi.Output<number>;

The desired number of instances the group should have at any time.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property instanceTypesSpots

public instanceTypesSpots: pulumi.Output<string[]>;

One or more instance types. To maximize the availability of Spot instances, select as many instance types as possible.

property maintenance

public maintenance: pulumi.Output<string | undefined>;

property managedActions

public managedActions: pulumi.Output<BeanstalkManagedActions | undefined>;

Managed Actions parameters

property maxSize

public maxSize: pulumi.Output<number>;

The maximum number of instances the group should have at any time.

property minSize

public minSize: pulumi.Output<number>;

The minimum number of instances the group should have at any time.

property name

public name: pulumi.Output<string>;

The group name.

property product

public product: pulumi.Output<string>;

Operation system type. Valid values: "Linux/UNIX", "SUSE Linux", "Windows". For EC2 Classic instances: "Linux/UNIX (Amazon VPC)", "SUSE Linux (Amazon VPC)", "Windows (Amazon VPC)".

property region

public region: pulumi.Output<string>;

The AWS region your group will be created in. Cannot be changed after the group has been created.

property scheduledTasks

public scheduledTasks: pulumi.Output<BeanstalkScheduledTask[] | undefined>;

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource Elastigroup

class Elastigroup extends CustomResource

constructor

new Elastigroup(name: string, args: ElastigroupArgs, opts?: pulumi.CustomResourceOptions)

Create a Elastigroup resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ElastigroupState, opts?: pulumi.CustomResourceOptions): Elastigroup

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

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): obj is Elastigroup

Returns true if the given object is an instance of Elastigroup. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property availabilityZones

public availabilityZones: pulumi.Output<string[] | undefined>;

List of Strings of availability zones. When this parameter is set, subnetIds should be left unused. Note: availabilityZones naming syntax follows the convention availability-zone:subnet:placement-group-name. For example, to set an AZ in us-east-1 with subnet subnet-123456 and placement group ClusterI03, you would set: availabilityZones = ["us-east-1a:subnet-123456:ClusterI03"]

property blockDevicesMode

public blockDevicesMode: pulumi.Output<string | undefined>;

property capacityUnit

public capacityUnit: pulumi.Output<string>;

The capacity unit to launch instances by. If not specified, when choosing the weight unit, each instance will weight as the number of its vCPUs.

property cpuCredits

public cpuCredits: pulumi.Output<string | undefined>;

Controls how T3 instances are launched. Valid values: standard, unlimited.

property description

public description: pulumi.Output<string | undefined>;

The group description.

property desiredCapacity

public desiredCapacity: pulumi.Output<number | undefined>;

The desired number of instances the group should have at any time.

property drainingTimeout

public drainingTimeout: pulumi.Output<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.

property ebsBlockDevices

public ebsBlockDevices: pulumi.Output<ElastigroupEbsBlockDevice[] | undefined>;

property ebsOptimized

public ebsOptimized: pulumi.Output<boolean>;

Enable high bandwidth connectivity between instances and AWS’s Elastic Block Store (EBS). For instance types that are EBS-optimized by default this parameter will be ignored.

property elasticIps

public elasticIps: pulumi.Output<string[] | undefined>;

A list of AWS Elastic IP allocation IDs to associate to the group instances.

property elasticLoadBalancers

public elasticLoadBalancers: pulumi.Output<string[] | undefined>;

property enableMonitoring

public enableMonitoring: pulumi.Output<boolean | undefined>;

Indicates whether monitoring is enabled for the instance.

property ephemeralBlockDevices

public ephemeralBlockDevices: pulumi.Output<ElastigroupEphemeralBlockDevice[] | undefined>;

property fallbackToOndemand

public fallbackToOndemand: pulumi.Output<boolean>;

In a case of no Spot instances available, Elastigroup will launch on-demand instances instead.

property healthCheckGracePeriod

public healthCheckGracePeriod: pulumi.Output<number | undefined>;

The amount of time, in seconds, after the instance has launched to starts and check its health.

property healthCheckType

public healthCheckType: pulumi.Output<string | undefined>;

The service that will perform health checks for the instance. Valid values: "ELB", "HCS", "TARGET_GROUP", "MLB", "EC2", "MULTAI_TARGET_SET", "MLB_RUNTIME", "K8S_NODE", "NOMAD_NODE", "ECS_CLUSTER_INSTANCE".

property healthCheckUnhealthyDurationBeforeReplacement

public healthCheckUnhealthyDurationBeforeReplacement: pulumi.Output<number | undefined>;

The amount of time, in seconds, that we will wait before replacing an instance that is running and became unhealthy (this is only applicable for instances that were once healthy).

property iamInstanceProfile

public iamInstanceProfile: pulumi.Output<string | undefined>;

The ARN or name of an IAM instance profile to associate with launched instances.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property imageId

public imageId: pulumi.Output<string | undefined>;

The ID of the AMI used to launch the instance.

property instanceTypesOndemand

public instanceTypesOndemand: pulumi.Output<string>;

The type of instance determines your instance’s CPU capacity, memory and storage (e.g., m1.small, c1.xlarge).

property instanceTypesPreferredSpots

public instanceTypesPreferredSpots: pulumi.Output<string[] | undefined>;

Prioritize a subset of spot instance types. Must be a subset of the selected spot instance types.

property instanceTypesSpots

public instanceTypesSpots: pulumi.Output<string[]>;

One or more instance types.

property instanceTypesWeights

public instanceTypesWeights: pulumi.Output<ElastigroupInstanceTypesWeight[] | undefined>;

List of weights per instance type for weighted groups. Each object in the list should have the following attributes:

property integrationBeanstalk

public integrationBeanstalk: pulumi.Output<ElastigroupIntegrationBeanstalk | undefined>;

property integrationCodedeploy

public integrationCodedeploy: pulumi.Output<ElastigroupIntegrationCodedeploy | undefined>;

property integrationDockerSwarm

public integrationDockerSwarm: pulumi.Output<ElastigroupIntegrationDockerSwarm | undefined>;

property integrationEcs

public integrationEcs: pulumi.Output<ElastigroupIntegrationEcs | undefined>;

property integrationGitlab

public integrationGitlab: pulumi.Output<ElastigroupIntegrationGitlab | undefined>;

property integrationKubernetes

public integrationKubernetes: pulumi.Output<ElastigroupIntegrationKubernetes | undefined>;

property integrationMesosphere

public integrationMesosphere: pulumi.Output<ElastigroupIntegrationMesosphere | undefined>;

property integrationMultaiRuntime

public integrationMultaiRuntime: pulumi.Output<ElastigroupIntegrationMultaiRuntime | undefined>;

property integrationNomad

public integrationNomad: pulumi.Output<ElastigroupIntegrationNomad | undefined>;

property integrationRancher

public integrationRancher: pulumi.Output<ElastigroupIntegrationRancher | undefined>;

property integrationRoute53

public integrationRoute53: pulumi.Output<ElastigroupIntegrationRoute53 | undefined>;

property keyName

public keyName: pulumi.Output<string | undefined>;

The key name that should be used for the instance.

property lifetimePeriod

public lifetimePeriod: pulumi.Output<string | undefined>;

property maxSize

public maxSize: pulumi.Output<number>;

The maximum number of instances the group should have at any time.

property minSize

public minSize: pulumi.Output<number>;

The minimum number of instances the group should have at any time.

property multaiTargetSets

public multaiTargetSets: pulumi.Output<ElastigroupMultaiTargetSet[] | undefined>;

property name

public name: pulumi.Output<string>;

The group name.

property networkInterfaces

public networkInterfaces: pulumi.Output<ElastigroupNetworkInterface[] | undefined>;

property ondemandCount

public ondemandCount: pulumi.Output<number | undefined>;

Number of on demand instances to launch in the group. All other instances will be spot instances. When this parameter is set the spotPercentage parameter is being ignored.

property orientation

public orientation: pulumi.Output<string>;

Select a prediction strategy. Valid values: "balanced", "costOriented", "equalAzDistribution", "availabilityOriented".

property persistBlockDevices

public persistBlockDevices: pulumi.Output<boolean | undefined>;

property persistPrivateIp

public persistPrivateIp: pulumi.Output<boolean | undefined>;

property persistRootDevice

public persistRootDevice: pulumi.Output<boolean | undefined>;

property placementTenancy

public placementTenancy: pulumi.Output<string | undefined>;

Enable dedicated tenancy. Note: There is a flat hourly fee for each region in which dedicated tenancy is used.

property preferredAvailabilityZones

public preferredAvailabilityZones: pulumi.Output<string[] | undefined>;

The AZs to prioritize when launching Spot instances. If no markets are available in the Preferred AZs, Spot instances are launched in the non-preferred AZs. Note: Must be a sublist of availabilityZones and orientation value must not be "equalAzDistribution".

property privateIps

public privateIps: pulumi.Output<string[] | undefined>;

property product

public product: pulumi.Output<string>;

Operation system type. Valid values: "Linux/UNIX", "SUSE Linux", "Windows". For EC2 Classic instances: "Linux/UNIX (Amazon VPC)", "SUSE Linux (Amazon VPC)", "Windows (Amazon VPC)".

property region

public region: pulumi.Output<string | undefined>;

The AWS region your group will be created in. Note: This parameter is required if you specify subnets (through subnet_ids). This parameter is optional if you specify Availability Zones (through availability_zones).

property revertToSpot

public revertToSpot: pulumi.Output<ElastigroupRevertToSpot | undefined>;

Hold settings for strategy correction – replacing On-Demand for Spot instances. Supported Values: "never", "always", "timeWindow"

property scalingDownPolicies

public scalingDownPolicies: pulumi.Output<ElastigroupScalingDownPolicy[] | undefined>;

property scalingStrategies

public scalingStrategies: pulumi.Output<ElastigroupScalingStrategy[] | undefined>;

Set termination policy.

property scalingTargetPolicies

public scalingTargetPolicies: pulumi.Output<ElastigroupScalingTargetPolicy[] | undefined>;

property scalingUpPolicies

public scalingUpPolicies: pulumi.Output<ElastigroupScalingUpPolicy[] | undefined>;

property scheduledTasks

public scheduledTasks: pulumi.Output<ElastigroupScheduledTask[] | undefined>;

property securityGroups

public securityGroups: pulumi.Output<string[]>;

A list of associated security group IDS.

property shutdownScript

public shutdownScript: pulumi.Output<string | undefined>;

The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: Shutdown Script

property signals

public signals: pulumi.Output<ElastigroupSignal[] | undefined>;

property spotPercentage

public spotPercentage: pulumi.Output<number | undefined>;

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

property statefulDeallocation

public statefulDeallocation: pulumi.Output<ElastigroupStatefulDeallocation | undefined>;

property subnetIds

public subnetIds: pulumi.Output<string[] | undefined>;

List of Strings of subnet identifiers. Note: When this parameter is set, availabilityZones should be left unused.

property tags

public tags: pulumi.Output<ElastigroupTag[] | undefined>;

A key/value mapping of tags to assign to the resource.

property targetGroupArns

public targetGroupArns: pulumi.Output<string[] | undefined>;

property updatePolicy

public updatePolicy: pulumi.Output<ElastigroupUpdatePolicy | undefined>;

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property userData

public userData: pulumi.Output<string | undefined>;

The user data to provide when launching the instance.

property utilizeReservedInstances

public utilizeReservedInstances: pulumi.Output<boolean | undefined>;

In a case of any available reserved instances, Elastigroup will utilize them first before purchasing Spot instances.

property waitForCapacity

public waitForCapacity: pulumi.Output<number | undefined>;

Minimum number of instances in a ‘HEALTHY’ status that is required before continuing. This is ignored when updating with blue/green deployment. Cannot exceed desiredCapacity.

property waitForCapacityTimeout

public waitForCapacityTimeout: pulumi.Output<number | undefined>;

Time (seconds) to wait for instances to report a ‘HEALTHY’ status. Useful for plans with multiple dependencies that take some time to initialize. Leave undefined or set to 0 to indicate no wait. This is ignored when updating with blue/green deployment.

Resource ManagedInstance

class ManagedInstance extends CustomResource

constructor

new ManagedInstance(name: string, args: ManagedInstanceArgs, opts?: pulumi.CustomResourceOptions)

Create a ManagedInstance resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ManagedInstanceState, opts?: pulumi.CustomResourceOptions): ManagedInstance

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

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): obj is ManagedInstance

Returns true if the given object is an instance of ManagedInstance. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property autoHealing

public autoHealing: pulumi.Output<boolean | undefined>;

Enable the auto healing which auto replaces the instance in case the health check fails, default: “true”.

property blockDevicesMode

public blockDevicesMode: pulumi.Output<string | undefined>;

Determine the way we attach the data volumes to the data devices. Valid values: "reattach", "onLaunch". Default: "onLaunch".

property cpuCredits

public cpuCredits: pulumi.Output<string | undefined>;

cpuCredits can have one of two values: “unlimited”, “standard”. Default: unlimited

property description

public description: pulumi.Output<string | undefined>;

The ManagedInstance description.

property drainingTimeout

public drainingTimeout: pulumi.Output<number | undefined>;

The time in seconds to allow the instance be drained from incoming TCP connections and detached from ELB before terminating it, during a scale down operation.

property ebsOptimized

public ebsOptimized: pulumi.Output<boolean>;

Enable EBS optimization for supported instance which is not enabled by default. Note - additional charges will be applied. Default: false

property elasticIp

public elasticIp: pulumi.Output<string | undefined>;

Elastic IP Allocation Id to associate to the instance.

property enableMonitoring

public enableMonitoring: pulumi.Output<boolean | undefined>;

Describes whether instance Enhanced Monitoring is enabled. Default: false

property fallBackToOd

public fallBackToOd: pulumi.Output<boolean | undefined>;

property gracePeriod

public gracePeriod: pulumi.Output<number | undefined>;

The amount of time, in seconds, after the instance has launched to starts and check its health, default “120".

property healthCheckType

public healthCheckType: pulumi.Output<string | undefined>;

The service to use for the health check. Valid values: “EC2”, “ELB”, “TARGET_GROUP”, “MULTAI_TARGET_SET”. Default: “EC2”.

property iamInstanceProfile

public iamInstanceProfile: pulumi.Output<string | undefined>;

Set IAM profile to instance. Set only one of ARN or Name.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property imageId

public imageId: pulumi.Output<string>;

The ID of the image used to launch the instance.

property instanceTypes

public instanceTypes: pulumi.Output<string[]>;

Comma separated list of available instance types for instance.

property integrationRoute53

public integrationRoute53: pulumi.Output<ManagedInstanceIntegrationRoute53 | undefined>;

property keyPair

public keyPair: pulumi.Output<string | undefined>;

Specify a Key Pair to attach to the instances.

property lifeCycle

public lifeCycle: pulumi.Output<string | undefined>;

Set lifecycle, valid values: “spot”, “on_demand”. Default "spot".

property loadBalancers

public loadBalancers: pulumi.Output<ManagedInstanceLoadBalancer[] | undefined>;

property name

public name: pulumi.Output<string>;

The ManagedInstance name.

property networkInterfaces

public networkInterfaces: pulumi.Output<ManagedInstanceNetworkInterface[] | undefined>;

property optimizationWindows

public optimizationWindows: pulumi.Output<string[] | undefined>;

When performAt is ‘timeWindow’: must specify a list of ‘timeWindows’ with at least one time window Each string is in the format of - ddd:hh:mm-ddd:hh:mm ddd = day of week = Sun | Mon | Tue | Wed | Thu | Fri | Sat hh = hour 24 = 0 -23 mm = minute = 0 - 59.

property orientation

public orientation: pulumi.Output<string | undefined>;

Select a prediction strategy. Valid values: "balanced", "costOriented", "availabilityOriented", "cheapest". Default: "availabilityOriented".

property persistBlockDevices

public persistBlockDevices: pulumi.Output<boolean>;

Should the instance maintain its Data volumes.

property persistPrivateIp

public persistPrivateIp: pulumi.Output<boolean | undefined>;

Should the instance maintain its private IP.

property persistRootDevice

public persistRootDevice: pulumi.Output<boolean | undefined>;

Should the instance maintain its root device volumes.

property placementTenancy

public placementTenancy: pulumi.Output<string | undefined>;

Valid values: “default”, “dedicated” Default: default

property preferredType

public preferredType: pulumi.Output<string | undefined>;

Preferred instance types for the instance. We will automatically select optional similar instance types to ensure optimized cost efficiency

property privateIp

public privateIp: pulumi.Output<string | undefined>;

Private IP Allocation Id to associate to the instance.

property product

public product: pulumi.Output<string>;

Operation system type. Valid values: "Linux/UNIX", "SUSE Linux", "Windows", "Red Hat Enterprise Linux", "Linux/UNIX (Amazon VPC)", "SUSE Linux (Amazon VPC)", "Windows (Amazon VPC)", "Red Hat Enterprise Linux (Amazon VPC)".

property region

public region: pulumi.Output<string | undefined>;

The AWS region your group will be created in.

property revertToSpot

public revertToSpot: pulumi.Output<ManagedInstanceRevertToSpot | undefined>;

property scheduledTasks

public scheduledTasks: pulumi.Output<ManagedInstanceScheduledTask[] | undefined>;

property securityGroupIds

public securityGroupIds: pulumi.Output<string[] | undefined>;

One or more security group IDs.

property shutdownScript

public shutdownScript: pulumi.Output<string | undefined>;

The Base64-encoded shutdown script to execute prior to instance termination.

property subnetIds

public subnetIds: pulumi.Output<string[]>;

A comma-separated list of subnet identifiers for your instance.

property tags

public tags: pulumi.Output<ManagedInstanceTag[] | undefined>;

Set tags for the instance. Items should be unique.

property unhealthyDuration

public unhealthyDuration: pulumi.Output<number | undefined>;

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, default “120".

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property userData

public userData: pulumi.Output<string | undefined>;

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

property utilizeReservedInstances

public utilizeReservedInstances: pulumi.Output<boolean | undefined>;

In case of any available Reserved Instances, Managed Instance will utilize them before purchasing Spot instances. Default: "false".

property vpcId

public vpcId: pulumi.Output<string>;

Resource MrScalar

class MrScalar extends CustomResource

constructor

new MrScalar(name: string, args: MrScalarArgs, opts?: pulumi.CustomResourceOptions)

Create a MrScalar resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: MrScalarState, opts?: pulumi.CustomResourceOptions): MrScalar

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

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): obj is MrScalar

Returns true if the given object is an instance of MrScalar. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property additionalInfo

public additionalInfo: pulumi.Output<string | undefined>;

property additionalPrimarySecurityGroups

public additionalPrimarySecurityGroups: pulumi.Output<string[] | undefined>;

property additionalReplicaSecurityGroups

public additionalReplicaSecurityGroups: pulumi.Output<string[] | undefined>;

property applications

public applications: pulumi.Output<MrScalarApplication[] | undefined>;

property availabilityZones

public availabilityZones: pulumi.Output<string[] | undefined>;

property bootstrapActionsFiles

public bootstrapActionsFiles: pulumi.Output<MrScalarBootstrapActionsFile[] | undefined>;

property clusterId

public clusterId: pulumi.Output<string | undefined>;

The MrScaler cluster id.

property configurationsFiles

public configurationsFiles: pulumi.Output<MrScalarConfigurationsFile[] | undefined>;

property coreDesiredCapacity

public coreDesiredCapacity: pulumi.Output<number | undefined>;

property coreEbsBlockDevices

public coreEbsBlockDevices: pulumi.Output<MrScalarCoreEbsBlockDevice[] | undefined>;

property coreEbsOptimized

public coreEbsOptimized: pulumi.Output<boolean | undefined>;

property coreInstanceTypes

public coreInstanceTypes: pulumi.Output<string[] | undefined>;

property coreLifecycle

public coreLifecycle: pulumi.Output<string | undefined>;

property coreMaxSize

public coreMaxSize: pulumi.Output<number | undefined>;

property coreMinSize

public coreMinSize: pulumi.Output<number | undefined>;

property coreScalingDownPolicies

public coreScalingDownPolicies: pulumi.Output<MrScalarCoreScalingDownPolicy[] | undefined>;

property coreScalingUpPolicies

public coreScalingUpPolicies: pulumi.Output<MrScalarCoreScalingUpPolicy[] | undefined>;

property coreUnit

public coreUnit: pulumi.Output<string | undefined>;

property customAmiId

public customAmiId: pulumi.Output<string | undefined>;

property description

public description: pulumi.Output<string | undefined>;

The MrScaler description.

property ebsRootVolumeSize

public ebsRootVolumeSize: pulumi.Output<number | undefined>;

property ec2KeyName

public ec2KeyName: pulumi.Output<string | undefined>;

property exposeClusterId

public exposeClusterId: pulumi.Output<boolean | undefined>;

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property instanceWeights

public instanceWeights: pulumi.Output<MrScalarInstanceWeight[] | undefined>;

property jobFlowRole

public jobFlowRole: pulumi.Output<string | undefined>;

property keepJobFlowAlive

public keepJobFlowAlive: pulumi.Output<boolean | undefined>;

property logUri

public logUri: pulumi.Output<string | undefined>;

property managedPrimarySecurityGroup

public managedPrimarySecurityGroup: pulumi.Output<string | undefined>;

property managedReplicaSecurityGroup

public managedReplicaSecurityGroup: pulumi.Output<string | undefined>;

property masterEbsBlockDevices

public masterEbsBlockDevices: pulumi.Output<MrScalarMasterEbsBlockDevice[] | undefined>;

property masterEbsOptimized

public masterEbsOptimized: pulumi.Output<boolean | undefined>;

property masterInstanceTypes

public masterInstanceTypes: pulumi.Output<string[] | undefined>;

property masterLifecycle

public masterLifecycle: pulumi.Output<string | undefined>;

property name

public name: pulumi.Output<string>;

The MrScaler name.

property outputClusterId

public outputClusterId: pulumi.Output<string>;

property provisioningTimeout

public provisioningTimeout: pulumi.Output<MrScalarProvisioningTimeout | undefined>;

property region

public region: pulumi.Output<string | undefined>;

The MrScaler region.

property releaseLabel

public releaseLabel: pulumi.Output<string | undefined>;

property repoUpgradeOnBoot

public repoUpgradeOnBoot: pulumi.Output<string | undefined>;

property retries

public retries: pulumi.Output<number | undefined>;

property scheduledTasks

public scheduledTasks: pulumi.Output<MrScalarScheduledTask[] | undefined>;

property securityConfig

public securityConfig: pulumi.Output<string | undefined>;

property serviceAccessSecurityGroup

public serviceAccessSecurityGroup: pulumi.Output<string | undefined>;

property serviceRole

public serviceRole: pulumi.Output<string | undefined>;

property stepsFiles

public stepsFiles: pulumi.Output<MrScalarStepsFile[] | undefined>;

property strategy

public strategy: pulumi.Output<string>;

The MrScaler strategy. Allowed values are new clone and wrap.

property tags

public tags: pulumi.Output<MrScalarTag[] | undefined>;

property taskDesiredCapacity

public taskDesiredCapacity: pulumi.Output<number | undefined>;

property taskEbsBlockDevices

public taskEbsBlockDevices: pulumi.Output<MrScalarTaskEbsBlockDevice[] | undefined>;

property taskEbsOptimized

public taskEbsOptimized: pulumi.Output<boolean | undefined>;

property taskInstanceTypes

public taskInstanceTypes: pulumi.Output<string[] | undefined>;

property taskLifecycle

public taskLifecycle: pulumi.Output<string | undefined>;

property taskMaxSize

public taskMaxSize: pulumi.Output<number | undefined>;

property taskMinSize

public taskMinSize: pulumi.Output<number | undefined>;

property taskScalingDownPolicies

public taskScalingDownPolicies: pulumi.Output<MrScalarTaskScalingDownPolicy[] | undefined>;

property taskScalingUpPolicies

public taskScalingUpPolicies: pulumi.Output<MrScalarTaskScalingUpPolicy[] | undefined>;

property taskUnit

public taskUnit: pulumi.Output<string | undefined>;

property terminationPolicies

public terminationPolicies: pulumi.Output<MrScalarTerminationPolicy[] | undefined>;

Allows defining termination policies for EMR clusters based on CloudWatch Metrics.

property terminationProtected

public terminationProtected: pulumi.Output<boolean | undefined>;

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property visibleToAllUsers

public visibleToAllUsers: pulumi.Output<boolean | undefined>;

Resource Ocean

class Ocean extends CustomResource

Provides a Spotinst Ocean AWS resource.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as spotinst from "@pulumi/spotinst";

const example = new spotinst.aws.Ocean("example", {
    associatePublicIpAddress: true,
    controllerId: "fakeClusterId",
    desiredCapacity: 2,
    drainingTimeout: 120,
    ebsOptimized: true,
    // --- STRATEGY --------------------
    fallbackToOndemand: true,
    gracePeriod: 600,
    iamInstanceProfile: "iam-profile",
    // --- LAUNCH CONFIGURATION --------------
    imageId: "ami-123456",
    keyName: "fake key",
    loadBalancers: [
        {
            arn: "arn:aws:elasticloadbalancing:us-west-2:fake-arn",
            type: "TARGET_GROUP",
        },
        {
            name: "AntonK",
            type: "CLASSIC",
        },
    ],
    maxSize: 2,
    minSize: 1,
    monitoring: true,
    region: "us-west-2",
    rootVolumeSize: 20,
    securityGroups: ["sg-987654321"],
    subnetIds: ["subnet-123456789"],
    tags: [{
        key: "fakeKey",
        value: "fakeValue",
    }],
    userData: "echo hello world",
    utilizeReservedInstances: false,
    whitelists: [
        "t1.micro",
        "m1.small",
    ],
});

Auto Scaler

  • autoscaler - (Optional) Describes the Ocean Kubernetes autoscaler.
  • autoscaleIsEnabled - (Optional, Default: true) Enable the Ocean Kubernetes autoscaler.
  • autoscaleIsAutoConfig - (Optional, Default: true) Automatically configure and optimize headroom resources.
  • autoscaleCooldown - (Optional, Default: null) Cooldown period between scaling actions.
  • autoHeadroomPercentage - (Optional) Set the auto headroom percentage (a number in the range [0, 200]) which controls the percentage of headroom from the cluster. Relevant only when isAutoConfig toggled on.
  • autoscaleHeadroom - (Optional) Spare resource capacity management enabling fast assignment of Pods without waiting for new resources to launch.
  • cpuPerUnit - (Optional) Optionally configure the number of CPUs to allocate the headroom. CPUs are denoted in millicores, where 1000 millicores = 1 vCPU.
  • gpuPerUnit - (Optional) Optionally configure the number of GPUS to allocate the headroom.
  • memoryPerUnit - (Optional) Optionally configure the amount of memory (MB) to allocate the headroom.
  • numOfUnits - (Optional) The number of units to retain as headroom, where each unit has the defined headroom CPU and memory.
  • autoscaleDown - (Optional) Auto Scaling scale down operations.
  • maxScaleDownPercentage - (Optional) Would represent the maximum % to scale-down. Number between 1-100.
  • resourceLimits - (Optional) Optionally set upper and lower bounds on the resource usage of the cluster.
  • maxVcpu - (Optional) The maximum cpu in vCPU units that can be allocated to the cluster.
  • maxMemoryGib - (Optional) The maximum memory in GiB units that can be allocated to the cluster.
import * as pulumi from "@pulumi/pulumi";

Update Policy

  • updatePolicy - (Optional)
    • shouldRoll - (Required) Enables the roll.
    • rollConfig - (Required) While used, you can control whether the group should perform a deployment after an update to the configuration.
      • batchSizePercentage - (Required) Sets the percentage of the instances to deploy in each batch.
import * as pulumi from "@pulumi/pulumi";

scheduled task

  • scheduledTask - (Optional) Set scheduling object.
    • shutdownHours - (Optional) Set shutdown hours for cluster object.
      • isEnabled - (Optional) Flag to enable / disable the shutdown hours. Example: True
      • timeWindows - (Required) Set time windows for shutdown hours. specify a list of ‘timeWindows’ with at least one time window Each string is in the format of - ddd:hh:mm-ddd:hh:mm 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 on cluster.scheduling.isEnabled = True. API Times are in UTC Example: Fri:15:30-Wed:14:30
    • tasks - (Optional) The scheduling tasks for the cluster.
      • isEnabled - (Required) Describes whether the task is enabled. When true the task should run when false it should not run. Required for cluster.scheduling.tasks object.
      • cronExpression - (Required) A valid cron expression. For example : “ * * * * * “.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 * * *
      • taskType - (Required) Valid values: “clusterRoll”. Required for cluster.scheduling.tasks object Example: clusterRoll
import * as pulumi from "@pulumi/pulumi";

constructor

new Ocean(name: string, args: OceanArgs, opts?: pulumi.CustomResourceOptions)

Create a Ocean resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: OceanState, opts?: pulumi.CustomResourceOptions): Ocean

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

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): obj is Ocean

Returns true if the given object is an instance of Ocean. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property associatePublicIpAddress

public associatePublicIpAddress: pulumi.Output<boolean | undefined>;

Configure public IP address allocation.

property autoscaler

public autoscaler: pulumi.Output<OceanAutoscaler | undefined>;

property blacklists

public blacklists: pulumi.Output<string[] | undefined>;

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

property controllerId

public controllerId: pulumi.Output<string | undefined>;

The ocean cluster identifier. Example: ocean.k8s

property desiredCapacity

public desiredCapacity: pulumi.Output<number>;

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

property drainingTimeout

public drainingTimeout: pulumi.Output<number | undefined>;

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.

property ebsOptimized

public ebsOptimized: pulumi.Output<boolean | undefined>;

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.

property fallbackToOndemand

public fallbackToOndemand: pulumi.Output<boolean | undefined>;

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

property gracePeriod

public gracePeriod: pulumi.Output<number | undefined>;

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

property iamInstanceProfile

public iamInstanceProfile: pulumi.Output<string | undefined>;

The instance profile iam role.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property imageId

public imageId: pulumi.Output<string | undefined>;

ID of the image used to launch the instances.

property keyName

public keyName: pulumi.Output<string | undefined>;

The key pair to attach the instances.

property loadBalancers

public loadBalancers: pulumi.Output<OceanLoadBalancer[] | undefined>;
  • Array of load balancer objects to add to ocean cluster

property maxSize

public maxSize: pulumi.Output<number | undefined>;

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

property minSize

public minSize: pulumi.Output<number>;

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

property monitoring

public monitoring: pulumi.Output<boolean | undefined>;

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

property name

public name: pulumi.Output<string>;

Required if type is set to CLASSIC

property region

public region: pulumi.Output<string | undefined>;

The region the cluster will run in.

property rootVolumeSize

public rootVolumeSize: pulumi.Output<number | undefined>;

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

property scheduledTasks

public scheduledTasks: pulumi.Output<OceanScheduledTask[] | undefined>;

property securityGroups

public securityGroups: pulumi.Output<string[]>;

One or more security group ids.

property spotPercentage

public spotPercentage: pulumi.Output<number | undefined>;

property subnetIds

public subnetIds: pulumi.Output<string[]>;

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

property tags

public tags: pulumi.Output<OceanTag[] | undefined>;

Optionally adds tags to instances launched in an Ocean cluster.

property updatePolicy

public updatePolicy: pulumi.Output<OceanUpdatePolicy | undefined>;

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property userData

public userData: pulumi.Output<string | undefined>;

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

property utilizeReservedInstances

public utilizeReservedInstances: pulumi.Output<boolean | undefined>;

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

property whitelists

public whitelists: pulumi.Output<string[] | undefined>;

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

Resource OceanLaunchSpec

class OceanLaunchSpec extends CustomResource

Provides a custom Spotinst Ocean AWS Launch Spec resource.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as spotinst from "@pulumi/spotinst";

const example = new spotinst.aws.OceanLaunchSpec("example", {
    autoscaleHeadrooms: [{
        cpuPerUnit: 1000,
        gpuPerUnit: 0,
        memoryPerUnit: 2048,
        numOfUnits: 5,
    }],
    elasticIpPools: [{
        tagSelector: {
            tagKey: "key",
            tagValue: "value",
        },
    }],
    iamInstanceProfile: "iam-profile",
    imageId: "ami-123456",
    labels: [{
        key: "fakeKey",
        value: "fakeValue",
    }],
    oceanId: "o-123456",
    rootVolumeSize: 30,
    securityGroups: ["sg-987654321"],
    subnetIds: ["subnet-1234"],
    tags: [{
        key: "Env",
        value: "production",
    }],
    taints: [{
        effect: "NoExecute",
        key: "taint key updated",
        value: "taint value updated",
    }],
    userData: "echo hello world",
});

constructor

new OceanLaunchSpec(name: string, args: OceanLaunchSpecArgs, opts?: pulumi.CustomResourceOptions)

Create a OceanLaunchSpec resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: OceanLaunchSpecState, opts?: pulumi.CustomResourceOptions): OceanLaunchSpec

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

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): obj is OceanLaunchSpec

Returns true if the given object is an instance of OceanLaunchSpec. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property autoscaleHeadrooms

public autoscaleHeadrooms: pulumi.Output<OceanLaunchSpecAutoscaleHeadroom[] | undefined>;

Set custom headroom per launch spec. provide list of headrooms object.

property elasticIpPools

public elasticIpPools: pulumi.Output<OceanLaunchSpecElasticIpPool[] | undefined>;

Assign an Elastic IP to the instances spun by the launch spec. Can be null.

property iamInstanceProfile

public iamInstanceProfile: pulumi.Output<string | undefined>;

The ARN or name of an IAM instance profile to associate with launched instances.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property imageId

public imageId: pulumi.Output<string | undefined>;

ID of the image used to launch the instances.

property labels

public labels: pulumi.Output<OceanLaunchSpecLabel[] | undefined>;

Optionally adds labels to instances launched in an Ocean cluster.

property name

public name: pulumi.Output<string>;

Set Launch Specification name

property oceanId

public oceanId: pulumi.Output<string>;

The ocean cluster you wish to

property rootVolumeSize

public rootVolumeSize: pulumi.Output<number | undefined>;

Set root volume size (in GB).

property securityGroups

public securityGroups: pulumi.Output<string[] | undefined>;

Optionally adds security group IDs.

property subnetIds

public subnetIds: pulumi.Output<string[] | undefined>;

Set subnets in launchSpec. Each element in array should be subnet ID.

property tags

public tags: pulumi.Output<OceanLaunchSpecTag[] | undefined>;

A key/value mapping of tags to assign to the resource.

property taints

public taints: pulumi.Output<OceanLaunchSpecTaint[] | undefined>;

Optionally adds labels to instances launched in an Ocean cluster.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property userData

public userData: pulumi.Output<string | undefined>;

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

Others

interface BeanstalkArgs

interface BeanstalkArgs

The set of arguments for constructing a Beanstalk resource.

property beanstalkEnvironmentId

beanstalkEnvironmentId?: pulumi.Input<string>;

The id of an existing Beanstalk environment.

property beanstalkEnvironmentName

beanstalkEnvironmentName?: pulumi.Input<string>;

The name of an existing Beanstalk environment.

property deploymentPreferences

deploymentPreferences?: pulumi.Input<BeanstalkDeploymentPreferences>;

Preferences when performing a roll

property desiredCapacity

desiredCapacity: pulumi.Input<number>;

The desired number of instances the group should have at any time.

property instanceTypesSpots

instanceTypesSpots: pulumi.Input<pulumi.Input<string>[]>;

One or more instance types. To maximize the availability of Spot instances, select as many instance types as possible.

property maintenance

maintenance?: pulumi.Input<string>;

property managedActions

managedActions?: pulumi.Input<BeanstalkManagedActions>;

Managed Actions parameters

property maxSize

maxSize: pulumi.Input<number>;

The maximum number of instances the group should have at any time.

property minSize

minSize: pulumi.Input<number>;

The minimum number of instances the group should have at any time.

property name

name?: pulumi.Input<string>;

The group name.

property product

product: pulumi.Input<string>;

Operation system type. Valid values: "Linux/UNIX", "SUSE Linux", "Windows". For EC2 Classic instances: "Linux/UNIX (Amazon VPC)", "SUSE Linux (Amazon VPC)", "Windows (Amazon VPC)".

property region

region: pulumi.Input<string>;

The AWS region your group will be created in. Cannot be changed after the group has been created.

property scheduledTasks

scheduledTasks?: pulumi.Input<pulumi.Input<BeanstalkScheduledTask>[]>;

interface BeanstalkState

interface BeanstalkState

Input properties used for looking up and filtering Beanstalk resources.

property beanstalkEnvironmentId

beanstalkEnvironmentId?: pulumi.Input<string>;

The id of an existing Beanstalk environment.

property beanstalkEnvironmentName

beanstalkEnvironmentName?: pulumi.Input<string>;

The name of an existing Beanstalk environment.

property deploymentPreferences

deploymentPreferences?: pulumi.Input<BeanstalkDeploymentPreferences>;

Preferences when performing a roll

property desiredCapacity

desiredCapacity?: pulumi.Input<number>;

The desired number of instances the group should have at any time.

property instanceTypesSpots

instanceTypesSpots?: pulumi.Input<pulumi.Input<string>[]>;

One or more instance types. To maximize the availability of Spot instances, select as many instance types as possible.

property maintenance

maintenance?: pulumi.Input<string>;

property managedActions

managedActions?: pulumi.Input<BeanstalkManagedActions>;

Managed Actions parameters

property maxSize

maxSize?: pulumi.Input<number>;

The maximum number of instances the group should have at any time.

property minSize

minSize?: pulumi.Input<number>;

The minimum number of instances the group should have at any time.

property name

name?: pulumi.Input<string>;

The group name.

property product

product?: pulumi.Input<string>;

Operation system type. Valid values: "Linux/UNIX", "SUSE Linux", "Windows". For EC2 Classic instances: "Linux/UNIX (Amazon VPC)", "SUSE Linux (Amazon VPC)", "Windows (Amazon VPC)".

property region

region?: pulumi.Input<string>;

The AWS region your group will be created in. Cannot be changed after the group has been created.

property scheduledTasks

scheduledTasks?: pulumi.Input<pulumi.Input<BeanstalkScheduledTask>[]>;

interface ElastigroupArgs

interface ElastigroupArgs

The set of arguments for constructing a Elastigroup resource.

property availabilityZones

availabilityZones?: pulumi.Input<pulumi.Input<string>[]>;

List of Strings of availability zones. When this parameter is set, subnetIds should be left unused. Note: availabilityZones naming syntax follows the convention availability-zone:subnet:placement-group-name. For example, to set an AZ in us-east-1 with subnet subnet-123456 and placement group ClusterI03, you would set: availabilityZones = ["us-east-1a:subnet-123456:ClusterI03"]

property blockDevicesMode

blockDevicesMode?: pulumi.Input<string>;

property capacityUnit

capacityUnit?: pulumi.Input<string>;

The capacity unit to launch instances by. If not specified, when choosing the weight unit, each instance will weight as the number of its vCPUs.

property cpuCredits

cpuCredits?: pulumi.Input<string>;

Controls how T3 instances are launched. Valid values: standard, unlimited.

property description

description?: pulumi.Input<string>;

The group description.

property desiredCapacity

desiredCapacity?: pulumi.Input<number>;

The desired number of instances the group should have at any time.

property drainingTimeout

drainingTimeout?: pulumi.Input<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.

property ebsBlockDevices

ebsBlockDevices?: pulumi.Input<pulumi.Input<ElastigroupEbsBlockDevice>[]>;

property ebsOptimized

ebsOptimized?: pulumi.Input<boolean>;

Enable high bandwidth connectivity between instances and AWS’s Elastic Block Store (EBS). For instance types that are EBS-optimized by default this parameter will be ignored.

property elasticIps

elasticIps?: pulumi.Input<pulumi.Input<string>[]>;

A list of AWS Elastic IP allocation IDs to associate to the group instances.

property elasticLoadBalancers

elasticLoadBalancers?: pulumi.Input<pulumi.Input<string>[]>;

property enableMonitoring

enableMonitoring?: pulumi.Input<boolean>;

Indicates whether monitoring is enabled for the instance.

property ephemeralBlockDevices

ephemeralBlockDevices?: pulumi.Input<pulumi.Input<ElastigroupEphemeralBlockDevice>[]>;

property fallbackToOndemand

fallbackToOndemand: pulumi.Input<boolean>;

In a case of no Spot instances available, Elastigroup will launch on-demand instances instead.

property healthCheckGracePeriod

healthCheckGracePeriod?: pulumi.Input<number>;

The amount of time, in seconds, after the instance has launched to starts and check its health.

property healthCheckType

healthCheckType?: pulumi.Input<string>;

The service that will perform health checks for the instance. Valid values: "ELB", "HCS", "TARGET_GROUP", "MLB", "EC2", "MULTAI_TARGET_SET", "MLB_RUNTIME", "K8S_NODE", "NOMAD_NODE", "ECS_CLUSTER_INSTANCE".

property healthCheckUnhealthyDurationBeforeReplacement

healthCheckUnhealthyDurationBeforeReplacement?: pulumi.Input<number>;

The amount of time, in seconds, that we will wait before replacing an instance that is running and became unhealthy (this is only applicable for instances that were once healthy).

property iamInstanceProfile

iamInstanceProfile?: pulumi.Input<string>;

The ARN or name of an IAM instance profile to associate with launched instances.

property imageId

imageId?: pulumi.Input<string>;

The ID of the AMI used to launch the instance.

property instanceTypesOndemand

instanceTypesOndemand: pulumi.Input<string>;

The type of instance determines your instance’s CPU capacity, memory and storage (e.g., m1.small, c1.xlarge).

property instanceTypesPreferredSpots

instanceTypesPreferredSpots?: pulumi.Input<pulumi.Input<string>[]>;

Prioritize a subset of spot instance types. Must be a subset of the selected spot instance types.

property instanceTypesSpots

instanceTypesSpots: pulumi.Input<pulumi.Input<string>[]>;

One or more instance types.

property instanceTypesWeights

instanceTypesWeights?: pulumi.Input<pulumi.Input<ElastigroupInstanceTypesWeight>[]>;

List of weights per instance type for weighted groups. Each object in the list should have the following attributes:

property integrationBeanstalk

integrationBeanstalk?: pulumi.Input<ElastigroupIntegrationBeanstalk>;

property integrationCodedeploy

integrationCodedeploy?: pulumi.Input<ElastigroupIntegrationCodedeploy>;

property integrationDockerSwarm

integrationDockerSwarm?: pulumi.Input<ElastigroupIntegrationDockerSwarm>;

property integrationEcs

integrationEcs?: pulumi.Input<ElastigroupIntegrationEcs>;

property integrationGitlab

integrationGitlab?: pulumi.Input<ElastigroupIntegrationGitlab>;

property integrationKubernetes

integrationKubernetes?: pulumi.Input<ElastigroupIntegrationKubernetes>;

property integrationMesosphere

integrationMesosphere?: pulumi.Input<ElastigroupIntegrationMesosphere>;

property integrationMultaiRuntime

integrationMultaiRuntime?: pulumi.Input<ElastigroupIntegrationMultaiRuntime>;

property integrationNomad

integrationNomad?: pulumi.Input<ElastigroupIntegrationNomad>;

property integrationRancher

integrationRancher?: pulumi.Input<ElastigroupIntegrationRancher>;

property integrationRoute53

integrationRoute53?: pulumi.Input<ElastigroupIntegrationRoute53>;

property keyName

keyName?: pulumi.Input<string>;

The key name that should be used for the instance.

property lifetimePeriod

lifetimePeriod?: pulumi.Input<string>;

property maxSize

maxSize?: pulumi.Input<number>;

The maximum number of instances the group should have at any time.

property minSize

minSize?: pulumi.Input<number>;

The minimum number of instances the group should have at any time.

property multaiTargetSets

multaiTargetSets?: pulumi.Input<pulumi.Input<ElastigroupMultaiTargetSet>[]>;

property name

name?: pulumi.Input<string>;

The group name.

property networkInterfaces

networkInterfaces?: pulumi.Input<pulumi.Input<ElastigroupNetworkInterface>[]>;

property ondemandCount

ondemandCount?: pulumi.Input<number>;

Number of on demand instances to launch in the group. All other instances will be spot instances. When this parameter is set the spotPercentage parameter is being ignored.

property orientation

orientation: pulumi.Input<string>;

Select a prediction strategy. Valid values: "balanced", "costOriented", "equalAzDistribution", "availabilityOriented".

property persistBlockDevices

persistBlockDevices?: pulumi.Input<boolean>;

property persistPrivateIp

persistPrivateIp?: pulumi.Input<boolean>;

property persistRootDevice

persistRootDevice?: pulumi.Input<boolean>;

property placementTenancy

placementTenancy?: pulumi.Input<string>;

Enable dedicated tenancy. Note: There is a flat hourly fee for each region in which dedicated tenancy is used.

property preferredAvailabilityZones

preferredAvailabilityZones?: pulumi.Input<pulumi.Input<string>[]>;

The AZs to prioritize when launching Spot instances. If no markets are available in the Preferred AZs, Spot instances are launched in the non-preferred AZs. Note: Must be a sublist of availabilityZones and orientation value must not be "equalAzDistribution".

property privateIps

privateIps?: pulumi.Input<pulumi.Input<string>[]>;

property product

product: pulumi.Input<string>;

Operation system type. Valid values: "Linux/UNIX", "SUSE Linux", "Windows". For EC2 Classic instances: "Linux/UNIX (Amazon VPC)", "SUSE Linux (Amazon VPC)", "Windows (Amazon VPC)".

property region

region?: pulumi.Input<string>;

The AWS region your group will be created in. Note: This parameter is required if you specify subnets (through subnet_ids). This parameter is optional if you specify Availability Zones (through availability_zones).

property revertToSpot

revertToSpot?: pulumi.Input<ElastigroupRevertToSpot>;

Hold settings for strategy correction – replacing On-Demand for Spot instances. Supported Values: "never", "always", "timeWindow"

property scalingDownPolicies

scalingDownPolicies?: pulumi.Input<pulumi.Input<ElastigroupScalingDownPolicy>[]>;

property scalingStrategies

scalingStrategies?: pulumi.Input<pulumi.Input<ElastigroupScalingStrategy>[]>;

Set termination policy.

property scalingTargetPolicies

scalingTargetPolicies?: pulumi.Input<pulumi.Input<ElastigroupScalingTargetPolicy>[]>;

property scalingUpPolicies

scalingUpPolicies?: pulumi.Input<pulumi.Input<ElastigroupScalingUpPolicy>[]>;

property scheduledTasks

scheduledTasks?: pulumi.Input<pulumi.Input<ElastigroupScheduledTask>[]>;

property securityGroups

securityGroups: pulumi.Input<pulumi.Input<string>[]>;

A list of associated security group IDS.

property shutdownScript

shutdownScript?: pulumi.Input<string>;

The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: Shutdown Script

property signals

signals?: pulumi.Input<pulumi.Input<ElastigroupSignal>[]>;

property spotPercentage

spotPercentage?: pulumi.Input<number>;

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

property statefulDeallocation

statefulDeallocation?: pulumi.Input<ElastigroupStatefulDeallocation>;

property subnetIds

subnetIds?: pulumi.Input<pulumi.Input<string>[]>;

List of Strings of subnet identifiers. Note: When this parameter is set, availabilityZones should be left unused.

property tags

tags?: pulumi.Input<pulumi.Input<ElastigroupTag>[]>;

A key/value mapping of tags to assign to the resource.

property targetGroupArns

targetGroupArns?: pulumi.Input<pulumi.Input<string>[]>;

property updatePolicy

updatePolicy?: pulumi.Input<ElastigroupUpdatePolicy>;

property userData

userData?: pulumi.Input<string>;

The user data to provide when launching the instance.

property utilizeReservedInstances

utilizeReservedInstances?: pulumi.Input<boolean>;

In a case of any available reserved instances, Elastigroup will utilize them first before purchasing Spot instances.

property waitForCapacity

waitForCapacity?: pulumi.Input<number>;

Minimum number of instances in a ‘HEALTHY’ status that is required before continuing. This is ignored when updating with blue/green deployment. Cannot exceed desiredCapacity.

property waitForCapacityTimeout

waitForCapacityTimeout?: pulumi.Input<number>;

Time (seconds) to wait for instances to report a ‘HEALTHY’ status. Useful for plans with multiple dependencies that take some time to initialize. Leave undefined or set to 0 to indicate no wait. This is ignored when updating with blue/green deployment.

interface ElastigroupState

interface ElastigroupState

Input properties used for looking up and filtering Elastigroup resources.

property availabilityZones

availabilityZones?: pulumi.Input<pulumi.Input<string>[]>;

List of Strings of availability zones. When this parameter is set, subnetIds should be left unused. Note: availabilityZones naming syntax follows the convention availability-zone:subnet:placement-group-name. For example, to set an AZ in us-east-1 with subnet subnet-123456 and placement group ClusterI03, you would set: availabilityZones = ["us-east-1a:subnet-123456:ClusterI03"]

property blockDevicesMode

blockDevicesMode?: pulumi.Input<string>;

property capacityUnit

capacityUnit?: pulumi.Input<string>;

The capacity unit to launch instances by. If not specified, when choosing the weight unit, each instance will weight as the number of its vCPUs.

property cpuCredits

cpuCredits?: pulumi.Input<string>;

Controls how T3 instances are launched. Valid values: standard, unlimited.

property description

description?: pulumi.Input<string>;

The group description.

property desiredCapacity

desiredCapacity?: pulumi.Input<number>;

The desired number of instances the group should have at any time.

property drainingTimeout

drainingTimeout?: pulumi.Input<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.

property ebsBlockDevices

ebsBlockDevices?: pulumi.Input<pulumi.Input<ElastigroupEbsBlockDevice>[]>;

property ebsOptimized

ebsOptimized?: pulumi.Input<boolean>;

Enable high bandwidth connectivity between instances and AWS’s Elastic Block Store (EBS). For instance types that are EBS-optimized by default this parameter will be ignored.

property elasticIps

elasticIps?: pulumi.Input<pulumi.Input<string>[]>;

A list of AWS Elastic IP allocation IDs to associate to the group instances.

property elasticLoadBalancers

elasticLoadBalancers?: pulumi.Input<pulumi.Input<string>[]>;

property enableMonitoring

enableMonitoring?: pulumi.Input<boolean>;

Indicates whether monitoring is enabled for the instance.

property ephemeralBlockDevices

ephemeralBlockDevices?: pulumi.Input<pulumi.Input<ElastigroupEphemeralBlockDevice>[]>;

property fallbackToOndemand

fallbackToOndemand?: pulumi.Input<boolean>;

In a case of no Spot instances available, Elastigroup will launch on-demand instances instead.

property healthCheckGracePeriod

healthCheckGracePeriod?: pulumi.Input<number>;

The amount of time, in seconds, after the instance has launched to starts and check its health.

property healthCheckType

healthCheckType?: pulumi.Input<string>;

The service that will perform health checks for the instance. Valid values: "ELB", "HCS", "TARGET_GROUP", "MLB", "EC2", "MULTAI_TARGET_SET", "MLB_RUNTIME", "K8S_NODE", "NOMAD_NODE", "ECS_CLUSTER_INSTANCE".

property healthCheckUnhealthyDurationBeforeReplacement

healthCheckUnhealthyDurationBeforeReplacement?: pulumi.Input<number>;

The amount of time, in seconds, that we will wait before replacing an instance that is running and became unhealthy (this is only applicable for instances that were once healthy).

property iamInstanceProfile

iamInstanceProfile?: pulumi.Input<string>;

The ARN or name of an IAM instance profile to associate with launched instances.

property imageId

imageId?: pulumi.Input<string>;

The ID of the AMI used to launch the instance.

property instanceTypesOndemand

instanceTypesOndemand?: pulumi.Input<string>;

The type of instance determines your instance’s CPU capacity, memory and storage (e.g., m1.small, c1.xlarge).

property instanceTypesPreferredSpots

instanceTypesPreferredSpots?: pulumi.Input<pulumi.Input<string>[]>;

Prioritize a subset of spot instance types. Must be a subset of the selected spot instance types.

property instanceTypesSpots

instanceTypesSpots?: pulumi.Input<pulumi.Input<string>[]>;

One or more instance types.

property instanceTypesWeights

instanceTypesWeights?: pulumi.Input<pulumi.Input<ElastigroupInstanceTypesWeight>[]>;

List of weights per instance type for weighted groups. Each object in the list should have the following attributes:

property integrationBeanstalk

integrationBeanstalk?: pulumi.Input<ElastigroupIntegrationBeanstalk>;

property integrationCodedeploy

integrationCodedeploy?: pulumi.Input<ElastigroupIntegrationCodedeploy>;

property integrationDockerSwarm

integrationDockerSwarm?: pulumi.Input<ElastigroupIntegrationDockerSwarm>;

property integrationEcs

integrationEcs?: pulumi.Input<ElastigroupIntegrationEcs>;

property integrationGitlab

integrationGitlab?: pulumi.Input<ElastigroupIntegrationGitlab>;

property integrationKubernetes

integrationKubernetes?: pulumi.Input<ElastigroupIntegrationKubernetes>;

property integrationMesosphere

integrationMesosphere?: pulumi.Input<ElastigroupIntegrationMesosphere>;

property integrationMultaiRuntime

integrationMultaiRuntime?: pulumi.Input<ElastigroupIntegrationMultaiRuntime>;

property integrationNomad

integrationNomad?: pulumi.Input<ElastigroupIntegrationNomad>;

property integrationRancher

integrationRancher?: pulumi.Input<ElastigroupIntegrationRancher>;

property integrationRoute53

integrationRoute53?: pulumi.Input<ElastigroupIntegrationRoute53>;

property keyName

keyName?: pulumi.Input<string>;

The key name that should be used for the instance.

property lifetimePeriod

lifetimePeriod?: pulumi.Input<string>;

property maxSize

maxSize?: pulumi.Input<number>;

The maximum number of instances the group should have at any time.

property minSize

minSize?: pulumi.Input<number>;

The minimum number of instances the group should have at any time.

property multaiTargetSets

multaiTargetSets?: pulumi.Input<pulumi.Input<ElastigroupMultaiTargetSet>[]>;

property name

name?: pulumi.Input<string>;

The group name.

property networkInterfaces

networkInterfaces?: pulumi.Input<pulumi.Input<ElastigroupNetworkInterface>[]>;

property ondemandCount

ondemandCount?: pulumi.Input<number>;

Number of on demand instances to launch in the group. All other instances will be spot instances. When this parameter is set the spotPercentage parameter is being ignored.

property orientation

orientation?: pulumi.Input<string>;

Select a prediction strategy. Valid values: "balanced", "costOriented", "equalAzDistribution", "availabilityOriented".

property persistBlockDevices

persistBlockDevices?: pulumi.Input<boolean>;

property persistPrivateIp

persistPrivateIp?: pulumi.Input<boolean>;

property persistRootDevice

persistRootDevice?: pulumi.Input<boolean>;

property placementTenancy

placementTenancy?: pulumi.Input<string>;

Enable dedicated tenancy. Note: There is a flat hourly fee for each region in which dedicated tenancy is used.

property preferredAvailabilityZones

preferredAvailabilityZones?: pulumi.Input<pulumi.Input<string>[]>;

The AZs to prioritize when launching Spot instances. If no markets are available in the Preferred AZs, Spot instances are launched in the non-preferred AZs. Note: Must be a sublist of availabilityZones and orientation value must not be "equalAzDistribution".

property privateIps

privateIps?: pulumi.Input<pulumi.Input<string>[]>;

property product

product?: pulumi.Input<string>;

Operation system type. Valid values: "Linux/UNIX", "SUSE Linux", "Windows". For EC2 Classic instances: "Linux/UNIX (Amazon VPC)", "SUSE Linux (Amazon VPC)", "Windows (Amazon VPC)".

property region

region?: pulumi.Input<string>;

The AWS region your group will be created in. Note: This parameter is required if you specify subnets (through subnet_ids). This parameter is optional if you specify Availability Zones (through availability_zones).

property revertToSpot

revertToSpot?: pulumi.Input<ElastigroupRevertToSpot>;

Hold settings for strategy correction – replacing On-Demand for Spot instances. Supported Values: "never", "always", "timeWindow"

property scalingDownPolicies

scalingDownPolicies?: pulumi.Input<pulumi.Input<ElastigroupScalingDownPolicy>[]>;

property scalingStrategies

scalingStrategies?: pulumi.Input<pulumi.Input<ElastigroupScalingStrategy>[]>;

Set termination policy.

property scalingTargetPolicies

scalingTargetPolicies?: pulumi.Input<pulumi.Input<ElastigroupScalingTargetPolicy>[]>;

property scalingUpPolicies

scalingUpPolicies?: pulumi.Input<pulumi.Input<ElastigroupScalingUpPolicy>[]>;

property scheduledTasks

scheduledTasks?: pulumi.Input<pulumi.Input<ElastigroupScheduledTask>[]>;

property securityGroups

securityGroups?: pulumi.Input<pulumi.Input<string>[]>;

A list of associated security group IDS.

property shutdownScript

shutdownScript?: pulumi.Input<string>;

The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: Shutdown Script

property signals

signals?: pulumi.Input<pulumi.Input<ElastigroupSignal>[]>;

property spotPercentage

spotPercentage?: pulumi.Input<number>;

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

property statefulDeallocation

statefulDeallocation?: pulumi.Input<ElastigroupStatefulDeallocation>;

property subnetIds

subnetIds?: pulumi.Input<pulumi.Input<string>[]>;

List of Strings of subnet identifiers. Note: When this parameter is set, availabilityZones should be left unused.

property tags

tags?: pulumi.Input<pulumi.Input<ElastigroupTag>[]>;

A key/value mapping of tags to assign to the resource.

property targetGroupArns

targetGroupArns?: pulumi.Input<pulumi.Input<string>[]>;

property updatePolicy

updatePolicy?: pulumi.Input<ElastigroupUpdatePolicy>;

property userData

userData?: pulumi.Input<string>;

The user data to provide when launching the instance.

property utilizeReservedInstances

utilizeReservedInstances?: pulumi.Input<boolean>;

In a case of any available reserved instances, Elastigroup will utilize them first before purchasing Spot instances.

property waitForCapacity

waitForCapacity?: pulumi.Input<number>;

Minimum number of instances in a ‘HEALTHY’ status that is required before continuing. This is ignored when updating with blue/green deployment. Cannot exceed desiredCapacity.

property waitForCapacityTimeout

waitForCapacityTimeout?: pulumi.Input<number>;

Time (seconds) to wait for instances to report a ‘HEALTHY’ status. Useful for plans with multiple dependencies that take some time to initialize. Leave undefined or set to 0 to indicate no wait. This is ignored when updating with blue/green deployment.

interface ManagedInstanceArgs

interface ManagedInstanceArgs

The set of arguments for constructing a ManagedInstance resource.

property autoHealing

autoHealing?: pulumi.Input<boolean>;

Enable the auto healing which auto replaces the instance in case the health check fails, default: “true”.

property blockDevicesMode

blockDevicesMode?: pulumi.Input<string>;

Determine the way we attach the data volumes to the data devices. Valid values: "reattach", "onLaunch". Default: "onLaunch".

property cpuCredits

cpuCredits?: pulumi.Input<string>;

cpuCredits can have one of two values: “unlimited”, “standard”. Default: unlimited

property description

description?: pulumi.Input<string>;

The ManagedInstance description.

property drainingTimeout

drainingTimeout?: pulumi.Input<number>;

The time in seconds to allow the instance be drained from incoming TCP connections and detached from ELB before terminating it, during a scale down operation.

property ebsOptimized

ebsOptimized?: pulumi.Input<boolean>;

Enable EBS optimization for supported instance which is not enabled by default. Note - additional charges will be applied. Default: false

property elasticIp

elasticIp?: pulumi.Input<string>;

Elastic IP Allocation Id to associate to the instance.

property enableMonitoring

enableMonitoring?: pulumi.Input<boolean>;

Describes whether instance Enhanced Monitoring is enabled. Default: false

property fallBackToOd

fallBackToOd?: pulumi.Input<boolean>;

property gracePeriod

gracePeriod?: pulumi.Input<number>;

The amount of time, in seconds, after the instance has launched to starts and check its health, default “120".

property healthCheckType

healthCheckType?: pulumi.Input<string>;

The service to use for the health check. Valid values: “EC2”, “ELB”, “TARGET_GROUP”, “MULTAI_TARGET_SET”. Default: “EC2”.

property iamInstanceProfile

iamInstanceProfile?: pulumi.Input<string>;

Set IAM profile to instance. Set only one of ARN or Name.

property imageId

imageId: pulumi.Input<string>;

The ID of the image used to launch the instance.

property instanceTypes

instanceTypes: pulumi.Input<pulumi.Input<string>[]>;

Comma separated list of available instance types for instance.

property integrationRoute53

integrationRoute53?: pulumi.Input<ManagedInstanceIntegrationRoute53>;

property keyPair

keyPair?: pulumi.Input<string>;

Specify a Key Pair to attach to the instances.

property lifeCycle

lifeCycle?: pulumi.Input<string>;

Set lifecycle, valid values: “spot”, “on_demand”. Default "spot".

property loadBalancers

loadBalancers?: pulumi.Input<pulumi.Input<ManagedInstanceLoadBalancer>[]>;

property name

name?: pulumi.Input<string>;

The ManagedInstance name.

property networkInterfaces

networkInterfaces?: pulumi.Input<pulumi.Input<ManagedInstanceNetworkInterface>[]>;

property optimizationWindows

optimizationWindows?: pulumi.Input<pulumi.Input<string>[]>;

When performAt is ‘timeWindow’: must specify a list of ‘timeWindows’ with at least one time window Each string is in the format of - ddd:hh:mm-ddd:hh:mm ddd = day of week = Sun | Mon | Tue | Wed | Thu | Fri | Sat hh = hour 24 = 0 -23 mm = minute = 0 - 59.

property orientation

orientation?: pulumi.Input<string>;

Select a prediction strategy. Valid values: "balanced", "costOriented", "availabilityOriented", "cheapest". Default: "availabilityOriented".

property persistBlockDevices

persistBlockDevices: pulumi.Input<boolean>;

Should the instance maintain its Data volumes.

property persistPrivateIp

persistPrivateIp?: pulumi.Input<boolean>;

Should the instance maintain its private IP.

property persistRootDevice

persistRootDevice?: pulumi.Input<boolean>;

Should the instance maintain its root device volumes.

property placementTenancy

placementTenancy?: pulumi.Input<string>;

Valid values: “default”, “dedicated” Default: default

property preferredType

preferredType?: pulumi.Input<string>;

Preferred instance types for the instance. We will automatically select optional similar instance types to ensure optimized cost efficiency

property privateIp

privateIp?: pulumi.Input<string>;

Private IP Allocation Id to associate to the instance.

property product

product: pulumi.Input<string>;

Operation system type. Valid values: "Linux/UNIX", "SUSE Linux", "Windows", "Red Hat Enterprise Linux", "Linux/UNIX (Amazon VPC)", "SUSE Linux (Amazon VPC)", "Windows (Amazon VPC)", "Red Hat Enterprise Linux (Amazon VPC)".

property region

region?: pulumi.Input<string>;

The AWS region your group will be created in.

property revertToSpot

revertToSpot?: pulumi.Input<ManagedInstanceRevertToSpot>;

property scheduledTasks

scheduledTasks?: pulumi.Input<pulumi.Input<ManagedInstanceScheduledTask>[]>;

property securityGroupIds

securityGroupIds?: pulumi.Input<pulumi.Input<string>[]>;

One or more security group IDs.

property shutdownScript

shutdownScript?: pulumi.Input<string>;

The Base64-encoded shutdown script to execute prior to instance termination.

property subnetIds

subnetIds: pulumi.Input<pulumi.Input<string>[]>;

A comma-separated list of subnet identifiers for your instance.

property tags

tags?: pulumi.Input<pulumi.Input<ManagedInstanceTag>[]>;

Set tags for the instance. Items should be unique.

property unhealthyDuration

unhealthyDuration?: pulumi.Input<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, default “120".

property userData

userData?: pulumi.Input<string>;

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

property utilizeReservedInstances

utilizeReservedInstances?: pulumi.Input<boolean>;

In case of any available Reserved Instances, Managed Instance will utilize them before purchasing Spot instances. Default: "false".

property vpcId

vpcId: pulumi.Input<string>;

interface ManagedInstanceState

interface ManagedInstanceState

Input properties used for looking up and filtering ManagedInstance resources.

property autoHealing

autoHealing?: pulumi.Input<boolean>;

Enable the auto healing which auto replaces the instance in case the health check fails, default: “true”.

property blockDevicesMode

blockDevicesMode?: pulumi.Input<string>;

Determine the way we attach the data volumes to the data devices. Valid values: "reattach", "onLaunch". Default: "onLaunch".

property cpuCredits

cpuCredits?: pulumi.Input<string>;

cpuCredits can have one of two values: “unlimited”, “standard”. Default: unlimited

property description

description?: pulumi.Input<string>;

The ManagedInstance description.

property drainingTimeout

drainingTimeout?: pulumi.Input<number>;

The time in seconds to allow the instance be drained from incoming TCP connections and detached from ELB before terminating it, during a scale down operation.

property ebsOptimized

ebsOptimized?: pulumi.Input<boolean>;

Enable EBS optimization for supported instance which is not enabled by default. Note - additional charges will be applied. Default: false

property elasticIp

elasticIp?: pulumi.Input<string>;

Elastic IP Allocation Id to associate to the instance.

property enableMonitoring

enableMonitoring?: pulumi.Input<boolean>;

Describes whether instance Enhanced Monitoring is enabled. Default: false

property fallBackToOd

fallBackToOd?: pulumi.Input<boolean>;

property gracePeriod

gracePeriod?: pulumi.Input<number>;

The amount of time, in seconds, after the instance has launched to starts and check its health, default “120".

property healthCheckType

healthCheckType?: pulumi.Input<string>;

The service to use for the health check. Valid values: “EC2”, “ELB”, “TARGET_GROUP”, “MULTAI_TARGET_SET”. Default: “EC2”.

property iamInstanceProfile

iamInstanceProfile?: pulumi.Input<string>;

Set IAM profile to instance. Set only one of ARN or Name.

property imageId

imageId?: pulumi.Input<string>;

The ID of the image used to launch the instance.

property instanceTypes

instanceTypes?: pulumi.Input<pulumi.Input<string>[]>;

Comma separated list of available instance types for instance.

property integrationRoute53

integrationRoute53?: pulumi.Input<ManagedInstanceIntegrationRoute53>;

property keyPair

keyPair?: pulumi.Input<string>;

Specify a Key Pair to attach to the instances.

property lifeCycle

lifeCycle?: pulumi.Input<string>;

Set lifecycle, valid values: “spot”, “on_demand”. Default "spot".

property loadBalancers

loadBalancers?: pulumi.Input<pulumi.Input<ManagedInstanceLoadBalancer>[]>;

property name

name?: pulumi.Input<string>;

The ManagedInstance name.

property networkInterfaces

networkInterfaces?: pulumi.Input<pulumi.Input<ManagedInstanceNetworkInterface>[]>;

property optimizationWindows

optimizationWindows?: pulumi.Input<pulumi.Input<string>[]>;

When performAt is ‘timeWindow’: must specify a list of ‘timeWindows’ with at least one time window Each string is in the format of - ddd:hh:mm-ddd:hh:mm ddd = day of week = Sun | Mon | Tue | Wed | Thu | Fri | Sat hh = hour 24 = 0 -23 mm = minute = 0 - 59.

property orientation

orientation?: pulumi.Input<string>;

Select a prediction strategy. Valid values: "balanced", "costOriented", "availabilityOriented", "cheapest". Default: "availabilityOriented".

property persistBlockDevices

persistBlockDevices?: pulumi.Input<boolean>;

Should the instance maintain its Data volumes.

property persistPrivateIp

persistPrivateIp?: pulumi.Input<boolean>;

Should the instance maintain its private IP.

property persistRootDevice

persistRootDevice?: pulumi.Input<boolean>;

Should the instance maintain its root device volumes.

property placementTenancy

placementTenancy?: pulumi.Input<string>;

Valid values: “default”, “dedicated” Default: default

property preferredType

preferredType?: pulumi.Input<string>;

Preferred instance types for the instance. We will automatically select optional similar instance types to ensure optimized cost efficiency

property privateIp

privateIp?: pulumi.Input<string>;

Private IP Allocation Id to associate to the instance.

property product

product?: pulumi.Input<string>;

Operation system type. Valid values: "Linux/UNIX", "SUSE Linux", "Windows", "Red Hat Enterprise Linux", "Linux/UNIX (Amazon VPC)", "SUSE Linux (Amazon VPC)", "Windows (Amazon VPC)", "Red Hat Enterprise Linux (Amazon VPC)".

property region

region?: pulumi.Input<string>;

The AWS region your group will be created in.

property revertToSpot

revertToSpot?: pulumi.Input<ManagedInstanceRevertToSpot>;

property scheduledTasks

scheduledTasks?: pulumi.Input<pulumi.Input<ManagedInstanceScheduledTask>[]>;

property securityGroupIds

securityGroupIds?: pulumi.Input<pulumi.Input<string>[]>;

One or more security group IDs.

property shutdownScript

shutdownScript?: pulumi.Input<string>;

The Base64-encoded shutdown script to execute prior to instance termination.

property subnetIds

subnetIds?: pulumi.Input<pulumi.Input<string>[]>;

A comma-separated list of subnet identifiers for your instance.

property tags

tags?: pulumi.Input<pulumi.Input<ManagedInstanceTag>[]>;

Set tags for the instance. Items should be unique.

property unhealthyDuration

unhealthyDuration?: pulumi.Input<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, default “120".

property userData

userData?: pulumi.Input<string>;

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

property utilizeReservedInstances

utilizeReservedInstances?: pulumi.Input<boolean>;

In case of any available Reserved Instances, Managed Instance will utilize them before purchasing Spot instances. Default: "false".

property vpcId

vpcId?: pulumi.Input<string>;

interface MrScalarArgs

interface MrScalarArgs

The set of arguments for constructing a MrScalar resource.

property additionalInfo

additionalInfo?: pulumi.Input<string>;

property additionalPrimarySecurityGroups

additionalPrimarySecurityGroups?: pulumi.Input<pulumi.Input<string>[]>;

property additionalReplicaSecurityGroups

additionalReplicaSecurityGroups?: pulumi.Input<pulumi.Input<string>[]>;

property applications

applications?: pulumi.Input<pulumi.Input<MrScalarApplication>[]>;

property availabilityZones

availabilityZones?: pulumi.Input<pulumi.Input<string>[]>;

property bootstrapActionsFiles

bootstrapActionsFiles?: pulumi.Input<pulumi.Input<MrScalarBootstrapActionsFile>[]>;

property clusterId

clusterId?: pulumi.Input<string>;

The MrScaler cluster id.

property configurationsFiles

configurationsFiles?: pulumi.Input<pulumi.Input<MrScalarConfigurationsFile>[]>;

property coreDesiredCapacity

coreDesiredCapacity?: pulumi.Input<number>;

property coreEbsBlockDevices

coreEbsBlockDevices?: pulumi.Input<pulumi.Input<MrScalarCoreEbsBlockDevice>[]>;

property coreEbsOptimized

coreEbsOptimized?: pulumi.Input<boolean>;

property coreInstanceTypes

coreInstanceTypes?: pulumi.Input<pulumi.Input<string>[]>;

property coreLifecycle

coreLifecycle?: pulumi.Input<string>;

property coreMaxSize

coreMaxSize?: pulumi.Input<number>;

property coreMinSize

coreMinSize?: pulumi.Input<number>;

property coreScalingDownPolicies

coreScalingDownPolicies?: pulumi.Input<pulumi.Input<MrScalarCoreScalingDownPolicy>[]>;

property coreScalingUpPolicies

coreScalingUpPolicies?: pulumi.Input<pulumi.Input<MrScalarCoreScalingUpPolicy>[]>;

property coreUnit

coreUnit?: pulumi.Input<string>;

property customAmiId

customAmiId?: pulumi.Input<string>;

property description

description?: pulumi.Input<string>;

The MrScaler description.

property ebsRootVolumeSize

ebsRootVolumeSize?: pulumi.Input<number>;

property ec2KeyName

ec2KeyName?: pulumi.Input<string>;

property exposeClusterId

exposeClusterId?: pulumi.Input<boolean>;

property instanceWeights

instanceWeights?: pulumi.Input<pulumi.Input<MrScalarInstanceWeight>[]>;

property jobFlowRole

jobFlowRole?: pulumi.Input<string>;

property keepJobFlowAlive

keepJobFlowAlive?: pulumi.Input<boolean>;

property logUri

logUri?: pulumi.Input<string>;

property managedPrimarySecurityGroup

managedPrimarySecurityGroup?: pulumi.Input<string>;

property managedReplicaSecurityGroup

managedReplicaSecurityGroup?: pulumi.Input<string>;

property masterEbsBlockDevices

masterEbsBlockDevices?: pulumi.Input<pulumi.Input<MrScalarMasterEbsBlockDevice>[]>;

property masterEbsOptimized

masterEbsOptimized?: pulumi.Input<boolean>;

property masterInstanceTypes

masterInstanceTypes?: pulumi.Input<pulumi.Input<string>[]>;

property masterLifecycle

masterLifecycle?: pulumi.Input<string>;

property name

name?: pulumi.Input<string>;

The MrScaler name.

property provisioningTimeout

provisioningTimeout?: pulumi.Input<MrScalarProvisioningTimeout>;

property region

region?: pulumi.Input<string>;

The MrScaler region.

property releaseLabel

releaseLabel?: pulumi.Input<string>;

property repoUpgradeOnBoot

repoUpgradeOnBoot?: pulumi.Input<string>;

property retries

retries?: pulumi.Input<number>;

property scheduledTasks

scheduledTasks?: pulumi.Input<pulumi.Input<MrScalarScheduledTask>[]>;

property securityConfig

securityConfig?: pulumi.Input<string>;

property serviceAccessSecurityGroup

serviceAccessSecurityGroup?: pulumi.Input<string>;

property serviceRole

serviceRole?: pulumi.Input<string>;

property stepsFiles

stepsFiles?: pulumi.Input<pulumi.Input<MrScalarStepsFile>[]>;

property strategy

strategy: pulumi.Input<string>;

The MrScaler strategy. Allowed values are new clone and wrap.

property tags

tags?: pulumi.Input<pulumi.Input<MrScalarTag>[]>;

property taskDesiredCapacity

taskDesiredCapacity?: pulumi.Input<number>;

property taskEbsBlockDevices

taskEbsBlockDevices?: pulumi.Input<pulumi.Input<MrScalarTaskEbsBlockDevice>[]>;

property taskEbsOptimized

taskEbsOptimized?: pulumi.Input<boolean>;

property taskInstanceTypes

taskInstanceTypes?: pulumi.Input<pulumi.Input<string>[]>;

property taskLifecycle

taskLifecycle?: pulumi.Input<string>;

property taskMaxSize

taskMaxSize?: pulumi.Input<number>;

property taskMinSize

taskMinSize?: pulumi.Input<number>;

property taskScalingDownPolicies

taskScalingDownPolicies?: pulumi.Input<pulumi.Input<MrScalarTaskScalingDownPolicy>[]>;

property taskScalingUpPolicies

taskScalingUpPolicies?: pulumi.Input<pulumi.Input<MrScalarTaskScalingUpPolicy>[]>;

property taskUnit

taskUnit?: pulumi.Input<string>;

property terminationPolicies

terminationPolicies?: pulumi.Input<pulumi.Input<MrScalarTerminationPolicy>[]>;

Allows defining termination policies for EMR clusters based on CloudWatch Metrics.

property terminationProtected

terminationProtected?: pulumi.Input<boolean>;

property visibleToAllUsers

visibleToAllUsers?: pulumi.Input<boolean>;

interface MrScalarState

interface MrScalarState

Input properties used for looking up and filtering MrScalar resources.

property additionalInfo

additionalInfo?: pulumi.Input<string>;

property additionalPrimarySecurityGroups

additionalPrimarySecurityGroups?: pulumi.Input<pulumi.Input<string>[]>;

property additionalReplicaSecurityGroups

additionalReplicaSecurityGroups?: pulumi.Input<pulumi.Input<string>[]>;

property applications

applications?: pulumi.Input<pulumi.Input<MrScalarApplication>[]>;

property availabilityZones

availabilityZones?: pulumi.Input<pulumi.Input<string>[]>;

property bootstrapActionsFiles

bootstrapActionsFiles?: pulumi.Input<pulumi.Input<MrScalarBootstrapActionsFile>[]>;

property clusterId

clusterId?: pulumi.Input<string>;

The MrScaler cluster id.

property configurationsFiles

configurationsFiles?: pulumi.Input<pulumi.Input<MrScalarConfigurationsFile>[]>;

property coreDesiredCapacity

coreDesiredCapacity?: pulumi.Input<number>;

property coreEbsBlockDevices

coreEbsBlockDevices?: pulumi.Input<pulumi.Input<MrScalarCoreEbsBlockDevice>[]>;

property coreEbsOptimized

coreEbsOptimized?: pulumi.Input<boolean>;

property coreInstanceTypes

coreInstanceTypes?: pulumi.Input<pulumi.Input<string>[]>;

property coreLifecycle

coreLifecycle?: pulumi.Input<string>;

property coreMaxSize

coreMaxSize?: pulumi.Input<number>;

property coreMinSize

coreMinSize?: pulumi.Input<number>;

property coreScalingDownPolicies

coreScalingDownPolicies?: pulumi.Input<pulumi.Input<MrScalarCoreScalingDownPolicy>[]>;

property coreScalingUpPolicies

coreScalingUpPolicies?: pulumi.Input<pulumi.Input<MrScalarCoreScalingUpPolicy>[]>;

property coreUnit

coreUnit?: pulumi.Input<string>;

property customAmiId

customAmiId?: pulumi.Input<string>;

property description

description?: pulumi.Input<string>;

The MrScaler description.

property ebsRootVolumeSize

ebsRootVolumeSize?: pulumi.Input<number>;

property ec2KeyName

ec2KeyName?: pulumi.Input<string>;

property exposeClusterId

exposeClusterId?: pulumi.Input<boolean>;

property instanceWeights

instanceWeights?: pulumi.Input<pulumi.Input<MrScalarInstanceWeight>[]>;

property jobFlowRole

jobFlowRole?: pulumi.Input<string>;

property keepJobFlowAlive

keepJobFlowAlive?: pulumi.Input<boolean>;

property logUri

logUri?: pulumi.Input<string>;

property managedPrimarySecurityGroup

managedPrimarySecurityGroup?: pulumi.Input<string>;

property managedReplicaSecurityGroup

managedReplicaSecurityGroup?: pulumi.Input<string>;

property masterEbsBlockDevices

masterEbsBlockDevices?: pulumi.Input<pulumi.Input<MrScalarMasterEbsBlockDevice>[]>;

property masterEbsOptimized

masterEbsOptimized?: pulumi.Input<boolean>;

property masterInstanceTypes

masterInstanceTypes?: pulumi.Input<pulumi.Input<string>[]>;

property masterLifecycle

masterLifecycle?: pulumi.Input<string>;

property name

name?: pulumi.Input<string>;

The MrScaler name.

property outputClusterId

outputClusterId?: pulumi.Input<string>;

property provisioningTimeout

provisioningTimeout?: pulumi.Input<MrScalarProvisioningTimeout>;

property region

region?: pulumi.Input<string>;

The MrScaler region.

property releaseLabel

releaseLabel?: pulumi.Input<string>;

property repoUpgradeOnBoot

repoUpgradeOnBoot?: pulumi.Input<string>;

property retries

retries?: pulumi.Input<number>;

property scheduledTasks

scheduledTasks?: pulumi.Input<pulumi.Input<MrScalarScheduledTask>[]>;

property securityConfig

securityConfig?: pulumi.Input<string>;

property serviceAccessSecurityGroup

serviceAccessSecurityGroup?: pulumi.Input<string>;

property serviceRole

serviceRole?: pulumi.Input<string>;

property stepsFiles

stepsFiles?: pulumi.Input<pulumi.Input<MrScalarStepsFile>[]>;

property strategy

strategy?: pulumi.Input<string>;

The MrScaler strategy. Allowed values are new clone and wrap.

property tags

tags?: pulumi.Input<pulumi.Input<MrScalarTag>[]>;

property taskDesiredCapacity

taskDesiredCapacity?: pulumi.Input<number>;

property taskEbsBlockDevices

taskEbsBlockDevices?: pulumi.Input<pulumi.Input<MrScalarTaskEbsBlockDevice>[]>;

property taskEbsOptimized

taskEbsOptimized?: pulumi.Input<boolean>;

property taskInstanceTypes

taskInstanceTypes?: pulumi.Input<pulumi.Input<string>[]>;

property taskLifecycle

taskLifecycle?: pulumi.Input<string>;

property taskMaxSize

taskMaxSize?: pulumi.Input<number>;

property taskMinSize

taskMinSize?: pulumi.Input<number>;

property taskScalingDownPolicies

taskScalingDownPolicies?: pulumi.Input<pulumi.Input<MrScalarTaskScalingDownPolicy>[]>;

property taskScalingUpPolicies

taskScalingUpPolicies?: pulumi.Input<pulumi.Input<MrScalarTaskScalingUpPolicy>[]>;

property taskUnit

taskUnit?: pulumi.Input<string>;

property terminationPolicies

terminationPolicies?: pulumi.Input<pulumi.Input<MrScalarTerminationPolicy>[]>;

Allows defining termination policies for EMR clusters based on CloudWatch Metrics.

property terminationProtected

terminationProtected?: pulumi.Input<boolean>;

property visibleToAllUsers

visibleToAllUsers?: pulumi.Input<boolean>;

interface OceanArgs

interface OceanArgs

The set of arguments for constructing a Ocean resource.

property associatePublicIpAddress

associatePublicIpAddress?: pulumi.Input<boolean>;

Configure public IP address allocation.

property autoscaler

autoscaler?: pulumi.Input<OceanAutoscaler>;

property blacklists

blacklists?: pulumi.Input<pulumi.Input<string>[]>;

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

property controllerId

controllerId?: pulumi.Input<string>;

The ocean cluster identifier. Example: ocean.k8s

property desiredCapacity

desiredCapacity?: pulumi.Input<number>;

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

property drainingTimeout

drainingTimeout?: pulumi.Input<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.

property ebsOptimized

ebsOptimized?: pulumi.Input<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.

property fallbackToOndemand

fallbackToOndemand?: pulumi.Input<boolean>;

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

property gracePeriod

gracePeriod?: pulumi.Input<number>;

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

property iamInstanceProfile

iamInstanceProfile?: pulumi.Input<string>;

The instance profile iam role.

property imageId

imageId?: pulumi.Input<string>;

ID of the image used to launch the instances.

property keyName

keyName?: pulumi.Input<string>;

The key pair to attach the instances.

property loadBalancers

loadBalancers?: pulumi.Input<pulumi.Input<OceanLoadBalancer>[]>;
  • Array of load balancer objects to add to ocean cluster

property maxSize

maxSize?: pulumi.Input<number>;

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

property minSize

minSize?: pulumi.Input<number>;

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

property monitoring

monitoring?: pulumi.Input<boolean>;

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

property name

name?: pulumi.Input<string>;

Required if type is set to CLASSIC

property region

region?: pulumi.Input<string>;

The region the cluster will run in.

property rootVolumeSize

rootVolumeSize?: pulumi.Input<number>;

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

property scheduledTasks

scheduledTasks?: pulumi.Input<pulumi.Input<OceanScheduledTask>[]>;

property securityGroups

securityGroups: pulumi.Input<pulumi.Input<string>[]>;

One or more security group ids.

property spotPercentage

spotPercentage?: pulumi.Input<number>;

property subnetIds

subnetIds: pulumi.Input<pulumi.Input<string>[]>;

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

property tags

tags?: pulumi.Input<pulumi.Input<OceanTag>[]>;

Optionally adds tags to instances launched in an Ocean cluster.

property updatePolicy

updatePolicy?: pulumi.Input<OceanUpdatePolicy>;

property userData

userData?: pulumi.Input<string>;

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

property utilizeReservedInstances

utilizeReservedInstances?: pulumi.Input<boolean>;

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

property whitelists

whitelists?: pulumi.Input<pulumi.Input<string>[]>;

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

interface OceanLaunchSpecArgs

interface OceanLaunchSpecArgs

The set of arguments for constructing a OceanLaunchSpec resource.

property autoscaleHeadrooms

autoscaleHeadrooms?: pulumi.Input<pulumi.Input<OceanLaunchSpecAutoscaleHeadroom>[]>;

Set custom headroom per launch spec. provide list of headrooms object.

property elasticIpPools

elasticIpPools?: pulumi.Input<pulumi.Input<OceanLaunchSpecElasticIpPool>[]>;

Assign an Elastic IP to the instances spun by the launch spec. Can be null.

property iamInstanceProfile

iamInstanceProfile?: pulumi.Input<string>;

The ARN or name of an IAM instance profile to associate with launched instances.

property imageId

imageId?: pulumi.Input<string>;

ID of the image used to launch the instances.

property labels

labels?: pulumi.Input<pulumi.Input<OceanLaunchSpecLabel>[]>;

Optionally adds labels to instances launched in an Ocean cluster.

property name

name?: pulumi.Input<string>;

Set Launch Specification name

property oceanId

oceanId: pulumi.Input<string>;

The ocean cluster you wish to

property rootVolumeSize

rootVolumeSize?: pulumi.Input<number>;

Set root volume size (in GB).

property securityGroups

securityGroups?: pulumi.Input<pulumi.Input<string>[]>;

Optionally adds security group IDs.

property subnetIds

subnetIds?: pulumi.Input<pulumi.Input<string>[]>;

Set subnets in launchSpec. Each element in array should be subnet ID.

property tags

tags?: pulumi.Input<pulumi.Input<OceanLaunchSpecTag>[]>;

A key/value mapping of tags to assign to the resource.

property taints

taints?: pulumi.Input<pulumi.Input<OceanLaunchSpecTaint>[]>;

Optionally adds labels to instances launched in an Ocean cluster.

property userData

userData?: pulumi.Input<string>;

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

interface OceanLaunchSpecState

interface OceanLaunchSpecState

Input properties used for looking up and filtering OceanLaunchSpec resources.

property autoscaleHeadrooms

autoscaleHeadrooms?: pulumi.Input<pulumi.Input<OceanLaunchSpecAutoscaleHeadroom>[]>;

Set custom headroom per launch spec. provide list of headrooms object.

property elasticIpPools

elasticIpPools?: pulumi.Input<pulumi.Input<OceanLaunchSpecElasticIpPool>[]>;

Assign an Elastic IP to the instances spun by the launch spec. Can be null.

property iamInstanceProfile

iamInstanceProfile?: pulumi.Input<string>;

The ARN or name of an IAM instance profile to associate with launched instances.

property imageId

imageId?: pulumi.Input<string>;

ID of the image used to launch the instances.

property labels

labels?: pulumi.Input<pulumi.Input<OceanLaunchSpecLabel>[]>;

Optionally adds labels to instances launched in an Ocean cluster.

property name

name?: pulumi.Input<string>;

Set Launch Specification name

property oceanId

oceanId?: pulumi.Input<string>;

The ocean cluster you wish to

property rootVolumeSize

rootVolumeSize?: pulumi.Input<number>;

Set root volume size (in GB).

property securityGroups

securityGroups?: pulumi.Input<pulumi.Input<string>[]>;

Optionally adds security group IDs.

property subnetIds

subnetIds?: pulumi.Input<pulumi.Input<string>[]>;

Set subnets in launchSpec. Each element in array should be subnet ID.

property tags

tags?: pulumi.Input<pulumi.Input<OceanLaunchSpecTag>[]>;

A key/value mapping of tags to assign to the resource.

property taints

taints?: pulumi.Input<pulumi.Input<OceanLaunchSpecTaint>[]>;

Optionally adds labels to instances launched in an Ocean cluster.

property userData

userData?: pulumi.Input<string>;

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

interface OceanState

interface OceanState

Input properties used for looking up and filtering Ocean resources.

property associatePublicIpAddress

associatePublicIpAddress?: pulumi.Input<boolean>;

Configure public IP address allocation.

property autoscaler

autoscaler?: pulumi.Input<OceanAutoscaler>;

property blacklists

blacklists?: pulumi.Input<pulumi.Input<string>[]>;

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

property controllerId

controllerId?: pulumi.Input<string>;

The ocean cluster identifier. Example: ocean.k8s

property desiredCapacity

desiredCapacity?: pulumi.Input<number>;

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

property drainingTimeout

drainingTimeout?: pulumi.Input<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.

property ebsOptimized

ebsOptimized?: pulumi.Input<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.

property fallbackToOndemand

fallbackToOndemand?: pulumi.Input<boolean>;

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

property gracePeriod

gracePeriod?: pulumi.Input<number>;

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

property iamInstanceProfile

iamInstanceProfile?: pulumi.Input<string>;

The instance profile iam role.

property imageId

imageId?: pulumi.Input<string>;

ID of the image used to launch the instances.

property keyName

keyName?: pulumi.Input<string>;

The key pair to attach the instances.

property loadBalancers

loadBalancers?: pulumi.Input<pulumi.Input<OceanLoadBalancer>[]>;
  • Array of load balancer objects to add to ocean cluster

property maxSize

maxSize?: pulumi.Input<number>;

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

property minSize

minSize?: pulumi.Input<number>;

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

property monitoring

monitoring?: pulumi.Input<boolean>;

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

property name

name?: pulumi.Input<string>;

Required if type is set to CLASSIC

property region

region?: pulumi.Input<string>;

The region the cluster will run in.

property rootVolumeSize

rootVolumeSize?: pulumi.Input<number>;

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

property scheduledTasks

scheduledTasks?: pulumi.Input<pulumi.Input<OceanScheduledTask>[]>;

property securityGroups

securityGroups?: pulumi.Input<pulumi.Input<string>[]>;

One or more security group ids.

property spotPercentage

spotPercentage?: pulumi.Input<number>;

property subnetIds

subnetIds?: pulumi.Input<pulumi.Input<string>[]>;

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

property tags

tags?: pulumi.Input<pulumi.Input<OceanTag>[]>;

Optionally adds tags to instances launched in an Ocean cluster.

property updatePolicy

updatePolicy?: pulumi.Input<OceanUpdatePolicy>;

property userData

userData?: pulumi.Input<string>;

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

property utilizeReservedInstances

utilizeReservedInstances?: pulumi.Input<boolean>;

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

property whitelists

whitelists?: pulumi.Input<pulumi.Input<string>[]>;

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