This page documents the language specification for the spotinst package. If you're looking for help working with the inputs, outputs, or functions of spotinst resources in a Pulumi program, please see the resource documentation for examples and API reference.

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.

class pulumi_spotinst.aws.Beanstalk(resource_name, opts=None, beanstalk_environment_id=None, beanstalk_environment_name=None, deployment_preferences=None, desired_capacity=None, instance_types_spots=None, maintenance=None, managed_actions=None, max_size=None, min_size=None, name=None, product=None, region=None, scheduled_tasks=None, __props__=None, __name__=None, __opts__=None)

Provides a Spotinst AWS group resource using Elastic Beanstalk.

import pulumi
import pulumi_spotinst as spotinst

elastigoup_aws_beanstalk = spotinst.aws.Beanstalk("elastigoup-aws-beanstalk",
    beanstalk_environment_id="e-example",
    beanstalk_environment_name="example-env",
    deployment_preferences={
        "automaticRoll": True,
        "batchSizePercentage": 100,
        "grace_period": 90,
        "strategy": [{
            "action": "REPLACE_SERVER",
            "shouldDrainInstances": True,
        }],
    },
    desired_capacity=0,
    instance_types_spots=[
        "t2.micro",
        "t2.medium",
        "t2.large",
    ],
    managed_actions={
        "platformUpdate": {
            "performAt": "timeWindow",
            "timeWindow": "Mon:23:50-Tue:00:20",
            "updateLevel": "minorAndPatch",
        },
    },
    max_size=1,
    min_size=0,
    product="Linux/UNIX",
    region="us-west-2")

Each scheduled_task supports the following:

  • task_type - (Required) The task type to run. Supported task types are: "scale", "backup_ami", "roll", "scaleUp", "percentageScaleUp", "scaleDown", "percentageScaleDown", "statefulUpdateCapacity".

  • cron_expression - (Optional; Required if not using frequency) A valid cron expression. The cron is running in UTC time zone and is in Unix cron format.

  • start_time - (Optional; Format: ISO 8601) Set a start time for one time tasks.

  • frequency - (Optional; Required if not using cron_expression) The recurrence frequency to run this task. Supported values are "hourly", "daily", "weekly" and "continuous".

  • scale_target_capacity - (Optional) The desired number of instances the group should have.

  • scale_min_capacity - (Optional) The minimum number of instances the group should have.

  • scale_max_capacity - (Optional) The maximum number of instances the group should have.

  • is_enabled - (Optional, Default: true) Setting the task to being enabled or disabled.

  • target_capacity - (Optional; Only valid for statefulUpdateCapacity) The desired number of instances the group should have.

  • min_capacity - (Optional; Only valid for statefulUpdateCapacity) The minimum number of instances the group should have.

  • max_capacity - (Optional; Only valid for statefulUpdateCapacity) The maximum number of instances the group should have.

  • batch_size_percentage - (Optional; Required when the task_type is "roll".) The percentage size of each batch in the scheduled deployment roll.

  • grace_period - (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.

  • adjustment_percentage - (Optional; Min 1) The percentage of instances to add or remove.

Usage:

import pulumi
Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • beanstalk_environment_id (pulumi.Input[str]) – The id of an existing Beanstalk environment.

  • beanstalk_environment_name (pulumi.Input[str]) – The name of an existing Beanstalk environment.

  • deployment_preferences (pulumi.Input[dict]) – Preferences when performing a roll

  • desired_capacity (pulumi.Input[float]) – The desired number of instances the group should have at any time.

  • instance_types_spots (pulumi.Input[list]) – One or more instance types. To maximize the availability of Spot instances, select as many instance types as possible.

  • managed_actions (pulumi.Input[dict]) – Managed Actions parameters

  • max_size (pulumi.Input[float]) – The maximum number of instances the group should have at any time.

  • min_size (pulumi.Input[float]) – The minimum number of instances the group should have at any time.

  • name (pulumi.Input[str]) – The group name.

  • product (pulumi.Input[str]) – 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)".

  • region (pulumi.Input[str]) – The AWS region your group will be created in. Cannot be changed after the group has been created.

The deployment_preferences object supports the following:

  • automaticRoll (pulumi.Input[bool]) - Should roll perform automatically

  • batchSizePercentage (pulumi.Input[float]) - Percent size of each batch

  • grace_period (pulumi.Input[float]) - Amount of time to wait between batches

  • strategies (pulumi.Input[list]) - Strategy parameters

    • action (pulumi.Input[str]) - Action to take

    • shouldDrainInstances (pulumi.Input[bool]) - Bool value if to wait to drain instance

The managed_actions object supports the following:

  • platformUpdate (pulumi.Input[dict]) - Platform Update parameters

    • performAt (pulumi.Input[str]) - Actions to perform (options: timeWindow, never)

    • timeWindow (pulumi.Input[str]) - Time Window for when action occurs ex. Mon:23:50-Tue:00:20

    • updateLevel (pulumi.Input[str]) - - Level to update

The scheduled_tasks object supports the following:

  • adjustment (pulumi.Input[str])

  • adjustmentPercentage (pulumi.Input[str])

  • batchSizePercentage (pulumi.Input[str]) - Percent size of each batch

  • cronExpression (pulumi.Input[str])

  • frequency (pulumi.Input[str])

  • grace_period (pulumi.Input[str]) - Amount of time to wait between batches

  • isEnabled (pulumi.Input[bool])

  • maxCapacity (pulumi.Input[str])

  • minCapacity (pulumi.Input[str])

  • scaleMaxCapacity (pulumi.Input[str])

  • scaleMinCapacity (pulumi.Input[str])

  • scaleTargetCapacity (pulumi.Input[str])

  • startTime (pulumi.Input[str])

  • targetCapacity (pulumi.Input[str])

  • taskType (pulumi.Input[str])

beanstalk_environment_id: pulumi.Output[str] = None

The id of an existing Beanstalk environment.

beanstalk_environment_name: pulumi.Output[str] = None

The name of an existing Beanstalk environment.

deployment_preferences: pulumi.Output[dict] = None

Preferences when performing a roll

  • automaticRoll (bool) - Should roll perform automatically

  • batchSizePercentage (float) - Percent size of each batch

  • grace_period (float) - Amount of time to wait between batches

  • strategies (list) - Strategy parameters

    • action (str) - Action to take

    • shouldDrainInstances (bool) - Bool value if to wait to drain instance

desired_capacity: pulumi.Output[float] = None

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

instance_types_spots: pulumi.Output[list] = None

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

managed_actions: pulumi.Output[dict] = None

Managed Actions parameters

  • platformUpdate (dict) - Platform Update parameters

    • performAt (str) - Actions to perform (options: timeWindow, never)

    • timeWindow (str) - Time Window for when action occurs ex. Mon:23:50-Tue:00:20

    • updateLevel (str) - - Level to update

max_size: pulumi.Output[float] = None

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

min_size: pulumi.Output[float] = None

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

name: pulumi.Output[str] = None

The group name.

product: pulumi.Output[str] = None

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)".

region: pulumi.Output[str] = None

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

static get(resource_name, id, opts=None, beanstalk_environment_id=None, beanstalk_environment_name=None, deployment_preferences=None, desired_capacity=None, instance_types_spots=None, maintenance=None, managed_actions=None, max_size=None, min_size=None, name=None, product=None, region=None, scheduled_tasks=None)

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

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • beanstalk_environment_id (pulumi.Input[str]) – The id of an existing Beanstalk environment.

  • beanstalk_environment_name (pulumi.Input[str]) – The name of an existing Beanstalk environment.

  • deployment_preferences (pulumi.Input[dict]) – Preferences when performing a roll

  • desired_capacity (pulumi.Input[float]) – The desired number of instances the group should have at any time.

  • instance_types_spots (pulumi.Input[list]) – One or more instance types. To maximize the availability of Spot instances, select as many instance types as possible.

  • managed_actions (pulumi.Input[dict]) – Managed Actions parameters

  • max_size (pulumi.Input[float]) – The maximum number of instances the group should have at any time.

  • min_size (pulumi.Input[float]) – The minimum number of instances the group should have at any time.

  • name (pulumi.Input[str]) – The group name.

  • product (pulumi.Input[str]) – 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)".

  • region (pulumi.Input[str]) – The AWS region your group will be created in. Cannot be changed after the group has been created.

The deployment_preferences object supports the following:

  • automaticRoll (pulumi.Input[bool]) - Should roll perform automatically

  • batchSizePercentage (pulumi.Input[float]) - Percent size of each batch

  • grace_period (pulumi.Input[float]) - Amount of time to wait between batches

  • strategies (pulumi.Input[list]) - Strategy parameters

    • action (pulumi.Input[str]) - Action to take

    • shouldDrainInstances (pulumi.Input[bool]) - Bool value if to wait to drain instance

The managed_actions object supports the following:

  • platformUpdate (pulumi.Input[dict]) - Platform Update parameters

    • performAt (pulumi.Input[str]) - Actions to perform (options: timeWindow, never)

    • timeWindow (pulumi.Input[str]) - Time Window for when action occurs ex. Mon:23:50-Tue:00:20

    • updateLevel (pulumi.Input[str]) - - Level to update

The scheduled_tasks object supports the following:

  • adjustment (pulumi.Input[str])

  • adjustmentPercentage (pulumi.Input[str])

  • batchSizePercentage (pulumi.Input[str]) - Percent size of each batch

  • cronExpression (pulumi.Input[str])

  • frequency (pulumi.Input[str])

  • grace_period (pulumi.Input[str]) - Amount of time to wait between batches

  • isEnabled (pulumi.Input[bool])

  • maxCapacity (pulumi.Input[str])

  • minCapacity (pulumi.Input[str])

  • scaleMaxCapacity (pulumi.Input[str])

  • scaleMinCapacity (pulumi.Input[str])

  • scaleTargetCapacity (pulumi.Input[str])

  • startTime (pulumi.Input[str])

  • targetCapacity (pulumi.Input[str])

  • taskType (pulumi.Input[str])

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_spotinst.aws.Elastigroup(resource_name, opts=None, availability_zones=None, block_devices_mode=None, capacity_unit=None, cpu_credits=None, description=None, desired_capacity=None, draining_timeout=None, ebs_block_devices=None, ebs_optimized=None, elastic_ips=None, elastic_load_balancers=None, enable_monitoring=None, ephemeral_block_devices=None, fallback_to_ondemand=None, health_check_grace_period=None, health_check_type=None, health_check_unhealthy_duration_before_replacement=None, iam_instance_profile=None, image_id=None, instance_types_ondemand=None, instance_types_preferred_spots=None, instance_types_spots=None, instance_types_weights=None, integration_beanstalk=None, integration_codedeploy=None, integration_docker_swarm=None, integration_ecs=None, integration_gitlab=None, integration_kubernetes=None, integration_mesosphere=None, integration_multai_runtime=None, integration_nomad=None, integration_rancher=None, integration_route53=None, key_name=None, lifetime_period=None, max_size=None, min_size=None, multai_target_sets=None, name=None, network_interfaces=None, ondemand_count=None, orientation=None, persist_block_devices=None, persist_private_ip=None, persist_root_device=None, placement_tenancy=None, preferred_availability_zones=None, private_ips=None, product=None, region=None, revert_to_spot=None, scaling_down_policies=None, scaling_strategies=None, scaling_target_policies=None, scaling_up_policies=None, scheduled_tasks=None, security_groups=None, shutdown_script=None, signals=None, spot_percentage=None, stateful_deallocation=None, subnet_ids=None, tags=None, target_group_arns=None, update_policy=None, user_data=None, utilize_reserved_instances=None, wait_for_capacity=None, wait_for_capacity_timeout=None, __props__=None, __name__=None, __opts__=None)

Create a Elastigroup resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[list] availability_zones: List of Strings of availability zones. When this parameter is set, subnet_ids should be left unused.

Note: availability_zones 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: availability_zones = ["us-east-1a:subnet-123456:ClusterI03"]

Parameters
  • capacity_unit (pulumi.Input[str]) – 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.

  • cpu_credits (pulumi.Input[str]) – Controls how T3 instances are launched. Valid values: standard, unlimited.

  • description (pulumi.Input[str]) – The group description.

  • desired_capacity (pulumi.Input[float]) – The desired number of instances the group should have at any time.

  • draining_timeout (pulumi.Input[float]) – The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.

  • ebs_optimized (pulumi.Input[bool]) – 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.

  • elastic_ips (pulumi.Input[list]) – A list of AWS Elastic IP allocation IDs to associate to the group instances.

  • enable_monitoring (pulumi.Input[bool]) – Indicates whether monitoring is enabled for the instance.

  • fallback_to_ondemand (pulumi.Input[bool]) – In a case of no Spot instances available, Elastigroup will launch on-demand instances instead.

  • health_check_grace_period (pulumi.Input[float]) – The amount of time, in seconds, after the instance has launched to starts and check its health.

  • health_check_type (pulumi.Input[str]) – 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".

  • health_check_unhealthy_duration_before_replacement (pulumi.Input[float]) – 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).

  • iam_instance_profile (pulumi.Input[str]) – The ARN or name of an IAM instance profile to associate with launched instances.

  • image_id (pulumi.Input[str]) – The ID of the AMI used to launch the instance.

  • instance_types_ondemand (pulumi.Input[str]) – The type of instance determines your instance’s CPU capacity, memory and storage (e.g., m1.small, c1.xlarge).

  • instance_types_preferred_spots (pulumi.Input[list]) – Prioritize a subset of spot instance types. Must be a subset of the selected spot instance types.

  • instance_types_spots (pulumi.Input[list]) – One or more instance types.

  • instance_types_weights (pulumi.Input[list]) – List of weights per instance type for weighted groups. Each object in the list should have the following attributes:

  • key_name (pulumi.Input[str]) – The key name that should be used for the instance.

  • max_size (pulumi.Input[float]) – The maximum number of instances the group should have at any time.

  • min_size (pulumi.Input[float]) – The minimum number of instances the group should have at any time.

  • name (pulumi.Input[str]) – The group name.

  • ondemand_count (pulumi.Input[float]) – Number of on demand instances to launch in the group. All other instances will be spot instances. When this parameter is set the spot_percentage parameter is being ignored.

  • orientation (pulumi.Input[str]) – Select a prediction strategy. Valid values: "balanced", "costOriented", "equalAzDistribution", "availabilityOriented".

  • placement_tenancy (pulumi.Input[str]) – Enable dedicated tenancy. Note: There is a flat hourly fee for each region in which dedicated tenancy is used.

  • preferred_availability_zones (pulumi.Input[list]) – 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 availability_zones and orientation value must not be "equalAzDistribution".

  • product (pulumi.Input[str]) – 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)".

  • region (pulumi.Input[str]) – 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).

  • revert_to_spot (pulumi.Input[dict]) – Hold settings for strategy correction – replacing On-Demand for Spot instances. Supported Values: "never", "always", "timeWindow"

  • scaling_strategies (pulumi.Input[list]) – Set termination policy.

  • security_groups (pulumi.Input[list]) – A list of associated security group IDS.

  • shutdown_script (pulumi.Input[str]) – The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: Shutdown Script

  • spot_percentage (pulumi.Input[float]) – The percentage of Spot instances that would spin up from the desired_capacity number.

  • subnet_ids (pulumi.Input[list]) – List of Strings of subnet identifiers. Note: When this parameter is set, availability_zones should be left unused.

  • tags (pulumi.Input[list]) – A key/value mapping of tags to assign to the resource.

  • user_data (pulumi.Input[str]) – The user data to provide when launching the instance.

  • utilize_reserved_instances (pulumi.Input[bool]) – In a case of any available reserved instances, Elastigroup will utilize them first before purchasing Spot instances.

  • wait_for_capacity (pulumi.Input[float]) – Minimum number of instances in a ‘HEALTHY’ status that is required before continuing. This is ignored when updating with blue/green deployment. Cannot exceed desired_capacity.

  • wait_for_capacity_timeout (pulumi.Input[float]) – 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.

The ebs_block_devices object supports the following:

  • deleteOnTermination (pulumi.Input[bool])

  • deviceName (pulumi.Input[str])

  • encrypted (pulumi.Input[bool])

  • iops (pulumi.Input[float])

  • kmsKeyId (pulumi.Input[str])

  • snapshotId (pulumi.Input[str])

  • volumeSize (pulumi.Input[float])

  • volumeType (pulumi.Input[str])

The ephemeral_block_devices object supports the following:

  • deviceName (pulumi.Input[str])

  • virtualName (pulumi.Input[str])

The instance_types_weights object supports the following:

  • instanceType (pulumi.Input[str]) - Name of instance type (String).

  • weight (pulumi.Input[float]) - Weight per instance type (Integer).

The integration_beanstalk object supports the following:

  • deployment_preferences (pulumi.Input[dict])

    • automaticRoll (pulumi.Input[bool])

    • batchSizePercentage (pulumi.Input[float])

    • grace_period (pulumi.Input[float])

    • strategy (pulumi.Input[dict])

      • action (pulumi.Input[str])

      • shouldDrainInstances (pulumi.Input[bool])

  • environmentId (pulumi.Input[str])

  • managed_actions (pulumi.Input[dict])

    • platformUpdate (pulumi.Input[dict])

      • performAt (pulumi.Input[str]) - In the event of a fallback to On-Demand instances, select the time period to revert back to Spot. Supported Arguments – always (default), timeWindow, never. For timeWindow or never to be valid the group must have availabilityOriented OR persistence defined.

      • timeWindow (pulumi.Input[str])

      • updateLevel (pulumi.Input[str])

The integration_codedeploy object supports the following:

  • cleanupOnFailure (pulumi.Input[bool])

  • deploymentGroups (pulumi.Input[list])

    • applicationName (pulumi.Input[str])

    • deploymentGroupName (pulumi.Input[str])

  • terminateInstanceOnFailure (pulumi.Input[bool])

The integration_docker_swarm object supports the following:

  • autoscaleCooldown (pulumi.Input[float])

  • autoscaleDown (pulumi.Input[dict])

    • evaluationPeriods (pulumi.Input[float])

  • autoscaleHeadroom (pulumi.Input[dict])

    • cpuPerUnit (pulumi.Input[float])

    • memoryPerUnit (pulumi.Input[float])

    • numOfUnits (pulumi.Input[float])

  • autoscaleIsEnabled (pulumi.Input[bool])

  • masterHost (pulumi.Input[str])

  • masterPort (pulumi.Input[float])

The integration_ecs object supports the following:

  • autoscaleAttributes (pulumi.Input[list])

    • key (pulumi.Input[str])

    • value (pulumi.Input[str])

  • autoscaleCooldown (pulumi.Input[float])

  • autoscaleDown (pulumi.Input[dict])

    • evaluationPeriods (pulumi.Input[float])

    • maxScaleDownPercentage (pulumi.Input[float])

  • autoscaleHeadroom (pulumi.Input[dict])

    • cpuPerUnit (pulumi.Input[float])

    • memoryPerUnit (pulumi.Input[float])

    • numOfUnits (pulumi.Input[float])

  • autoscaleIsAutoConfig (pulumi.Input[bool])

  • autoscaleIsEnabled (pulumi.Input[bool])

  • autoscaleScaleDownNonServiceTasks (pulumi.Input[bool])

  • cluster_name (pulumi.Input[str])

The integration_gitlab object supports the following:

  • runner (pulumi.Input[dict])

    • isEnabled (pulumi.Input[bool])

The integration_kubernetes object supports the following:

  • apiServer (pulumi.Input[str])

  • autoscaleCooldown (pulumi.Input[float])

  • autoscaleDown (pulumi.Input[dict])

    • evaluationPeriods (pulumi.Input[float])

  • autoscaleHeadroom (pulumi.Input[dict])

    • cpuPerUnit (pulumi.Input[float])

    • memoryPerUnit (pulumi.Input[float])

    • numOfUnits (pulumi.Input[float])

  • autoscaleIsAutoConfig (pulumi.Input[bool])

  • autoscaleIsEnabled (pulumi.Input[bool])

  • autoscaleLabels (pulumi.Input[list])

    • key (pulumi.Input[str])

    • value (pulumi.Input[str])

  • clusterIdentifier (pulumi.Input[str])

  • integrationMode (pulumi.Input[str])

  • token (pulumi.Input[str])

The integration_mesosphere object supports the following:

  • apiServer (pulumi.Input[str])

The integration_multai_runtime object supports the following:

  • deployment_id (pulumi.Input[str])

The integration_nomad object supports the following:

  • aclToken (pulumi.Input[str])

  • autoscaleConstraints (pulumi.Input[list])

    • key (pulumi.Input[str])

    • value (pulumi.Input[str])

  • autoscaleCooldown (pulumi.Input[float])

  • autoscaleDown (pulumi.Input[dict])

    • evaluationPeriods (pulumi.Input[float])

  • autoscaleHeadroom (pulumi.Input[dict])

    • cpuPerUnit (pulumi.Input[float])

    • memoryPerUnit (pulumi.Input[float])

    • numOfUnits (pulumi.Input[float])

  • autoscaleIsEnabled (pulumi.Input[bool])

  • masterHost (pulumi.Input[str])

  • masterPort (pulumi.Input[float])

The integration_rancher object supports the following:

  • accessKey (pulumi.Input[str])

  • masterHost (pulumi.Input[str])

  • secretKey (pulumi.Input[str])

  • version (pulumi.Input[str])

The integration_route53 object supports the following:

  • domains (pulumi.Input[list])

    • hostedZoneId (pulumi.Input[str])

    • recordSets (pulumi.Input[list])

      • name (pulumi.Input[str]) - The group name.

      • usePublicIp (pulumi.Input[bool])

    • spotinstAcctId (pulumi.Input[str])

The multai_target_sets object supports the following:

  • balancer_id (pulumi.Input[str])

  • target_set_id (pulumi.Input[str])

The network_interfaces object supports the following:

  • associateIpv6Address (pulumi.Input[bool])

  • associate_public_ip_address (pulumi.Input[bool])

  • deleteOnTermination (pulumi.Input[bool])

  • description (pulumi.Input[str]) - The group description.

  • deviceIndex (pulumi.Input[str])

  • networkInterfaceId (pulumi.Input[str])

  • privateIpAddress (pulumi.Input[str])

  • secondaryPrivateIpAddressCount (pulumi.Input[str])

The revert_to_spot object supports the following:

  • performAt (pulumi.Input[str]) - In the event of a fallback to On-Demand instances, select the time period to revert back to Spot. Supported Arguments – always (default), timeWindow, never. For timeWindow or never to be valid the group must have availabilityOriented OR persistence defined.

  • timeWindows (pulumi.Input[list]) - Specify a list of time windows for to execute revertToSpot strategy. Time window format: ddd:hh:mm-ddd:hh:mm. Example: Mon:03:00-Wed:02:30

The scaling_down_policies object supports the following:

  • actionType (pulumi.Input[str])

  • adjustment (pulumi.Input[str])

  • cooldown (pulumi.Input[float])

  • dimensions (pulumi.Input[list])

    • name (pulumi.Input[str]) - The group name.

    • value (pulumi.Input[str])

  • evaluationPeriods (pulumi.Input[float])

  • isEnabled (pulumi.Input[bool])

  • maxTargetCapacity (pulumi.Input[str])

  • maximum (pulumi.Input[str])

  • metricName (pulumi.Input[str])

  • minTargetCapacity (pulumi.Input[str])

  • minimum (pulumi.Input[str])

  • namespace (pulumi.Input[str])

  • operator (pulumi.Input[str])

  • period (pulumi.Input[float])

  • policyName (pulumi.Input[str])

  • source (pulumi.Input[str])

  • statistic (pulumi.Input[str])

  • target (pulumi.Input[str])

  • threshold (pulumi.Input[float])

  • unit (pulumi.Input[str])

The scaling_strategies object supports the following:

  • terminateAtEndOfBillingHour (pulumi.Input[bool]) - Specify whether to terminate instances at the end of each billing hour.

  • terminationPolicy (pulumi.Input[str]) - - Determines whether to terminate the newest instances when performing a scaling action. Valid values: "default", "newestInstance".

The scaling_target_policies object supports the following:

  • cooldown (pulumi.Input[float])

  • dimensions (pulumi.Input[list])

    • name (pulumi.Input[str]) - The group name.

    • value (pulumi.Input[str])

  • maxCapacityPerScale (pulumi.Input[str])

  • metricName (pulumi.Input[str])

  • namespace (pulumi.Input[str])

  • policyName (pulumi.Input[str])

  • predictiveMode (pulumi.Input[str])

  • source (pulumi.Input[str])

  • statistic (pulumi.Input[str])

  • target (pulumi.Input[float])

  • unit (pulumi.Input[str])

The scaling_up_policies object supports the following:

  • actionType (pulumi.Input[str])

  • adjustment (pulumi.Input[str])

  • cooldown (pulumi.Input[float])

  • dimensions (pulumi.Input[list])

    • name (pulumi.Input[str]) - The group name.

    • value (pulumi.Input[str])

  • evaluationPeriods (pulumi.Input[float])

  • isEnabled (pulumi.Input[bool])

  • maxTargetCapacity (pulumi.Input[str])

  • maximum (pulumi.Input[str])

  • metricName (pulumi.Input[str])

  • minTargetCapacity (pulumi.Input[str])

  • minimum (pulumi.Input[str])

  • namespace (pulumi.Input[str])

  • operator (pulumi.Input[str])

  • period (pulumi.Input[float])

  • policyName (pulumi.Input[str])

  • source (pulumi.Input[str])

  • statistic (pulumi.Input[str])

  • target (pulumi.Input[str])

  • threshold (pulumi.Input[float])

  • unit (pulumi.Input[str])

The scheduled_tasks object supports the following:

  • adjustment (pulumi.Input[str])

  • adjustmentPercentage (pulumi.Input[str])

  • batchSizePercentage (pulumi.Input[str])

  • cronExpression (pulumi.Input[str])

  • frequency (pulumi.Input[str])

  • grace_period (pulumi.Input[str])

  • isEnabled (pulumi.Input[bool])

  • maxCapacity (pulumi.Input[str])

  • minCapacity (pulumi.Input[str])

  • scaleMaxCapacity (pulumi.Input[str])

  • scaleMinCapacity (pulumi.Input[str])

  • scaleTargetCapacity (pulumi.Input[str])

  • startTime (pulumi.Input[str])

  • targetCapacity (pulumi.Input[str])

  • taskType (pulumi.Input[str])

The signals object supports the following:

  • name (pulumi.Input[str]) - The group name.

  • timeout (pulumi.Input[float])

The stateful_deallocation object supports the following:

  • shouldDeleteImages (pulumi.Input[bool])

  • shouldDeleteNetworkInterfaces (pulumi.Input[bool])

  • shouldDeleteSnapshots (pulumi.Input[bool])

  • shouldDeleteVolumes (pulumi.Input[bool])

The tags object supports the following:

  • key (pulumi.Input[str])

  • value (pulumi.Input[str])

The update_policy object supports the following:

  • autoApplyTags (pulumi.Input[bool])

  • rollConfig (pulumi.Input[dict])

    • batchSizePercentage (pulumi.Input[float])

    • grace_period (pulumi.Input[float])

    • health_check_type (pulumi.Input[str]) - 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".

    • strategy (pulumi.Input[dict])

      • action (pulumi.Input[str])

      • batchMinHealthyPercentage (pulumi.Input[float])

      • onFailure (pulumi.Input[dict])

        • actionType (pulumi.Input[str])

        • batchNum (pulumi.Input[float])

        • draining_timeout (pulumi.Input[float]) - The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.

        • shouldDecrementTargetCapacity (pulumi.Input[bool])

        • shouldHandleAllBatches (pulumi.Input[bool])

      • shouldDrainInstances (pulumi.Input[bool])

    • waitForRollPercentage (pulumi.Input[float])

    • waitForRollTimeout (pulumi.Input[float])

  • shouldResumeStateful (pulumi.Input[bool])

  • shouldRoll (pulumi.Input[bool])

availability_zones: pulumi.Output[list] = None

List of Strings of availability zones. When this parameter is set, subnet_ids should be left unused. Note: availability_zones 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: availability_zones = ["us-east-1a:subnet-123456:ClusterI03"]

capacity_unit: pulumi.Output[str] = None

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.

cpu_credits: pulumi.Output[str] = None

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

description: pulumi.Output[str] = None

The group description.

desired_capacity: pulumi.Output[float] = None

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

draining_timeout: pulumi.Output[float] = None

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

ebs_optimized: pulumi.Output[bool] = None

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.

elastic_ips: pulumi.Output[list] = None

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

enable_monitoring: pulumi.Output[bool] = None

Indicates whether monitoring is enabled for the instance.

fallback_to_ondemand: pulumi.Output[bool] = None

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

health_check_grace_period: pulumi.Output[float] = None

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

health_check_type: pulumi.Output[str] = None

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

health_check_unhealthy_duration_before_replacement: pulumi.Output[float] = None

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

iam_instance_profile: pulumi.Output[str] = None

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

image_id: pulumi.Output[str] = None

The ID of the AMI used to launch the instance.

instance_types_ondemand: pulumi.Output[str] = None

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

instance_types_preferred_spots: pulumi.Output[list] = None

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

instance_types_spots: pulumi.Output[list] = None

One or more instance types.

instance_types_weights: pulumi.Output[list] = None

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

  • instanceType (str) - Name of instance type (String).

  • weight (float) - Weight per instance type (Integer).

key_name: pulumi.Output[str] = None

The key name that should be used for the instance.

max_size: pulumi.Output[float] = None

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

min_size: pulumi.Output[float] = None

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

name: pulumi.Output[str] = None

The group name.

ondemand_count: pulumi.Output[float] = None

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

orientation: pulumi.Output[str] = None

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

placement_tenancy: pulumi.Output[str] = None

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

preferred_availability_zones: pulumi.Output[list] = None

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 availability_zones and orientation value must not be "equalAzDistribution".

product: pulumi.Output[str] = None

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)".

region: pulumi.Output[str] = None

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

revert_to_spot: pulumi.Output[dict] = None

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

  • performAt (str) - In the event of a fallback to On-Demand instances, select the time period to revert back to Spot. Supported Arguments – always (default), timeWindow, never. For timeWindow or never to be valid the group must have availabilityOriented OR persistence defined.

  • timeWindows (list) - Specify a list of time windows for to execute revertToSpot strategy. Time window format: ddd:hh:mm-ddd:hh:mm. Example: Mon:03:00-Wed:02:30

scaling_strategies: pulumi.Output[list] = None

Set termination policy.

  • terminateAtEndOfBillingHour (bool) - Specify whether to terminate instances at the end of each billing hour.

  • terminationPolicy (str) - - Determines whether to terminate the newest instances when performing a scaling action. Valid values: "default", "newestInstance".

security_groups: pulumi.Output[list] = None

A list of associated security group IDS.

shutdown_script: pulumi.Output[str] = None

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

spot_percentage: pulumi.Output[float] = None

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

subnet_ids: pulumi.Output[list] = None

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

tags: pulumi.Output[list] = None

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

  • key (str)

  • value (str)

user_data: pulumi.Output[str] = None

The user data to provide when launching the instance.

utilize_reserved_instances: pulumi.Output[bool] = None

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

wait_for_capacity: pulumi.Output[float] = None

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

wait_for_capacity_timeout: pulumi.Output[float] = None

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.

static get(resource_name, id, opts=None, availability_zones=None, block_devices_mode=None, capacity_unit=None, cpu_credits=None, description=None, desired_capacity=None, draining_timeout=None, ebs_block_devices=None, ebs_optimized=None, elastic_ips=None, elastic_load_balancers=None, enable_monitoring=None, ephemeral_block_devices=None, fallback_to_ondemand=None, health_check_grace_period=None, health_check_type=None, health_check_unhealthy_duration_before_replacement=None, iam_instance_profile=None, image_id=None, instance_types_ondemand=None, instance_types_preferred_spots=None, instance_types_spots=None, instance_types_weights=None, integration_beanstalk=None, integration_codedeploy=None, integration_docker_swarm=None, integration_ecs=None, integration_gitlab=None, integration_kubernetes=None, integration_mesosphere=None, integration_multai_runtime=None, integration_nomad=None, integration_rancher=None, integration_route53=None, key_name=None, lifetime_period=None, max_size=None, min_size=None, multai_target_sets=None, name=None, network_interfaces=None, ondemand_count=None, orientation=None, persist_block_devices=None, persist_private_ip=None, persist_root_device=None, placement_tenancy=None, preferred_availability_zones=None, private_ips=None, product=None, region=None, revert_to_spot=None, scaling_down_policies=None, scaling_strategies=None, scaling_target_policies=None, scaling_up_policies=None, scheduled_tasks=None, security_groups=None, shutdown_script=None, signals=None, spot_percentage=None, stateful_deallocation=None, subnet_ids=None, tags=None, target_group_arns=None, update_policy=None, user_data=None, utilize_reserved_instances=None, wait_for_capacity=None, wait_for_capacity_timeout=None)

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

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • availability_zones (pulumi.Input[list]) – List of Strings of availability zones. When this parameter is set, subnet_ids should be left unused. Note: availability_zones 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: availability_zones = ["us-east-1a:subnet-123456:ClusterI03"]

  • capacity_unit (pulumi.Input[str]) – 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.

  • cpu_credits (pulumi.Input[str]) – Controls how T3 instances are launched. Valid values: standard, unlimited.

  • description (pulumi.Input[str]) – The group description.

  • desired_capacity (pulumi.Input[float]) – The desired number of instances the group should have at any time.

  • draining_timeout (pulumi.Input[float]) – The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.

  • ebs_optimized (pulumi.Input[bool]) – 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.

  • elastic_ips (pulumi.Input[list]) –

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

  • enable_monitoring (pulumi.Input[bool]) – Indicates whether monitoring is enabled for the instance.

  • fallback_to_ondemand (pulumi.Input[bool]) – In a case of no Spot instances available, Elastigroup will launch on-demand instances instead.

  • health_check_grace_period (pulumi.Input[float]) – The amount of time, in seconds, after the instance has launched to starts and check its health.

  • health_check_type (pulumi.Input[str]) – 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".

  • health_check_unhealthy_duration_before_replacement (pulumi.Input[float]) – 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).

  • iam_instance_profile (pulumi.Input[str]) – The ARN or name of an IAM instance profile to associate with launched instances.

  • image_id (pulumi.Input[str]) – The ID of the AMI used to launch the instance.

  • instance_types_ondemand (pulumi.Input[str]) – The type of instance determines your instance’s CPU capacity, memory and storage (e.g., m1.small, c1.xlarge).

  • instance_types_preferred_spots (pulumi.Input[list]) – Prioritize a subset of spot instance types. Must be a subset of the selected spot instance types.

  • instance_types_spots (pulumi.Input[list]) – One or more instance types.

  • instance_types_weights (pulumi.Input[list]) – List of weights per instance type for weighted groups. Each object in the list should have the following attributes:

  • key_name (pulumi.Input[str]) – The key name that should be used for the instance.

  • max_size (pulumi.Input[float]) – The maximum number of instances the group should have at any time.

  • min_size (pulumi.Input[float]) – The minimum number of instances the group should have at any time.

  • name (pulumi.Input[str]) – The group name.

  • ondemand_count (pulumi.Input[float]) – Number of on demand instances to launch in the group. All other instances will be spot instances. When this parameter is set the spot_percentage parameter is being ignored.

  • orientation (pulumi.Input[str]) – Select a prediction strategy. Valid values: "balanced", "costOriented", "equalAzDistribution", "availabilityOriented".

  • placement_tenancy (pulumi.Input[str]) – Enable dedicated tenancy. Note: There is a flat hourly fee for each region in which dedicated tenancy is used.

  • preferred_availability_zones (pulumi.Input[list]) – 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 availability_zones and orientation value must not be "equalAzDistribution".

  • product (pulumi.Input[str]) – 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)".

  • region (pulumi.Input[str]) – 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).

  • revert_to_spot (pulumi.Input[dict]) – Hold settings for strategy correction – replacing On-Demand for Spot instances. Supported Values: "never", "always", "timeWindow"

  • scaling_strategies (pulumi.Input[list]) – Set termination policy.

  • security_groups (pulumi.Input[list]) – A list of associated security group IDS.

  • shutdown_script (pulumi.Input[str]) –

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

  • spot_percentage (pulumi.Input[float]) – The percentage of Spot instances that would spin up from the desired_capacity number.

  • subnet_ids (pulumi.Input[list]) – List of Strings of subnet identifiers. Note: When this parameter is set, availability_zones should be left unused.

  • tags (pulumi.Input[list]) – A key/value mapping of tags to assign to the resource.

  • user_data (pulumi.Input[str]) – The user data to provide when launching the instance.

  • utilize_reserved_instances (pulumi.Input[bool]) – In a case of any available reserved instances, Elastigroup will utilize them first before purchasing Spot instances.

  • wait_for_capacity (pulumi.Input[float]) – Minimum number of instances in a ‘HEALTHY’ status that is required before continuing. This is ignored when updating with blue/green deployment. Cannot exceed desired_capacity.

  • wait_for_capacity_timeout (pulumi.Input[float]) – 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.

The ebs_block_devices object supports the following:

  • deleteOnTermination (pulumi.Input[bool])

  • deviceName (pulumi.Input[str])

  • encrypted (pulumi.Input[bool])

  • iops (pulumi.Input[float])

  • kmsKeyId (pulumi.Input[str])

  • snapshotId (pulumi.Input[str])

  • volumeSize (pulumi.Input[float])

  • volumeType (pulumi.Input[str])

The ephemeral_block_devices object supports the following:

  • deviceName (pulumi.Input[str])

  • virtualName (pulumi.Input[str])

The instance_types_weights object supports the following:

  • instanceType (pulumi.Input[str]) - Name of instance type (String).

  • weight (pulumi.Input[float]) - Weight per instance type (Integer).

The integration_beanstalk object supports the following:

  • deployment_preferences (pulumi.Input[dict])

    • automaticRoll (pulumi.Input[bool])

    • batchSizePercentage (pulumi.Input[float])

    • grace_period (pulumi.Input[float])

    • strategy (pulumi.Input[dict])

      • action (pulumi.Input[str])

      • shouldDrainInstances (pulumi.Input[bool])

  • environmentId (pulumi.Input[str])

  • managed_actions (pulumi.Input[dict])

    • platformUpdate (pulumi.Input[dict])

      • performAt (pulumi.Input[str]) - In the event of a fallback to On-Demand instances, select the time period to revert back to Spot. Supported Arguments – always (default), timeWindow, never. For timeWindow or never to be valid the group must have availabilityOriented OR persistence defined.

      • timeWindow (pulumi.Input[str])

      • updateLevel (pulumi.Input[str])

The integration_codedeploy object supports the following:

  • cleanupOnFailure (pulumi.Input[bool])

  • deploymentGroups (pulumi.Input[list])

    • applicationName (pulumi.Input[str])

    • deploymentGroupName (pulumi.Input[str])

  • terminateInstanceOnFailure (pulumi.Input[bool])

The integration_docker_swarm object supports the following:

  • autoscaleCooldown (pulumi.Input[float])

  • autoscaleDown (pulumi.Input[dict])

    • evaluationPeriods (pulumi.Input[float])

  • autoscaleHeadroom (pulumi.Input[dict])

    • cpuPerUnit (pulumi.Input[float])

    • memoryPerUnit (pulumi.Input[float])

    • numOfUnits (pulumi.Input[float])

  • autoscaleIsEnabled (pulumi.Input[bool])

  • masterHost (pulumi.Input[str])

  • masterPort (pulumi.Input[float])

The integration_ecs object supports the following:

  • autoscaleAttributes (pulumi.Input[list])

    • key (pulumi.Input[str])

    • value (pulumi.Input[str])

  • autoscaleCooldown (pulumi.Input[float])

  • autoscaleDown (pulumi.Input[dict])

    • evaluationPeriods (pulumi.Input[float])

    • maxScaleDownPercentage (pulumi.Input[float])

  • autoscaleHeadroom (pulumi.Input[dict])

    • cpuPerUnit (pulumi.Input[float])

    • memoryPerUnit (pulumi.Input[float])

    • numOfUnits (pulumi.Input[float])

  • autoscaleIsAutoConfig (pulumi.Input[bool])

  • autoscaleIsEnabled (pulumi.Input[bool])

  • autoscaleScaleDownNonServiceTasks (pulumi.Input[bool])

  • cluster_name (pulumi.Input[str])

The integration_gitlab object supports the following:

  • runner (pulumi.Input[dict])

    • isEnabled (pulumi.Input[bool])

The integration_kubernetes object supports the following:

  • apiServer (pulumi.Input[str])

  • autoscaleCooldown (pulumi.Input[float])

  • autoscaleDown (pulumi.Input[dict])

    • evaluationPeriods (pulumi.Input[float])

  • autoscaleHeadroom (pulumi.Input[dict])

    • cpuPerUnit (pulumi.Input[float])

    • memoryPerUnit (pulumi.Input[float])

    • numOfUnits (pulumi.Input[float])

  • autoscaleIsAutoConfig (pulumi.Input[bool])

  • autoscaleIsEnabled (pulumi.Input[bool])

  • autoscaleLabels (pulumi.Input[list])

    • key (pulumi.Input[str])

    • value (pulumi.Input[str])

  • clusterIdentifier (pulumi.Input[str])

  • integrationMode (pulumi.Input[str])

  • token (pulumi.Input[str])

The integration_mesosphere object supports the following:

  • apiServer (pulumi.Input[str])

The integration_multai_runtime object supports the following:

  • deployment_id (pulumi.Input[str])

The integration_nomad object supports the following:

  • aclToken (pulumi.Input[str])

  • autoscaleConstraints (pulumi.Input[list])

    • key (pulumi.Input[str])

    • value (pulumi.Input[str])

  • autoscaleCooldown (pulumi.Input[float])

  • autoscaleDown (pulumi.Input[dict])

    • evaluationPeriods (pulumi.Input[float])

  • autoscaleHeadroom (pulumi.Input[dict])

    • cpuPerUnit (pulumi.Input[float])

    • memoryPerUnit (pulumi.Input[float])

    • numOfUnits (pulumi.Input[float])

  • autoscaleIsEnabled (pulumi.Input[bool])

  • masterHost (pulumi.Input[str])

  • masterPort (pulumi.Input[float])

The integration_rancher object supports the following:

  • accessKey (pulumi.Input[str])

  • masterHost (pulumi.Input[str])

  • secretKey (pulumi.Input[str])

  • version (pulumi.Input[str])

The integration_route53 object supports the following:

  • domains (pulumi.Input[list])

    • hostedZoneId (pulumi.Input[str])

    • recordSets (pulumi.Input[list])

      • name (pulumi.Input[str]) - The group name.

      • usePublicIp (pulumi.Input[bool])

    • spotinstAcctId (pulumi.Input[str])

The multai_target_sets object supports the following:

  • balancer_id (pulumi.Input[str])

  • target_set_id (pulumi.Input[str])

The network_interfaces object supports the following:

  • associateIpv6Address (pulumi.Input[bool])

  • associate_public_ip_address (pulumi.Input[bool])

  • deleteOnTermination (pulumi.Input[bool])

  • description (pulumi.Input[str]) - The group description.

  • deviceIndex (pulumi.Input[str])

  • networkInterfaceId (pulumi.Input[str])

  • privateIpAddress (pulumi.Input[str])

  • secondaryPrivateIpAddressCount (pulumi.Input[str])

The revert_to_spot object supports the following:

  • performAt (pulumi.Input[str]) - In the event of a fallback to On-Demand instances, select the time period to revert back to Spot. Supported Arguments – always (default), timeWindow, never. For timeWindow or never to be valid the group must have availabilityOriented OR persistence defined.

  • timeWindows (pulumi.Input[list]) - Specify a list of time windows for to execute revertToSpot strategy. Time window format: ddd:hh:mm-ddd:hh:mm. Example: Mon:03:00-Wed:02:30

The scaling_down_policies object supports the following:

  • actionType (pulumi.Input[str])

  • adjustment (pulumi.Input[str])

  • cooldown (pulumi.Input[float])

  • dimensions (pulumi.Input[list])

    • name (pulumi.Input[str]) - The group name.

    • value (pulumi.Input[str])

  • evaluationPeriods (pulumi.Input[float])

  • isEnabled (pulumi.Input[bool])

  • maxTargetCapacity (pulumi.Input[str])

  • maximum (pulumi.Input[str])

  • metricName (pulumi.Input[str])

  • minTargetCapacity (pulumi.Input[str])

  • minimum (pulumi.Input[str])

  • namespace (pulumi.Input[str])

  • operator (pulumi.Input[str])

  • period (pulumi.Input[float])

  • policyName (pulumi.Input[str])

  • source (pulumi.Input[str])

  • statistic (pulumi.Input[str])

  • target (pulumi.Input[str])

  • threshold (pulumi.Input[float])

  • unit (pulumi.Input[str])

The scaling_strategies object supports the following:

  • terminateAtEndOfBillingHour (pulumi.Input[bool]) - Specify whether to terminate instances at the end of each billing hour.

  • terminationPolicy (pulumi.Input[str]) - - Determines whether to terminate the newest instances when performing a scaling action. Valid values: "default", "newestInstance".

The scaling_target_policies object supports the following:

  • cooldown (pulumi.Input[float])

  • dimensions (pulumi.Input[list])

    • name (pulumi.Input[str]) - The group name.

    • value (pulumi.Input[str])

  • maxCapacityPerScale (pulumi.Input[str])

  • metricName (pulumi.Input[str])

  • namespace (pulumi.Input[str])

  • policyName (pulumi.Input[str])

  • predictiveMode (pulumi.Input[str])

  • source (pulumi.Input[str])

  • statistic (pulumi.Input[str])

  • target (pulumi.Input[float])

  • unit (pulumi.Input[str])

The scaling_up_policies object supports the following:

  • actionType (pulumi.Input[str])

  • adjustment (pulumi.Input[str])

  • cooldown (pulumi.Input[float])

  • dimensions (pulumi.Input[list])

    • name (pulumi.Input[str]) - The group name.

    • value (pulumi.Input[str])

  • evaluationPeriods (pulumi.Input[float])

  • isEnabled (pulumi.Input[bool])

  • maxTargetCapacity (pulumi.Input[str])

  • maximum (pulumi.Input[str])

  • metricName (pulumi.Input[str])

  • minTargetCapacity (pulumi.Input[str])

  • minimum (pulumi.Input[str])

  • namespace (pulumi.Input[str])

  • operator (pulumi.Input[str])

  • period (pulumi.Input[float])

  • policyName (pulumi.Input[str])

  • source (pulumi.Input[str])

  • statistic (pulumi.Input[str])

  • target (pulumi.Input[str])

  • threshold (pulumi.Input[float])

  • unit (pulumi.Input[str])

The scheduled_tasks object supports the following:

  • adjustment (pulumi.Input[str])

  • adjustmentPercentage (pulumi.Input[str])

  • batchSizePercentage (pulumi.Input[str])

  • cronExpression (pulumi.Input[str])

  • frequency (pulumi.Input[str])

  • grace_period (pulumi.Input[str])

  • isEnabled (pulumi.Input[bool])

  • maxCapacity (pulumi.Input[str])

  • minCapacity (pulumi.Input[str])

  • scaleMaxCapacity (pulumi.Input[str])

  • scaleMinCapacity (pulumi.Input[str])

  • scaleTargetCapacity (pulumi.Input[str])

  • startTime (pulumi.Input[str])

  • targetCapacity (pulumi.Input[str])

  • taskType (pulumi.Input[str])

The signals object supports the following:

  • name (pulumi.Input[str]) - The group name.

  • timeout (pulumi.Input[float])

The stateful_deallocation object supports the following:

  • shouldDeleteImages (pulumi.Input[bool])

  • shouldDeleteNetworkInterfaces (pulumi.Input[bool])

  • shouldDeleteSnapshots (pulumi.Input[bool])

  • shouldDeleteVolumes (pulumi.Input[bool])

The tags object supports the following:

  • key (pulumi.Input[str])

  • value (pulumi.Input[str])

The update_policy object supports the following:

  • autoApplyTags (pulumi.Input[bool])

  • rollConfig (pulumi.Input[dict])

    • batchSizePercentage (pulumi.Input[float])

    • grace_period (pulumi.Input[float])

    • health_check_type (pulumi.Input[str]) - 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".

    • strategy (pulumi.Input[dict])

      • action (pulumi.Input[str])

      • batchMinHealthyPercentage (pulumi.Input[float])

      • onFailure (pulumi.Input[dict])

        • actionType (pulumi.Input[str])

        • batchNum (pulumi.Input[float])

        • draining_timeout (pulumi.Input[float]) - The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.

        • shouldDecrementTargetCapacity (pulumi.Input[bool])

        • shouldHandleAllBatches (pulumi.Input[bool])

      • shouldDrainInstances (pulumi.Input[bool])

    • waitForRollPercentage (pulumi.Input[float])

    • waitForRollTimeout (pulumi.Input[float])

  • shouldResumeStateful (pulumi.Input[bool])

  • shouldRoll (pulumi.Input[bool])

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_spotinst.aws.ManagedInstance(resource_name, opts=None, auto_healing=None, block_devices_mode=None, cpu_credits=None, description=None, draining_timeout=None, ebs_optimized=None, elastic_ip=None, enable_monitoring=None, fall_back_to_od=None, grace_period=None, health_check_type=None, iam_instance_profile=None, image_id=None, instance_types=None, integration_route53=None, key_pair=None, life_cycle=None, load_balancers=None, name=None, network_interfaces=None, optimization_windows=None, orientation=None, persist_block_devices=None, persist_private_ip=None, persist_root_device=None, placement_tenancy=None, preferred_type=None, private_ip=None, product=None, region=None, revert_to_spot=None, scheduled_tasks=None, security_group_ids=None, shutdown_script=None, subnet_ids=None, tags=None, unhealthy_duration=None, user_data=None, utilize_reserved_instances=None, vpc_id=None, __props__=None, __name__=None, __opts__=None)

Create a ManagedInstance resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[bool] auto_healing: Enable the auto healing which auto replaces the instance in case the health check fails, default: “true”. :param pulumi.Input[str] block_devices_mode: Determine the way we attach the data volumes to the data devices. Valid values: "reattach", "onLaunch".

Default: "onLaunch".

Parameters
  • cpu_credits (pulumi.Input[str]) – cpuCredits can have one of two values: “unlimited”, “standard”. Default: unlimited

  • description (pulumi.Input[str]) – The ManagedInstance description.

  • draining_timeout (pulumi.Input[float]) – 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.

  • ebs_optimized (pulumi.Input[bool]) – Enable EBS optimization for supported instance which is not enabled by default. Note - additional charges will be applied. Default: false

  • elastic_ip (pulumi.Input[str]) – Elastic IP Allocation Id to associate to the instance.

  • enable_monitoring (pulumi.Input[bool]) – Describes whether instance Enhanced Monitoring is enabled. Default: false

  • grace_period (pulumi.Input[float]) – The amount of time, in seconds, after the instance has launched to starts and check its health, default “120".

  • health_check_type (pulumi.Input[str]) – The service to use for the health check. Valid values: “EC2”, “ELB”, “TARGET_GROUP”, “MULTAI_TARGET_SET”. Default: “EC2”.

  • iam_instance_profile (pulumi.Input[str]) – Set IAM profile to instance. Set only one of ARN or Name.

  • image_id (pulumi.Input[str]) – The ID of the image used to launch the instance.

  • instance_types (pulumi.Input[list]) – Comma separated list of available instance types for instance.

  • key_pair (pulumi.Input[str]) – Specify a Key Pair to attach to the instances.

  • life_cycle (pulumi.Input[str]) – Set lifecycle, valid values: “spot”, “on_demand”. Default "spot".

  • name (pulumi.Input[str]) – The ManagedInstance name.

  • optimization_windows (pulumi.Input[list]) – 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.

  • orientation (pulumi.Input[str]) – Select a prediction strategy. Valid values: "balanced", "costOriented", "availabilityOriented", "cheapest". Default: "availabilityOriented".

  • persist_block_devices (pulumi.Input[bool]) – Should the instance maintain its Data volumes.

  • persist_private_ip (pulumi.Input[bool]) – Should the instance maintain its private IP.

  • persist_root_device (pulumi.Input[bool]) – Should the instance maintain its root device volumes.

  • placement_tenancy (pulumi.Input[str]) – Valid values: “default”, “dedicated” Default: default

  • preferred_type (pulumi.Input[str]) – Preferred instance types for the instance. We will automatically select optional similar instance types to ensure optimized cost efficiency

  • private_ip (pulumi.Input[str]) – Private IP Allocation Id to associate to the instance.

  • product (pulumi.Input[str]) – 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)".

  • region (pulumi.Input[str]) – The AWS region your group will be created in.

  • security_group_ids (pulumi.Input[list]) – One or more security group IDs.

  • shutdown_script (pulumi.Input[str]) – The Base64-encoded shutdown script to execute prior to instance termination.

  • subnet_ids (pulumi.Input[list]) – A comma-separated list of subnet identifiers for your instance.

  • tags (pulumi.Input[list]) – Set tags for the instance. Items should be unique.

  • unhealthy_duration (pulumi.Input[float]) – 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".

  • user_data (pulumi.Input[str]) – The Base64-encoded MIME user data to make available to the instances.

  • utilize_reserved_instances (pulumi.Input[bool]) – In case of any available Reserved Instances, Managed Instance will utilize them before purchasing Spot instances. Default: "false".

The integration_route53 object supports the following:

  • domains (pulumi.Input[list])

    • hostedZoneId (pulumi.Input[str])

    • recordSets (pulumi.Input[list])

      • name (pulumi.Input[str]) - The ManagedInstance name.

      • usePublicIp (pulumi.Input[bool])

    • spotinstAcctId (pulumi.Input[str])

The load_balancers object supports the following:

  • arn (pulumi.Input[str])

  • autoWeight (pulumi.Input[bool])

  • azAwareness (pulumi.Input[bool])

  • balancer_id (pulumi.Input[str])

  • name (pulumi.Input[str]) - The ManagedInstance name.

  • target_set_id (pulumi.Input[str])

  • type (pulumi.Input[str])

The network_interfaces object supports the following:

  • associateIpv6Address (pulumi.Input[bool])

  • associate_public_ip_address (pulumi.Input[bool])

  • deviceIndex (pulumi.Input[str])

The revert_to_spot object supports the following:

  • performAt (pulumi.Input[str]) - Valid values: “always”, “never”, “timeWindow”. Default "never".

The scheduled_tasks object supports the following:

  • cronExpression (pulumi.Input[str])

  • frequency (pulumi.Input[str])

  • isEnabled (pulumi.Input[bool])

  • startTime (pulumi.Input[str])

  • taskType (pulumi.Input[str])

The tags object supports the following:

  • key (pulumi.Input[str]) - Tag’s key.

  • value (pulumi.Input[str]) - Tag’s name.

auto_healing: pulumi.Output[bool] = None

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

block_devices_mode: pulumi.Output[str] = None

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

cpu_credits: pulumi.Output[str] = None

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

description: pulumi.Output[str] = None

The ManagedInstance description.

draining_timeout: pulumi.Output[float] = None

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.

ebs_optimized: pulumi.Output[bool] = None

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

elastic_ip: pulumi.Output[str] = None

Elastic IP Allocation Id to associate to the instance.

enable_monitoring: pulumi.Output[bool] = None

Describes whether instance Enhanced Monitoring is enabled. Default: false

grace_period: pulumi.Output[float] = None

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

health_check_type: pulumi.Output[str] = None

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

iam_instance_profile: pulumi.Output[str] = None

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

image_id: pulumi.Output[str] = None

The ID of the image used to launch the instance.

instance_types: pulumi.Output[list] = None

Comma separated list of available instance types for instance.

key_pair: pulumi.Output[str] = None

Specify a Key Pair to attach to the instances.

life_cycle: pulumi.Output[str] = None

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

name: pulumi.Output[str] = None

The ManagedInstance name.

optimization_windows: pulumi.Output[list] = None

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.

orientation: pulumi.Output[str] = None

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

persist_block_devices: pulumi.Output[bool] = None

Should the instance maintain its Data volumes.

persist_private_ip: pulumi.Output[bool] = None

Should the instance maintain its private IP.

persist_root_device: pulumi.Output[bool] = None

Should the instance maintain its root device volumes.

placement_tenancy: pulumi.Output[str] = None

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

preferred_type: pulumi.Output[str] = None

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

private_ip: pulumi.Output[str] = None

Private IP Allocation Id to associate to the instance.

product: pulumi.Output[str] = None

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)".

region: pulumi.Output[str] = None

The AWS region your group will be created in.

security_group_ids: pulumi.Output[list] = None

One or more security group IDs.

shutdown_script: pulumi.Output[str] = None

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

subnet_ids: pulumi.Output[list] = None

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

tags: pulumi.Output[list] = None

Set tags for the instance. Items should be unique.

  • key (str) - Tag’s key.

  • value (str) - Tag’s name.

unhealthy_duration: pulumi.Output[float] = None

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

user_data: pulumi.Output[str] = None

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

utilize_reserved_instances: pulumi.Output[bool] = None

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

static get(resource_name, id, opts=None, auto_healing=None, block_devices_mode=None, cpu_credits=None, description=None, draining_timeout=None, ebs_optimized=None, elastic_ip=None, enable_monitoring=None, fall_back_to_od=None, grace_period=None, health_check_type=None, iam_instance_profile=None, image_id=None, instance_types=None, integration_route53=None, key_pair=None, life_cycle=None, load_balancers=None, name=None, network_interfaces=None, optimization_windows=None, orientation=None, persist_block_devices=None, persist_private_ip=None, persist_root_device=None, placement_tenancy=None, preferred_type=None, private_ip=None, product=None, region=None, revert_to_spot=None, scheduled_tasks=None, security_group_ids=None, shutdown_script=None, subnet_ids=None, tags=None, unhealthy_duration=None, user_data=None, utilize_reserved_instances=None, vpc_id=None)

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

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • auto_healing (pulumi.Input[bool]) – Enable the auto healing which auto replaces the instance in case the health check fails, default: “true”.

  • block_devices_mode (pulumi.Input[str]) – Determine the way we attach the data volumes to the data devices. Valid values: "reattach", "onLaunch". Default: "onLaunch".

  • cpu_credits (pulumi.Input[str]) – cpuCredits can have one of two values: “unlimited”, “standard”. Default: unlimited

  • description (pulumi.Input[str]) – The ManagedInstance description.

  • draining_timeout (pulumi.Input[float]) – 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.

  • ebs_optimized (pulumi.Input[bool]) – Enable EBS optimization for supported instance which is not enabled by default. Note - additional charges will be applied. Default: false

  • elastic_ip (pulumi.Input[str]) – Elastic IP Allocation Id to associate to the instance.

  • enable_monitoring (pulumi.Input[bool]) – Describes whether instance Enhanced Monitoring is enabled. Default: false

  • grace_period (pulumi.Input[float]) – The amount of time, in seconds, after the instance has launched to starts and check its health, default “120".

  • health_check_type (pulumi.Input[str]) – The service to use for the health check. Valid values: “EC2”, “ELB”, “TARGET_GROUP”, “MULTAI_TARGET_SET”. Default: “EC2”.

  • iam_instance_profile (pulumi.Input[str]) – Set IAM profile to instance. Set only one of ARN or Name.

  • image_id (pulumi.Input[str]) – The ID of the image used to launch the instance.

  • instance_types (pulumi.Input[list]) – Comma separated list of available instance types for instance.

  • key_pair (pulumi.Input[str]) – Specify a Key Pair to attach to the instances.

  • life_cycle (pulumi.Input[str]) – Set lifecycle, valid values: “spot”, “on_demand”. Default "spot".

  • name (pulumi.Input[str]) – The ManagedInstance name.

  • optimization_windows (pulumi.Input[list]) – 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.

  • orientation (pulumi.Input[str]) – Select a prediction strategy. Valid values: "balanced", "costOriented", "availabilityOriented", "cheapest". Default: "availabilityOriented".

  • persist_block_devices (pulumi.Input[bool]) – Should the instance maintain its Data volumes.

  • persist_private_ip (pulumi.Input[bool]) – Should the instance maintain its private IP.

  • persist_root_device (pulumi.Input[bool]) – Should the instance maintain its root device volumes.

  • placement_tenancy (pulumi.Input[str]) – Valid values: “default”, “dedicated” Default: default

  • preferred_type (pulumi.Input[str]) – Preferred instance types for the instance. We will automatically select optional similar instance types to ensure optimized cost efficiency

  • private_ip (pulumi.Input[str]) – Private IP Allocation Id to associate to the instance.

  • product (pulumi.Input[str]) – 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)".

  • region (pulumi.Input[str]) – The AWS region your group will be created in.

  • security_group_ids (pulumi.Input[list]) – One or more security group IDs.

  • shutdown_script (pulumi.Input[str]) – The Base64-encoded shutdown script to execute prior to instance termination.

  • subnet_ids (pulumi.Input[list]) – A comma-separated list of subnet identifiers for your instance.

  • tags (pulumi.Input[list]) – Set tags for the instance. Items should be unique.

  • unhealthy_duration (pulumi.Input[float]) – 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".

  • user_data (pulumi.Input[str]) – The Base64-encoded MIME user data to make available to the instances.

  • utilize_reserved_instances (pulumi.Input[bool]) – In case of any available Reserved Instances, Managed Instance will utilize them before purchasing Spot instances. Default: "false".

The integration_route53 object supports the following:

  • domains (pulumi.Input[list])

    • hostedZoneId (pulumi.Input[str])

    • recordSets (pulumi.Input[list])

      • name (pulumi.Input[str]) - The ManagedInstance name.

      • usePublicIp (pulumi.Input[bool])

    • spotinstAcctId (pulumi.Input[str])

The load_balancers object supports the following:

  • arn (pulumi.Input[str])

  • autoWeight (pulumi.Input[bool])

  • azAwareness (pulumi.Input[bool])

  • balancer_id (pulumi.Input[str])

  • name (pulumi.Input[str]) - The ManagedInstance name.

  • target_set_id (pulumi.Input[str])

  • type (pulumi.Input[str])

The network_interfaces object supports the following:

  • associateIpv6Address (pulumi.Input[bool])

  • associate_public_ip_address (pulumi.Input[bool])

  • deviceIndex (pulumi.Input[str])

The revert_to_spot object supports the following:

  • performAt (pulumi.Input[str]) - Valid values: “always”, “never”, “timeWindow”. Default "never".

The scheduled_tasks object supports the following:

  • cronExpression (pulumi.Input[str])

  • frequency (pulumi.Input[str])

  • isEnabled (pulumi.Input[bool])

  • startTime (pulumi.Input[str])

  • taskType (pulumi.Input[str])

The tags object supports the following:

  • key (pulumi.Input[str]) - Tag’s key.

  • value (pulumi.Input[str]) - Tag’s name.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_spotinst.aws.MrScalar(resource_name, opts=None, additional_info=None, additional_primary_security_groups=None, additional_replica_security_groups=None, applications=None, availability_zones=None, bootstrap_actions_files=None, cluster_id=None, configurations_files=None, core_desired_capacity=None, core_ebs_block_devices=None, core_ebs_optimized=None, core_instance_types=None, core_lifecycle=None, core_max_size=None, core_min_size=None, core_scaling_down_policies=None, core_scaling_up_policies=None, core_unit=None, custom_ami_id=None, description=None, ebs_root_volume_size=None, ec2_key_name=None, expose_cluster_id=None, instance_weights=None, job_flow_role=None, keep_job_flow_alive=None, log_uri=None, managed_primary_security_group=None, managed_replica_security_group=None, master_ebs_block_devices=None, master_ebs_optimized=None, master_instance_types=None, master_lifecycle=None, name=None, provisioning_timeout=None, region=None, release_label=None, repo_upgrade_on_boot=None, retries=None, scheduled_tasks=None, security_config=None, service_access_security_group=None, service_role=None, steps_files=None, strategy=None, tags=None, task_desired_capacity=None, task_ebs_block_devices=None, task_ebs_optimized=None, task_instance_types=None, task_lifecycle=None, task_max_size=None, task_min_size=None, task_scaling_down_policies=None, task_scaling_up_policies=None, task_unit=None, termination_policies=None, termination_protected=None, visible_to_all_users=None, __props__=None, __name__=None, __opts__=None)

Create a MrScalar resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] cluster_id: The MrScaler cluster id. :param pulumi.Input[str] description: The MrScaler description. :param pulumi.Input[str] name: The MrScaler name. :param pulumi.Input[str] region: The MrScaler region. :param pulumi.Input[str] strategy: The MrScaler strategy. Allowed values are new clone and wrap. :param pulumi.Input[list] termination_policies: Allows defining termination policies for EMR clusters based on CloudWatch Metrics.

The applications object supports the following:

  • args (pulumi.Input[list])

  • name (pulumi.Input[str]) - The MrScaler name.

  • version (pulumi.Input[str])

The bootstrap_actions_files object supports the following:

  • bucket (pulumi.Input[str])

  • key (pulumi.Input[str])

The configurations_files object supports the following:

  • bucket (pulumi.Input[str])

  • key (pulumi.Input[str])

The core_ebs_block_devices object supports the following:

  • iops (pulumi.Input[float])

  • sizeInGb (pulumi.Input[float])

  • volumeType (pulumi.Input[str])

  • volumesPerInstance (pulumi.Input[float])

The core_scaling_down_policies object supports the following:

  • actionType (pulumi.Input[str])

  • adjustment (pulumi.Input[str])

  • cooldown (pulumi.Input[float])

  • dimensions (pulumi.Input[dict])

  • evaluationPeriods (pulumi.Input[float]) - The number of periods over which data is compared to the specified threshold.

  • maxTargetCapacity (pulumi.Input[str])

  • maximum (pulumi.Input[str])

  • metricName (pulumi.Input[str]) - The name of the metric in CloudWatch which the statement will be based on.

  • minTargetCapacity (pulumi.Input[str])

  • minimum (pulumi.Input[str])

  • namespace (pulumi.Input[str]) - Must contain the value: AWS/ElasticMapReduce.

  • operator (pulumi.Input[str]) - The operator to use in order to determine if the policy is applicable. Valid values: gt | gte | lt | lte

  • period (pulumi.Input[float]) - The time window in seconds over which the statistic is applied.

  • policyName (pulumi.Input[str])

  • statistic (pulumi.Input[str]) - The aggregation method of the given metric. Valid Values: average | sum | sampleCount | maximum | minimum

  • target (pulumi.Input[str])

  • threshold (pulumi.Input[float]) - The value that the specified statistic is compared to.

  • unit (pulumi.Input[str]) - The unit for a given metric. Valid Values: seconds | microseconds | milliseconds | bytes | kilobytes | megabytes | gigabytes | terabytes | bits | kilobits | megabits | gigabits | terabits | percent | count | bytes/second | kilobytes/second | megabytes/second | gigabytes/second | terabytes/second | bits/second | kilobits/second | megabits/second | gigabits/second | terabits/second | count/second | none

The core_scaling_up_policies object supports the following:

  • actionType (pulumi.Input[str])

  • adjustment (pulumi.Input[str])

  • cooldown (pulumi.Input[float])

  • dimensions (pulumi.Input[dict])

  • evaluationPeriods (pulumi.Input[float]) - The number of periods over which data is compared to the specified threshold.

  • maxTargetCapacity (pulumi.Input[str])

  • maximum (pulumi.Input[str])

  • metricName (pulumi.Input[str]) - The name of the metric in CloudWatch which the statement will be based on.

  • minTargetCapacity (pulumi.Input[str])

  • minimum (pulumi.Input[str])

  • namespace (pulumi.Input[str]) - Must contain the value: AWS/ElasticMapReduce.

  • operator (pulumi.Input[str]) - The operator to use in order to determine if the policy is applicable. Valid values: gt | gte | lt | lte

  • period (pulumi.Input[float]) - The time window in seconds over which the statistic is applied.

  • policyName (pulumi.Input[str])

  • statistic (pulumi.Input[str]) - The aggregation method of the given metric. Valid Values: average | sum | sampleCount | maximum | minimum

  • target (pulumi.Input[str])

  • threshold (pulumi.Input[float]) - The value that the specified statistic is compared to.

  • unit (pulumi.Input[str]) - The unit for a given metric. Valid Values: seconds | microseconds | milliseconds | bytes | kilobytes | megabytes | gigabytes | terabytes | bits | kilobits | megabits | gigabits | terabits | percent | count | bytes/second | kilobytes/second | megabytes/second | gigabytes/second | terabytes/second | bits/second | kilobits/second | megabits/second | gigabits/second | terabits/second | count/second | none

The instance_weights object supports the following:

  • instanceType (pulumi.Input[str])

  • weightedCapacity (pulumi.Input[float])

The master_ebs_block_devices object supports the following:

  • iops (pulumi.Input[float])

  • sizeInGb (pulumi.Input[float])

  • volumeType (pulumi.Input[str])

  • volumesPerInstance (pulumi.Input[float])

The provisioning_timeout object supports the following:

  • timeout (pulumi.Input[float])

  • timeoutAction (pulumi.Input[str])

The scheduled_tasks object supports the following:

  • cron (pulumi.Input[str])

  • desired_capacity (pulumi.Input[str])

  • instanceGroupType (pulumi.Input[str])

  • isEnabled (pulumi.Input[bool])

  • maxCapacity (pulumi.Input[str])

  • minCapacity (pulumi.Input[str])

  • taskType (pulumi.Input[str])

The steps_files object supports the following:

  • bucket (pulumi.Input[str])

  • key (pulumi.Input[str])

The tags object supports the following:

  • key (pulumi.Input[str])

  • value (pulumi.Input[str])

The task_ebs_block_devices object supports the following:

  • iops (pulumi.Input[float])

  • sizeInGb (pulumi.Input[float])

  • volumeType (pulumi.Input[str])

  • volumesPerInstance (pulumi.Input[float])

The task_scaling_down_policies object supports the following:

  • actionType (pulumi.Input[str])

  • adjustment (pulumi.Input[str])

  • cooldown (pulumi.Input[float])

  • dimensions (pulumi.Input[dict])

  • evaluationPeriods (pulumi.Input[float]) - The number of periods over which data is compared to the specified threshold.

  • maxTargetCapacity (pulumi.Input[str])

  • maximum (pulumi.Input[str])

  • metricName (pulumi.Input[str]) - The name of the metric in CloudWatch which the statement will be based on.

  • minTargetCapacity (pulumi.Input[str])

  • minimum (pulumi.Input[str])

  • namespace (pulumi.Input[str]) - Must contain the value: AWS/ElasticMapReduce.

  • operator (pulumi.Input[str]) - The operator to use in order to determine if the policy is applicable. Valid values: gt | gte | lt | lte

  • period (pulumi.Input[float]) - The time window in seconds over which the statistic is applied.

  • policyName (pulumi.Input[str])

  • statistic (pulumi.Input[str]) - The aggregation method of the given metric. Valid Values: average | sum | sampleCount | maximum | minimum

  • target (pulumi.Input[str])

  • threshold (pulumi.Input[float]) - The value that the specified statistic is compared to.

  • unit (pulumi.Input[str]) - The unit for a given metric. Valid Values: seconds | microseconds | milliseconds | bytes | kilobytes | megabytes | gigabytes | terabytes | bits | kilobits | megabits | gigabits | terabits | percent | count | bytes/second | kilobytes/second | megabytes/second | gigabytes/second | terabytes/second | bits/second | kilobits/second | megabits/second | gigabits/second | terabits/second | count/second | none

The task_scaling_up_policies object supports the following:

  • actionType (pulumi.Input[str])

  • adjustment (pulumi.Input[str])

  • cooldown (pulumi.Input[float])

  • dimensions (pulumi.Input[dict])

  • evaluationPeriods (pulumi.Input[float]) - The number of periods over which data is compared to the specified threshold.

  • maxTargetCapacity (pulumi.Input[str])

  • maximum (pulumi.Input[str])

  • metricName (pulumi.Input[str]) - The name of the metric in CloudWatch which the statement will be based on.

  • minTargetCapacity (pulumi.Input[str])

  • minimum (pulumi.Input[str])

  • namespace (pulumi.Input[str]) - Must contain the value: AWS/ElasticMapReduce.

  • operator (pulumi.Input[str]) - The operator to use in order to determine if the policy is applicable. Valid values: gt | gte | lt | lte

  • period (pulumi.Input[float]) - The time window in seconds over which the statistic is applied.

  • policyName (pulumi.Input[str])

  • statistic (pulumi.Input[str]) - The aggregation method of the given metric. Valid Values: average | sum | sampleCount | maximum | minimum

  • target (pulumi.Input[str])

  • threshold (pulumi.Input[float]) - The value that the specified statistic is compared to.

  • unit (pulumi.Input[str]) - The unit for a given metric. Valid Values: seconds | microseconds | milliseconds | bytes | kilobytes | megabytes | gigabytes | terabytes | bits | kilobits | megabits | gigabits | terabits | percent | count | bytes/second | kilobytes/second | megabytes/second | gigabytes/second | terabytes/second | bits/second | kilobits/second | megabits/second | gigabits/second | terabits/second | count/second | none

The termination_policies object supports the following:

  • statements (pulumi.Input[list])

    • evaluationPeriods (pulumi.Input[float]) - The number of periods over which data is compared to the specified threshold.

    • metricName (pulumi.Input[str]) - The name of the metric in CloudWatch which the statement will be based on.

    • namespace (pulumi.Input[str]) - Must contain the value: AWS/ElasticMapReduce.

    • operator (pulumi.Input[str]) - The operator to use in order to determine if the policy is applicable. Valid values: gt | gte | lt | lte

    • period (pulumi.Input[float]) - The time window in seconds over which the statistic is applied.

    • statistic (pulumi.Input[str]) - The aggregation method of the given metric. Valid Values: average | sum | sampleCount | maximum | minimum

    • threshold (pulumi.Input[float]) - The value that the specified statistic is compared to.

    • unit (pulumi.Input[str]) - The unit for a given metric. Valid Values: seconds | microseconds | milliseconds | bytes | kilobytes | megabytes | gigabytes | terabytes | bits | kilobits | megabits | gigabits | terabits | percent | count | bytes/second | kilobytes/second | megabytes/second | gigabytes/second | terabytes/second | bits/second | kilobits/second | megabits/second | gigabits/second | terabits/second | count/second | none

cluster_id: pulumi.Output[str] = None

The MrScaler cluster id.

description: pulumi.Output[str] = None

The MrScaler description.

name: pulumi.Output[str] = None

The MrScaler name.

region: pulumi.Output[str] = None

The MrScaler region.

strategy: pulumi.Output[str] = None

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

termination_policies: pulumi.Output[list] = None

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

  • statements (list)

    • evaluationPeriods (float) - The number of periods over which data is compared to the specified threshold.

    • metricName (str) - The name of the metric in CloudWatch which the statement will be based on.

    • namespace (str) - Must contain the value: AWS/ElasticMapReduce.

    • operator (str) - The operator to use in order to determine if the policy is applicable. Valid values: gt | gte | lt | lte

    • period (float) - The time window in seconds over which the statistic is applied.

    • statistic (str) - The aggregation method of the given metric. Valid Values: average | sum | sampleCount | maximum | minimum

    • threshold (float) - The value that the specified statistic is compared to.

    • unit (str) - The unit for a given metric. Valid Values: seconds | microseconds | milliseconds | bytes | kilobytes | megabytes | gigabytes | terabytes | bits | kilobits | megabits | gigabits | terabits | percent | count | bytes/second | kilobytes/second | megabytes/second | gigabytes/second | terabytes/second | bits/second | kilobits/second | megabits/second | gigabits/second | terabits/second | count/second | none

static get(resource_name, id, opts=None, additional_info=None, additional_primary_security_groups=None, additional_replica_security_groups=None, applications=None, availability_zones=None, bootstrap_actions_files=None, cluster_id=None, configurations_files=None, core_desired_capacity=None, core_ebs_block_devices=None, core_ebs_optimized=None, core_instance_types=None, core_lifecycle=None, core_max_size=None, core_min_size=None, core_scaling_down_policies=None, core_scaling_up_policies=None, core_unit=None, custom_ami_id=None, description=None, ebs_root_volume_size=None, ec2_key_name=None, expose_cluster_id=None, instance_weights=None, job_flow_role=None, keep_job_flow_alive=None, log_uri=None, managed_primary_security_group=None, managed_replica_security_group=None, master_ebs_block_devices=None, master_ebs_optimized=None, master_instance_types=None, master_lifecycle=None, name=None, output_cluster_id=None, provisioning_timeout=None, region=None, release_label=None, repo_upgrade_on_boot=None, retries=None, scheduled_tasks=None, security_config=None, service_access_security_group=None, service_role=None, steps_files=None, strategy=None, tags=None, task_desired_capacity=None, task_ebs_block_devices=None, task_ebs_optimized=None, task_instance_types=None, task_lifecycle=None, task_max_size=None, task_min_size=None, task_scaling_down_policies=None, task_scaling_up_policies=None, task_unit=None, termination_policies=None, termination_protected=None, visible_to_all_users=None)

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

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • cluster_id (pulumi.Input[str]) – The MrScaler cluster id.

  • description (pulumi.Input[str]) – The MrScaler description.

  • name (pulumi.Input[str]) – The MrScaler name.

  • region (pulumi.Input[str]) – The MrScaler region.

  • strategy (pulumi.Input[str]) – The MrScaler strategy. Allowed values are new clone and wrap.

  • termination_policies (pulumi.Input[list]) – Allows defining termination policies for EMR clusters based on CloudWatch Metrics.

The applications object supports the following:

  • args (pulumi.Input[list])

  • name (pulumi.Input[str]) - The MrScaler name.

  • version (pulumi.Input[str])

The bootstrap_actions_files object supports the following:

  • bucket (pulumi.Input[str])

  • key (pulumi.Input[str])

The configurations_files object supports the following:

  • bucket (pulumi.Input[str])

  • key (pulumi.Input[str])

The core_ebs_block_devices object supports the following:

  • iops (pulumi.Input[float])

  • sizeInGb (pulumi.Input[float])

  • volumeType (pulumi.Input[str])

  • volumesPerInstance (pulumi.Input[float])

The core_scaling_down_policies object supports the following:

  • actionType (pulumi.Input[str])

  • adjustment (pulumi.Input[str])

  • cooldown (pulumi.Input[float])

  • dimensions (pulumi.Input[dict])

  • evaluationPeriods (pulumi.Input[float]) - The number of periods over which data is compared to the specified threshold.

  • maxTargetCapacity (pulumi.Input[str])

  • maximum (pulumi.Input[str])

  • metricName (pulumi.Input[str]) - The name of the metric in CloudWatch which the statement will be based on.

  • minTargetCapacity (pulumi.Input[str])

  • minimum (pulumi.Input[str])

  • namespace (pulumi.Input[str]) - Must contain the value: AWS/ElasticMapReduce.

  • operator (pulumi.Input[str]) - The operator to use in order to determine if the policy is applicable. Valid values: gt | gte | lt | lte

  • period (pulumi.Input[float]) - The time window in seconds over which the statistic is applied.

  • policyName (pulumi.Input[str])

  • statistic (pulumi.Input[str]) - The aggregation method of the given metric. Valid Values: average | sum | sampleCount | maximum | minimum

  • target (pulumi.Input[str])

  • threshold (pulumi.Input[float]) - The value that the specified statistic is compared to.

  • unit (pulumi.Input[str]) - The unit for a given metric. Valid Values: seconds | microseconds | milliseconds | bytes | kilobytes | megabytes | gigabytes | terabytes | bits | kilobits | megabits | gigabits | terabits | percent | count | bytes/second | kilobytes/second | megabytes/second | gigabytes/second | terabytes/second | bits/second | kilobits/second | megabits/second | gigabits/second | terabits/second | count/second | none

The core_scaling_up_policies object supports the following:

  • actionType (pulumi.Input[str])

  • adjustment (pulumi.Input[str])

  • cooldown (pulumi.Input[float])

  • dimensions (pulumi.Input[dict])

  • evaluationPeriods (pulumi.Input[float]) - The number of periods over which data is compared to the specified threshold.

  • maxTargetCapacity (pulumi.Input[str])

  • maximum (pulumi.Input[str])

  • metricName (pulumi.Input[str]) - The name of the metric in CloudWatch which the statement will be based on.

  • minTargetCapacity (pulumi.Input[str])

  • minimum (pulumi.Input[str])

  • namespace (pulumi.Input[str]) - Must contain the value: AWS/ElasticMapReduce.

  • operator (pulumi.Input[str]) - The operator to use in order to determine if the policy is applicable. Valid values: gt | gte | lt | lte

  • period (pulumi.Input[float]) - The time window in seconds over which the statistic is applied.

  • policyName (pulumi.Input[str])

  • statistic (pulumi.Input[str]) - The aggregation method of the given metric. Valid Values: average | sum | sampleCount | maximum | minimum

  • target (pulumi.Input[str])

  • threshold (pulumi.Input[float]) - The value that the specified statistic is compared to.

  • unit (pulumi.Input[str]) - The unit for a given metric. Valid Values: seconds | microseconds | milliseconds | bytes | kilobytes | megabytes | gigabytes | terabytes | bits | kilobits | megabits | gigabits | terabits | percent | count | bytes/second | kilobytes/second | megabytes/second | gigabytes/second | terabytes/second | bits/second | kilobits/second | megabits/second | gigabits/second | terabits/second | count/second | none

The instance_weights object supports the following:

  • instanceType (pulumi.Input[str])

  • weightedCapacity (pulumi.Input[float])

The master_ebs_block_devices object supports the following:

  • iops (pulumi.Input[float])

  • sizeInGb (pulumi.Input[float])

  • volumeType (pulumi.Input[str])

  • volumesPerInstance (pulumi.Input[float])

The provisioning_timeout object supports the following:

  • timeout (pulumi.Input[float])

  • timeoutAction (pulumi.Input[str])

The scheduled_tasks object supports the following:

  • cron (pulumi.Input[str])

  • desired_capacity (pulumi.Input[str])

  • instanceGroupType (pulumi.Input[str])

  • isEnabled (pulumi.Input[bool])

  • maxCapacity (pulumi.Input[str])

  • minCapacity (pulumi.Input[str])

  • taskType (pulumi.Input[str])

The steps_files object supports the following:

  • bucket (pulumi.Input[str])

  • key (pulumi.Input[str])

The tags object supports the following:

  • key (pulumi.Input[str])

  • value (pulumi.Input[str])

The task_ebs_block_devices object supports the following:

  • iops (pulumi.Input[float])

  • sizeInGb (pulumi.Input[float])

  • volumeType (pulumi.Input[str])

  • volumesPerInstance (pulumi.Input[float])

The task_scaling_down_policies object supports the following:

  • actionType (pulumi.Input[str])

  • adjustment (pulumi.Input[str])

  • cooldown (pulumi.Input[float])

  • dimensions (pulumi.Input[dict])

  • evaluationPeriods (pulumi.Input[float]) - The number of periods over which data is compared to the specified threshold.

  • maxTargetCapacity (pulumi.Input[str])

  • maximum (pulumi.Input[str])

  • metricName (pulumi.Input[str]) - The name of the metric in CloudWatch which the statement will be based on.

  • minTargetCapacity (pulumi.Input[str])

  • minimum (pulumi.Input[str])

  • namespace (pulumi.Input[str]) - Must contain the value: AWS/ElasticMapReduce.

  • operator (pulumi.Input[str]) - The operator to use in order to determine if the policy is applicable. Valid values: gt | gte | lt | lte

  • period (pulumi.Input[float]) - The time window in seconds over which the statistic is applied.

  • policyName (pulumi.Input[str])

  • statistic (pulumi.Input[str]) - The aggregation method of the given metric. Valid Values: average | sum | sampleCount | maximum | minimum

  • target (pulumi.Input[str])

  • threshold (pulumi.Input[float]) - The value that the specified statistic is compared to.

  • unit (pulumi.Input[str]) - The unit for a given metric. Valid Values: seconds | microseconds | milliseconds | bytes | kilobytes | megabytes | gigabytes | terabytes | bits | kilobits | megabits | gigabits | terabits | percent | count | bytes/second | kilobytes/second | megabytes/second | gigabytes/second | terabytes/second | bits/second | kilobits/second | megabits/second | gigabits/second | terabits/second | count/second | none

The task_scaling_up_policies object supports the following:

  • actionType (pulumi.Input[str])

  • adjustment (pulumi.Input[str])

  • cooldown (pulumi.Input[float])

  • dimensions (pulumi.Input[dict])

  • evaluationPeriods (pulumi.Input[float]) - The number of periods over which data is compared to the specified threshold.

  • maxTargetCapacity (pulumi.Input[str])

  • maximum (pulumi.Input[str])

  • metricName (pulumi.Input[str]) - The name of the metric in CloudWatch which the statement will be based on.

  • minTargetCapacity (pulumi.Input[str])

  • minimum (pulumi.Input[str])

  • namespace (pulumi.Input[str]) - Must contain the value: AWS/ElasticMapReduce.

  • operator (pulumi.Input[str]) - The operator to use in order to determine if the policy is applicable. Valid values: gt | gte | lt | lte

  • period (pulumi.Input[float]) - The time window in seconds over which the statistic is applied.

  • policyName (pulumi.Input[str])

  • statistic (pulumi.Input[str]) - The aggregation method of the given metric. Valid Values: average | sum | sampleCount | maximum | minimum

  • target (pulumi.Input[str])

  • threshold (pulumi.Input[float]) - The value that the specified statistic is compared to.

  • unit (pulumi.Input[str]) - The unit for a given metric. Valid Values: seconds | microseconds | milliseconds | bytes | kilobytes | megabytes | gigabytes | terabytes | bits | kilobits | megabits | gigabits | terabits | percent | count | bytes/second | kilobytes/second | megabytes/second | gigabytes/second | terabytes/second | bits/second | kilobits/second | megabits/second | gigabits/second | terabits/second | count/second | none

The termination_policies object supports the following:

  • statements (pulumi.Input[list])

    • evaluationPeriods (pulumi.Input[float]) - The number of periods over which data is compared to the specified threshold.

    • metricName (pulumi.Input[str]) - The name of the metric in CloudWatch which the statement will be based on.

    • namespace (pulumi.Input[str]) - Must contain the value: AWS/ElasticMapReduce.

    • operator (pulumi.Input[str]) - The operator to use in order to determine if the policy is applicable. Valid values: gt | gte | lt | lte

    • period (pulumi.Input[float]) - The time window in seconds over which the statistic is applied.

    • statistic (pulumi.Input[str]) - The aggregation method of the given metric. Valid Values: average | sum | sampleCount | maximum | minimum

    • threshold (pulumi.Input[float]) - The value that the specified statistic is compared to.

    • unit (pulumi.Input[str]) - The unit for a given metric. Valid Values: seconds | microseconds | milliseconds | bytes | kilobytes | megabytes | gigabytes | terabytes | bits | kilobits | megabits | gigabits | terabits | percent | count | bytes/second | kilobytes/second | megabytes/second | gigabytes/second | terabytes/second | bits/second | kilobits/second | megabits/second | gigabits/second | terabits/second | count/second | none

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_spotinst.aws.Ocean(resource_name, opts=None, associate_public_ip_address=None, autoscaler=None, blacklists=None, controller_id=None, desired_capacity=None, draining_timeout=None, ebs_optimized=None, fallback_to_ondemand=None, grace_period=None, iam_instance_profile=None, image_id=None, key_name=None, load_balancers=None, max_size=None, min_size=None, monitoring=None, name=None, region=None, root_volume_size=None, scheduled_tasks=None, security_groups=None, spot_percentage=None, subnet_ids=None, tags=None, update_policy=None, user_data=None, utilize_reserved_instances=None, whitelists=None, __props__=None, __name__=None, __opts__=None)

Provides a Spotinst Ocean AWS resource.

import pulumi
import pulumi_spotinst as spotinst

example = spotinst.aws.Ocean("example",
    associate_public_ip_address=True,
    controller_id="fakeClusterId",
    desired_capacity=2,
    draining_timeout=120,
    ebs_optimized=True,
    fallback_to_ondemand=True,
    grace_period=600,
    iam_instance_profile="iam-profile",
    image_id="ami-123456",
    key_name="fake key",
    load_balancers=[
        {
            "arn": "arn:aws:elasticloadbalancing:us-west-2:fake-arn",
            "type": "TARGET_GROUP",
        },
        {
            "name": "AntonK",
            "type": "CLASSIC",
        },
    ],
    max_size=2,
    min_size=1,
    monitoring=True,
    region="us-west-2",
    root_volume_size=20,
    security_groups=["sg-987654321"],
    subnet_ids=["subnet-123456789"],
    tags=[{
        "key": "fakeKey",
        "value": "fakeValue",
    }],
    user_data="echo hello world",
    utilize_reserved_instances=False,
    whitelists=[
        "t1.micro",
        "m1.small",
    ])
  • autoscaler - (Optional) Describes the Ocean Kubernetes autoscaler.

  • autoscale_is_enabled - (Optional, Default: true) Enable the Ocean Kubernetes autoscaler.

  • autoscale_is_auto_config - (Optional, Default: true) Automatically configure and optimize headroom resources.

  • autoscale_cooldown - (Optional, Default: null) Cooldown period between scaling actions.

  • auto_headroom_percentage - (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.

  • autoscale_headroom - (Optional) Spare resource capacity management enabling fast assignment of Pods without waiting for new resources to launch.

  • cpu_per_unit - (Optional) Optionally configure the number of CPUs to allocate the headroom. CPUs are denoted in millicores, where 1000 millicores = 1 vCPU.

  • gpu_per_unit - (Optional) Optionally configure the number of GPUS to allocate the headroom.

  • memory_per_unit - (Optional) Optionally configure the amount of memory (MB) to allocate the headroom.

  • num_of_units - (Optional) The number of units to retain as headroom, where each unit has the defined headroom CPU and memory.

  • autoscale_down - (Optional) Auto Scaling scale down operations.

  • max_scale_down_percentage - (Optional) Would represent the maximum % to scale-down. Number between 1-100.

  • resource_limits - (Optional) Optionally set upper and lower bounds on the resource usage of the cluster.

  • max_vcpu - (Optional) The maximum cpu in vCPU units that can be allocated to the cluster.

  • max_memory_gib - (Optional) The maximum memory in GiB units that can be allocated to the cluster.

import pulumi

  • update_policy - (Optional)

    • should_roll - (Required) Enables the roll.

    • roll_config - (Required) While used, you can control whether the group should perform a deployment after an update to the configuration.

      • batch_size_percentage - (Required) Sets the percentage of the instances to deploy in each batch.

import pulumi

  • scheduled_task - (Optional) Set scheduling object.

    • shutdown_hours - (Optional) Set shutdown hours for cluster object.

      • is_enabled - (Optional) Flag to enable / disable the shutdown hours. .. code-block:

        Example: True
        
      • time_windows - (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 .. code-block:

        Example: Fri:15:30-Wed:14:30
        
    • tasks - (Optional) The scheduling tasks for the cluster.

      • is_enabled - (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.

      • cron_expression - (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 .. code-block:

        Example: 0 1 * * *
        
      • task_type - (Required) Valid values: “clusterRoll”. Required for cluster.scheduling.tasks object .. code-block:

        Example: clusterRoll
        
import pulumi
Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • associate_public_ip_address (pulumi.Input[bool]) – Configure public IP address allocation.

  • blacklists (pulumi.Input[list]) – Instance types not allowed in the Ocean cluster. Cannot be configured if whitelist is configured.

  • controller_id (pulumi.Input[str]) – The ocean cluster identifier. Example: ocean.k8s

  • desired_capacity (pulumi.Input[float]) – The number of instances to launch and maintain in the cluster.

  • draining_timeout (pulumi.Input[float]) – The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.

  • ebs_optimized (pulumi.Input[bool]) – Enable EBS optimized for cluster. Flag will enable optimized capacity for high bandwidth connectivity to the EB service for non EBS optimized instance types. For instances that are EBS optimized this flag will be ignored.

  • fallback_to_ondemand (pulumi.Input[bool]) – If not Spot instance markets are available, enable Ocean to launch On-Demand instances instead.

  • grace_period (pulumi.Input[float]) – The amount of time, in seconds, after the instance has launched to start checking its health.

  • iam_instance_profile (pulumi.Input[str]) – The instance profile iam role.

  • image_id (pulumi.Input[str]) – ID of the image used to launch the instances.

  • key_name (pulumi.Input[str]) – The key pair to attach the instances.

  • load_balancers (pulumi.Input[list]) –

    • Array of load balancer objects to add to ocean cluster

  • max_size (pulumi.Input[float]) – The upper limit of instances the cluster can scale up to.

  • min_size (pulumi.Input[float]) – The lower limit of instances the cluster can scale down to.

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

  • name (pulumi.Input[str]) – Required if type is set to CLASSIC

  • region (pulumi.Input[str]) – The region the cluster will run in.

  • root_volume_size (pulumi.Input[float]) – The size (in Gb) to allocate for the root volume. Minimum 20.

  • security_groups (pulumi.Input[list]) – One or more security group ids.

  • subnet_ids (pulumi.Input[list]) – A comma-separated list of subnet identifiers for the Ocean cluster. Subnet IDs should be configured with auto assign public ip.

  • tags (pulumi.Input[list]) – Optionally adds tags to instances launched in an Ocean cluster.

  • user_data (pulumi.Input[str]) – Base64-encoded MIME user data to make available to the instances.

  • utilize_reserved_instances (pulumi.Input[bool]) – If Reserved instances exist, Ocean will utilize them before launching Spot instances.

  • whitelists (pulumi.Input[list]) – Instance types allowed in the Ocean cluster. Cannot be configured if blacklist is configured.

The autoscaler object supports the following:

  • autoHeadroomPercentage (pulumi.Input[float])

  • autoscaleCooldown (pulumi.Input[float])

  • autoscaleDown (pulumi.Input[dict])

    • evaluationPeriods (pulumi.Input[float])

    • maxScaleDownPercentage (pulumi.Input[float])

  • autoscaleHeadroom (pulumi.Input[dict])

    • cpuPerUnit (pulumi.Input[float])

    • gpuPerUnit (pulumi.Input[float])

    • memoryPerUnit (pulumi.Input[float])

    • numOfUnits (pulumi.Input[float])

  • autoscaleIsAutoConfig (pulumi.Input[bool])

  • autoscaleIsEnabled (pulumi.Input[bool])

  • resource_limits (pulumi.Input[dict])

    • maxMemoryGib (pulumi.Input[float])

    • maxVcpu (pulumi.Input[float])

The load_balancers object supports the following:

  • arn (pulumi.Input[str]) - Required if type is set to TARGET_GROUP

  • name (pulumi.Input[str]) - Required if type is set to CLASSIC

  • type (pulumi.Input[str]) - Can be set to CLASSIC or TARGET_GROUP

The scheduled_tasks object supports the following:

  • shutdownHours (pulumi.Input[dict])

    • isEnabled (pulumi.Input[bool])

    • timeWindows (pulumi.Input[list])

  • tasks (pulumi.Input[list])

    • cronExpression (pulumi.Input[str])

    • isEnabled (pulumi.Input[bool])

    • taskType (pulumi.Input[str])

The tags object supports the following:

  • key (pulumi.Input[str]) - The tag key.

  • value (pulumi.Input[str]) - The tag value.

The update_policy object supports the following:

  • rollConfig (pulumi.Input[dict])

    • batchSizePercentage (pulumi.Input[float])

  • shouldRoll (pulumi.Input[bool])

associate_public_ip_address: pulumi.Output[bool] = None

Configure public IP address allocation.

blacklists: pulumi.Output[list] = None

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

controller_id: pulumi.Output[str] = None

The ocean cluster identifier. Example: ocean.k8s

desired_capacity: pulumi.Output[float] = None

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

draining_timeout: pulumi.Output[float] = None

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

ebs_optimized: pulumi.Output[bool] = None

Enable EBS optimized for cluster. Flag will enable optimized capacity for high bandwidth connectivity to the EB service for non EBS optimized instance types. For instances that are EBS optimized this flag will be ignored.

fallback_to_ondemand: pulumi.Output[bool] = None

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

grace_period: pulumi.Output[float] = None

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

iam_instance_profile: pulumi.Output[str] = None

The instance profile iam role.

image_id: pulumi.Output[str] = None

ID of the image used to launch the instances.

key_name: pulumi.Output[str] = None

The key pair to attach the instances.

load_balancers: pulumi.Output[list] = None
  • Array of load balancer objects to add to ocean cluster

    • arn (str) - Required if type is set to TARGET_GROUP

    • name (str) - Required if type is set to CLASSIC

    • type (str) - Can be set to CLASSIC or TARGET_GROUP

max_size: pulumi.Output[float] = None

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

min_size: pulumi.Output[float] = None

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

monitoring: pulumi.Output[bool] = None

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

name: pulumi.Output[str] = None

Required if type is set to CLASSIC

region: pulumi.Output[str] = None

The region the cluster will run in.

root_volume_size: pulumi.Output[float] = None

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

security_groups: pulumi.Output[list] = None

One or more security group ids.

subnet_ids: pulumi.Output[list] = None

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

tags: pulumi.Output[list] = None

Optionally adds tags to instances launched in an Ocean cluster.

  • key (str) - The tag key.

  • value (str) - The tag value.

user_data: pulumi.Output[str] = None

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

utilize_reserved_instances: pulumi.Output[bool] = None

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

whitelists: pulumi.Output[list] = None

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

static get(resource_name, id, opts=None, associate_public_ip_address=None, autoscaler=None, blacklists=None, controller_id=None, desired_capacity=None, draining_timeout=None, ebs_optimized=None, fallback_to_ondemand=None, grace_period=None, iam_instance_profile=None, image_id=None, key_name=None, load_balancers=None, max_size=None, min_size=None, monitoring=None, name=None, region=None, root_volume_size=None, scheduled_tasks=None, security_groups=None, spot_percentage=None, subnet_ids=None, tags=None, update_policy=None, user_data=None, utilize_reserved_instances=None, whitelists=None)

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

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • associate_public_ip_address (pulumi.Input[bool]) – Configure public IP address allocation.

  • blacklists (pulumi.Input[list]) – Instance types not allowed in the Ocean cluster. Cannot be configured if whitelist is configured.

  • controller_id (pulumi.Input[str]) – The ocean cluster identifier. Example: ocean.k8s

  • desired_capacity (pulumi.Input[float]) – The number of instances to launch and maintain in the cluster.

  • draining_timeout (pulumi.Input[float]) – The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.

  • ebs_optimized (pulumi.Input[bool]) – Enable EBS optimized for cluster. Flag will enable optimized capacity for high bandwidth connectivity to the EB service for non EBS optimized instance types. For instances that are EBS optimized this flag will be ignored.

  • fallback_to_ondemand (pulumi.Input[bool]) – If not Spot instance markets are available, enable Ocean to launch On-Demand instances instead.

  • grace_period (pulumi.Input[float]) – The amount of time, in seconds, after the instance has launched to start checking its health.

  • iam_instance_profile (pulumi.Input[str]) – The instance profile iam role.

  • image_id (pulumi.Input[str]) – ID of the image used to launch the instances.

  • key_name (pulumi.Input[str]) – The key pair to attach the instances.

  • load_balancers (pulumi.Input[list]) –

    • Array of load balancer objects to add to ocean cluster

  • max_size (pulumi.Input[float]) – The upper limit of instances the cluster can scale up to.

  • min_size (pulumi.Input[float]) – The lower limit of instances the cluster can scale down to.

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

  • name (pulumi.Input[str]) – Required if type is set to CLASSIC

  • region (pulumi.Input[str]) – The region the cluster will run in.

  • root_volume_size (pulumi.Input[float]) – The size (in Gb) to allocate for the root volume. Minimum 20.

  • security_groups (pulumi.Input[list]) – One or more security group ids.

  • subnet_ids (pulumi.Input[list]) – A comma-separated list of subnet identifiers for the Ocean cluster. Subnet IDs should be configured with auto assign public ip.

  • tags (pulumi.Input[list]) – Optionally adds tags to instances launched in an Ocean cluster.

  • user_data (pulumi.Input[str]) – Base64-encoded MIME user data to make available to the instances.

  • utilize_reserved_instances (pulumi.Input[bool]) – If Reserved instances exist, Ocean will utilize them before launching Spot instances.

  • whitelists (pulumi.Input[list]) – Instance types allowed in the Ocean cluster. Cannot be configured if blacklist is configured.

The autoscaler object supports the following:

  • autoHeadroomPercentage (pulumi.Input[float])

  • autoscaleCooldown (pulumi.Input[float])

  • autoscaleDown (pulumi.Input[dict])

    • evaluationPeriods (pulumi.Input[float])

    • maxScaleDownPercentage (pulumi.Input[float])

  • autoscaleHeadroom (pulumi.Input[dict])

    • cpuPerUnit (pulumi.Input[float])

    • gpuPerUnit (pulumi.Input[float])

    • memoryPerUnit (pulumi.Input[float])

    • numOfUnits (pulumi.Input[float])

  • autoscaleIsAutoConfig (pulumi.Input[bool])

  • autoscaleIsEnabled (pulumi.Input[bool])

  • resource_limits (pulumi.Input[dict])

    • maxMemoryGib (pulumi.Input[float])

    • maxVcpu (pulumi.Input[float])

The load_balancers object supports the following:

  • arn (pulumi.Input[str]) - Required if type is set to TARGET_GROUP

  • name (pulumi.Input[str]) - Required if type is set to CLASSIC

  • type (pulumi.Input[str]) - Can be set to CLASSIC or TARGET_GROUP

The scheduled_tasks object supports the following:

  • shutdownHours (pulumi.Input[dict])

    • isEnabled (pulumi.Input[bool])

    • timeWindows (pulumi.Input[list])

  • tasks (pulumi.Input[list])

    • cronExpression (pulumi.Input[str])

    • isEnabled (pulumi.Input[bool])

    • taskType (pulumi.Input[str])

The tags object supports the following:

  • key (pulumi.Input[str]) - The tag key.

  • value (pulumi.Input[str]) - The tag value.

The update_policy object supports the following:

  • rollConfig (pulumi.Input[dict])

    • batchSizePercentage (pulumi.Input[float])

  • shouldRoll (pulumi.Input[bool])

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_spotinst.aws.OceanLaunchSpec(resource_name, opts=None, autoscale_headrooms=None, elastic_ip_pools=None, iam_instance_profile=None, image_id=None, labels=None, name=None, ocean_id=None, resource_limits=None, root_volume_size=None, security_groups=None, subnet_ids=None, tags=None, taints=None, user_data=None, __props__=None, __name__=None, __opts__=None)

Provides a custom Spotinst Ocean AWS Launch Spec resource.

import pulumi
import pulumi_spotinst as spotinst

example = spotinst.aws.OceanLaunchSpec("example",
    autoscale_headrooms=[{
        "cpuPerUnit": 1000,
        "gpuPerUnit": 0,
        "memoryPerUnit": 2048,
        "numOfUnits": 5,
    }],
    elastic_ip_pools=[{
        "tagSelector": {
            "tagKey": "key",
            "tagValue": "value",
        },
    }],
    iam_instance_profile="iam-profile",
    image_id="ami-123456",
    labels=[{
        "key": "fakeKey",
        "value": "fakeValue",
    }],
    ocean_id="o-123456",
    resource_limits=[{
        "maxInstanceCount": 4,
    }],
    root_volume_size=30,
    security_groups=["sg-987654321"],
    subnet_ids=["subnet-1234"],
    tags=[{
        "key": "Env",
        "value": "production",
    }],
    taints=[{
        "effect": "NoExecute",
        "key": "taint key updated",
        "value": "taint value updated",
    }],
    user_data="echo hello world")
Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • autoscale_headrooms (pulumi.Input[list]) – Set custom headroom per launch spec. provide list of headrooms object.

  • elastic_ip_pools (pulumi.Input[list]) – Assign an Elastic IP to the instances spun by the launch spec. Can be null.

  • iam_instance_profile (pulumi.Input[str]) – The ARN or name of an IAM instance profile to associate with launched instances.

  • image_id (pulumi.Input[str]) – ID of the image used to launch the instances.

  • labels (pulumi.Input[list]) – Optionally adds labels to instances launched in an Ocean cluster.

  • name (pulumi.Input[str]) – Set Launch Specification name

  • ocean_id (pulumi.Input[str]) – The ocean cluster you wish to

  • root_volume_size (pulumi.Input[float]) – Set root volume size (in GB).

  • security_groups (pulumi.Input[list]) – Optionally adds security group IDs.

  • subnet_ids (pulumi.Input[list]) – Set subnets in launchSpec. Each element in array should be subnet ID.

  • tags (pulumi.Input[list]) – A key/value mapping of tags to assign to the resource.

  • taints (pulumi.Input[list]) – Optionally adds labels to instances launched in an Ocean cluster.

  • user_data (pulumi.Input[str]) – Base64-encoded MIME user data to make available to the instances.

The autoscale_headrooms object supports the following:

  • cpuPerUnit (pulumi.Input[float]) - Optionally configure the number of CPUs to allocate for each headroom unit. CPUs are denoted in millicores, where 1000 millicores = 1 vCPU.

  • gpuPerUnit (pulumi.Input[float]) - Optionally configure the number of GPUS to allocate for each headroom unit.

  • memoryPerUnit (pulumi.Input[float]) - Optionally configure the amount of memory (MiB) to allocate for each headroom unit.

  • numOfUnits (pulumi.Input[float]) - The number of units to retain as headroom, where each unit has the defined headroom CPU, memory and GPU.

The elastic_ip_pools object supports the following:

  • tagSelector (pulumi.Input[dict]) - Key-value object, which defines an Elastic IP from the customer pool. Can be null.

    • tagKey (pulumi.Input[str]) - Elastic IP tag key. The launch spec will consider all elastic IPs tagged with this tag as a part of the elastic IP pool to use.

    • tagValue (pulumi.Input[str]) - Elastic IP tag value. Can be null.

The labels object supports the following:

  • key (pulumi.Input[str]) - The tag key.

  • value (pulumi.Input[str]) - The tag value.

The resource_limits object supports the following:

  • maxInstanceCount (pulumi.Input[float]) - set a maximum number of instances per launch specification. Can be null. If set, value must be greater than or equal to 0.

The tags object supports the following:

  • key (pulumi.Input[str]) - The tag key.

  • value (pulumi.Input[str]) - The tag value.

The taints object supports the following:

  • effect (pulumi.Input[str]) - The effect of the taint. Valid values: "NoSchedule", "PreferNoSchedule", "NoExecute".

  • key (pulumi.Input[str]) - The tag key.

  • value (pulumi.Input[str]) - The tag value.

autoscale_headrooms: pulumi.Output[list] = None

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

  • cpuPerUnit (float) - Optionally configure the number of CPUs to allocate for each headroom unit. CPUs are denoted in millicores, where 1000 millicores = 1 vCPU.

  • gpuPerUnit (float) - Optionally configure the number of GPUS to allocate for each headroom unit.

  • memoryPerUnit (float) - Optionally configure the amount of memory (MiB) to allocate for each headroom unit.

  • numOfUnits (float) - The number of units to retain as headroom, where each unit has the defined headroom CPU, memory and GPU.

elastic_ip_pools: pulumi.Output[list] = None

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

  • tagSelector (dict) - Key-value object, which defines an Elastic IP from the customer pool. Can be null.

    • tagKey (str) - Elastic IP tag key. The launch spec will consider all elastic IPs tagged with this tag as a part of the elastic IP pool to use.

    • tagValue (str) - Elastic IP tag value. Can be null.

iam_instance_profile: pulumi.Output[str] = None

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

image_id: pulumi.Output[str] = None

ID of the image used to launch the instances.

labels: pulumi.Output[list] = None

Optionally adds labels to instances launched in an Ocean cluster.

  • key (str) - The tag key.

  • value (str) - The tag value.

name: pulumi.Output[str] = None

Set Launch Specification name

ocean_id: pulumi.Output[str] = None

The ocean cluster you wish to

root_volume_size: pulumi.Output[float] = None

Set root volume size (in GB).

security_groups: pulumi.Output[list] = None

Optionally adds security group IDs.

subnet_ids: pulumi.Output[list] = None

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

tags: pulumi.Output[list] = None

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

  • key (str) - The tag key.

  • value (str) - The tag value.

taints: pulumi.Output[list] = None

Optionally adds labels to instances launched in an Ocean cluster.

  • effect (str) - The effect of the taint. Valid values: "NoSchedule", "PreferNoSchedule", "NoExecute".

  • key (str) - The tag key.

  • value (str) - The tag value.

user_data: pulumi.Output[str] = None

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

static get(resource_name, id, opts=None, autoscale_headrooms=None, elastic_ip_pools=None, iam_instance_profile=None, image_id=None, labels=None, name=None, ocean_id=None, resource_limits=None, root_volume_size=None, security_groups=None, subnet_ids=None, tags=None, taints=None, user_data=None)

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

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • autoscale_headrooms (pulumi.Input[list]) – Set custom headroom per launch spec. provide list of headrooms object.

  • elastic_ip_pools (pulumi.Input[list]) – Assign an Elastic IP to the instances spun by the launch spec. Can be null.

  • iam_instance_profile (pulumi.Input[str]) – The ARN or name of an IAM instance profile to associate with launched instances.

  • image_id (pulumi.Input[str]) – ID of the image used to launch the instances.

  • labels (pulumi.Input[list]) – Optionally adds labels to instances launched in an Ocean cluster.

  • name (pulumi.Input[str]) – Set Launch Specification name

  • ocean_id (pulumi.Input[str]) – The ocean cluster you wish to

  • root_volume_size (pulumi.Input[float]) – Set root volume size (in GB).

  • security_groups (pulumi.Input[list]) – Optionally adds security group IDs.

  • subnet_ids (pulumi.Input[list]) – Set subnets in launchSpec. Each element in array should be subnet ID.

  • tags (pulumi.Input[list]) – A key/value mapping of tags to assign to the resource.

  • taints (pulumi.Input[list]) – Optionally adds labels to instances launched in an Ocean cluster.

  • user_data (pulumi.Input[str]) – Base64-encoded MIME user data to make available to the instances.

The autoscale_headrooms object supports the following:

  • cpuPerUnit (pulumi.Input[float]) - Optionally configure the number of CPUs to allocate for each headroom unit. CPUs are denoted in millicores, where 1000 millicores = 1 vCPU.

  • gpuPerUnit (pulumi.Input[float]) - Optionally configure the number of GPUS to allocate for each headroom unit.

  • memoryPerUnit (pulumi.Input[float]) - Optionally configure the amount of memory (MiB) to allocate for each headroom unit.

  • numOfUnits (pulumi.Input[float]) - The number of units to retain as headroom, where each unit has the defined headroom CPU, memory and GPU.

The elastic_ip_pools object supports the following:

  • tagSelector (pulumi.Input[dict]) - Key-value object, which defines an Elastic IP from the customer pool. Can be null.

    • tagKey (pulumi.Input[str]) - Elastic IP tag key. The launch spec will consider all elastic IPs tagged with this tag as a part of the elastic IP pool to use.

    • tagValue (pulumi.Input[str]) - Elastic IP tag value. Can be null.

The labels object supports the following:

  • key (pulumi.Input[str]) - The tag key.

  • value (pulumi.Input[str]) - The tag value.

The resource_limits object supports the following:

  • maxInstanceCount (pulumi.Input[float]) - set a maximum number of instances per launch specification. Can be null. If set, value must be greater than or equal to 0.

The tags object supports the following:

  • key (pulumi.Input[str]) - The tag key.

  • value (pulumi.Input[str]) - The tag value.

The taints object supports the following:

  • effect (pulumi.Input[str]) - The effect of the taint. Valid values: "NoSchedule", "PreferNoSchedule", "NoExecute".

  • key (pulumi.Input[str]) - The tag key.

  • value (pulumi.Input[str]) - The tag value.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str