Cloud.AWS.EC2.Instance

Cloud.AWS.EC2.Instance
Cloud.AWS.EC2.Instance

Request schema for provisioning of an AWS machine resource

JSON Example
{
    "account": "string",
    "address": "string",
    "attachedDisks": [
        {
            "source": "string"
        }
    ],
    "autoScaleConfiguration": {
        "desiredCapacity": 0,
        "maxSize": 0,
        "metricScaleRules": [
            {
                "action": {
                    "cooldown": 0,
                    "type": "string",
                    "value": 0
                },
                "trigger": {
                    "evaluationPeriods": 0,
                    "metric": "string",
                    "operator": "string",
                    "period": 0,
                    "statistic": "string",
                    "threshold": "number"
                }
            }
        ],
        "minSize": 0,
        "policy": "string",
        "scheduledScaleRules": [
            {
                "desiredCapacity": 0,
                "maxSize": 0,
                "minSize": 0,
                "recurrence": "string"
            }
        ]
    },
    "cloudConfig": "string",
    "cloudConfigSettings": {
        "phoneHomeFailOnTimeout": false,
        "phoneHomeShouldWait": false,
        "phoneHomeTimeoutSeconds": 0
    },
    "constraints": [
        {
            "tag": "string"
        }
    ],
    "externalLink": "string",
    "flavor": "string",
    "image": "string",
    "imageRef": "string",
    "machineType": "string",
    "name": "string",
    "networks": [
        {
            "address": "string",
            "assignPublicIpAddress": false,
            "assignment": "string",
            "deviceIndex": 0,
            "name": "string",
            "network": "string"
        }
    ],
    "osType": "string",
    "powerState": "string",
    "project": "string",
    "region": "string",
    "remoteAccess": {
        "authentication": "string",
        "keyPair": "string",
        "password": "string",
        "privateKey": "string",
        "sshKey": "string",
        "username": "string"
    },
    "spotDurationInHrs": 0,
    "storage": {
        "bootDiskCapacityInGB": 0,
        "constraints": [
            {
                "tag": "string"
            }
        ],
        "maxDiskCapacityInGB": 0
    },
    "tags": [
        {
            "key": "string",
            "value": "string"
        }
    ],
    "zone": "string"
}
string
account
Optional

Cloud Account indicates the name of the endpoint used to provision this machine.

string
address
Optional

Machine IP address, populated by discovery or provisioning.

array of object
attachedDisks
Optional

List of disks to attach to the machine.

object
autoScaleConfiguration
Optional

Settings for an auto scaling group for this machine, which automatically increases or decreases resources based on policies.

string
cloudConfig
Optional

When provisioning an instance, machine cloud-init startup instructions from user data fields. Sample cloud config instructions:

#cloud-config
repo_update: true
repo_upgrade: all
packages:
- httpd
- mariadb-server

runcmd:
- [ sh, -c, "amazon-linux-extras install -y lamp-mariadb10.2-php7.2 php7.2" ]
- systemctl start httpd
- sudo systemctl enable httpd
object
cloudConfigSettings
Optional

Specify how the provided Cloud Config should be handled

array of object
constraints
Optional

To target the correct resources, blueprint constraints are matched against infrastructure capability tags. Constraints must include the key name. Options include value, negative[!], and hard or soft requirement.

string
externalLink
Optional

URL to the machine on the AWS console.

string
flavor
Required

Generic types of compute resources, mapped in an environment to specific types of compute resources.

string
image
Optional

Generic compute images, mapped in an environment to specific compute resource images.

string As ^ami-\S+
imageRef
Optional

Amazon machine image used for the EC2 machine.

string
machineType
Optional

The machine type.  For example, spot for temporary machines.

Possible values are : spot, spot_reserved,
string
name
Optional

Machine name.

array of object
networks
Optional

Networks to attach to the machine. Multiple network interfaces are allowed.

string
osType
Optional

Operating system of the machine, populated by discovery or provisioning. Values include WINDOWS and LINUX.

string
powerState
Optional

Machine power state of ON, OFF, GUEST_OFF, UNKNOWN, or SUSPEND.

Possible values are : ON, OFF, SUSPEND, GUEST_OFF,
string
project
Optional

Cloud Assembly project under which the machine is provisioned.

string
region
Optional

Region name of the instance where machine landed.

object
remoteAccess
Optional

Settings to remotely connect to the provisioned machine, by public/private key pair or username/password authentication. AWS supports key pair but not username/password.

integer
spotDurationInHrs
Optional

Lifespan of a spot machine. Range is 1–6 hours.

object
storage
Optional

Settings for constraining to the correct storage at provisioning time.

array of object
tags
Optional

Resource categorization, in case-sensitive key names, or in key-value pairs.

string
zone
Optional

Availability zone of the instance where machine landed.