

This is the new *CloudFormation Template Reference Guide*. Please update your bookmarks and links. For help getting started with CloudFormation, see the [AWS CloudFormation User Guide](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html).

# AWS::Lightsail::Instance
<a name="aws-resource-lightsail-instance"></a>

The `AWS::Lightsail::Instance` resource specifies an Amazon Lightsail instance.

## Syntax
<a name="aws-resource-lightsail-instance-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-resource-lightsail-instance-syntax.json"></a>

```
{
  "Type" : "AWS::Lightsail::Instance",
  "Properties" : {
      "[AddOns](#cfn-lightsail-instance-addons)" : [ AddOn, ... ],
      "[AvailabilityZone](#cfn-lightsail-instance-availabilityzone)" : String,
      "[BlueprintId](#cfn-lightsail-instance-blueprintid)" : String,
      "[BundleId](#cfn-lightsail-instance-bundleid)" : String,
      "[Hardware](#cfn-lightsail-instance-hardware)" : Hardware,
      "[InstanceName](#cfn-lightsail-instance-instancename)" : String,
      "[KeyPairName](#cfn-lightsail-instance-keypairname)" : String,
      "[Location](#cfn-lightsail-instance-location)" : Location,
      "[Networking](#cfn-lightsail-instance-networking)" : Networking,
      "[State](#cfn-lightsail-instance-state)" : State,
      "[Tags](#cfn-lightsail-instance-tags)" : [ Tag, ... ],
      "[UserData](#cfn-lightsail-instance-userdata)" : String
    }
}
```

### YAML
<a name="aws-resource-lightsail-instance-syntax.yaml"></a>

```
Type: AWS::Lightsail::Instance
Properties:
  [AddOns](#cfn-lightsail-instance-addons): 
    - AddOn
  [AvailabilityZone](#cfn-lightsail-instance-availabilityzone): String
  [BlueprintId](#cfn-lightsail-instance-blueprintid): String
  [BundleId](#cfn-lightsail-instance-bundleid): String
  [Hardware](#cfn-lightsail-instance-hardware): 
    Hardware
  [InstanceName](#cfn-lightsail-instance-instancename): String
  [KeyPairName](#cfn-lightsail-instance-keypairname): String
  [Location](#cfn-lightsail-instance-location): 
    Location
  [Networking](#cfn-lightsail-instance-networking): 
    Networking
  [State](#cfn-lightsail-instance-state): 
    State
  [Tags](#cfn-lightsail-instance-tags): 
    - Tag
  [UserData](#cfn-lightsail-instance-userdata): String
```

## Properties
<a name="aws-resource-lightsail-instance-properties"></a>

`AddOns`  <a name="cfn-lightsail-instance-addons"></a>
An array of add-ons for the instance.  
If the instance has an add-on enabled when performing a delete instance request, the add-on is automatically disabled before the instance is deleted.
*Required*: No  
*Type*: Array of [AddOn](aws-properties-lightsail-instance-addon.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`AvailabilityZone`  <a name="cfn-lightsail-instance-availabilityzone"></a>
The Availability Zone for the instance.  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `255`  
*Update requires*: Updates are not supported.

`BlueprintId`  <a name="cfn-lightsail-instance-blueprintid"></a>
The blueprint ID for the instance (for example, `os_amlinux_2016_03`).  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `255`  
*Update requires*: Updates are not supported.

`BundleId`  <a name="cfn-lightsail-instance-bundleid"></a>
The bundle ID for the instance (for example, `micro_1_0`).  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `255`  
*Update requires*: Updates are not supported.

`Hardware`  <a name="cfn-lightsail-instance-hardware"></a>
The hardware properties for the instance, such as the vCPU count, attached disks, and amount of RAM.  
The instance restarts when performing an attach disk or detach disk request. This resets the public IP address of your instance if a static IP isn't attached to it.
*Required*: No  
*Type*: [Hardware](aws-properties-lightsail-instance-hardware.md)  
*Update requires*: [Some interruptions](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-some-interrupt)

`InstanceName`  <a name="cfn-lightsail-instance-instancename"></a>
The name of the instance.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z0-9][\w\-.]*[a-zA-Z0-9]$`  
*Minimum*: `1`  
*Maximum*: `254`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`KeyPairName`  <a name="cfn-lightsail-instance-keypairname"></a>
The name of the key pair to use for the instance.  
If no key pair name is specified, the Regional Lightsail default key pair is used.  
*Required*: No  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Location`  <a name="cfn-lightsail-instance-location"></a>
The location for the instance, such as the AWS Region and Availability Zone.  
The `Location` property is read-only and should not be specified in a create instance or update instance request.
*Required*: No  
*Type*: [Location](aws-properties-lightsail-instance-location.md)  
*Update requires*: Updates are not supported.

`Networking`  <a name="cfn-lightsail-instance-networking"></a>
The public ports and the monthly amount of data transfer allocated for the instance.  
*Required*: No  
*Type*: [Networking](aws-properties-lightsail-instance-networking.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`State`  <a name="cfn-lightsail-instance-state"></a>
The status code and the state (for example, `running`) of the instance.  
The `State` property is read-only and should not be specified in a create instance or update instance request.
*Required*: No  
*Type*: [State](aws-properties-lightsail-instance-state.md)  
*Update requires*: Updates are not supported.

`Tags`  <a name="cfn-lightsail-instance-tags"></a>
An array of key-value pairs to apply to this resource.  
For more information, see [Tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html) in the *AWS CloudFormation User Guide*.  
The `Value` of `Tags` is optional for Lightsail resources.
*Required*: No  
*Type*: Array of [Tag](aws-properties-lightsail-instance-tag.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`UserData`  <a name="cfn-lightsail-instance-userdata"></a>
The optional launch script for the instance.  
Specify a launch script to configure an instance with additional user data. For example, you might want to specify `apt-get -y update` as a launch script.  
Depending on the blueprint of your instance, the command to get software on your instance varies. Amazon Linux and CentOS use `yum`, Debian and Ubuntu use `apt-get`, and FreeBSD uses `pkg`.
*Required*: No  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

## Return values
<a name="aws-resource-lightsail-instance-return-values"></a>

### Ref
<a name="aws-resource-lightsail-instance-return-values-ref"></a>

When you pass the logical ID of this resource to the intrinsic `Ref` function, `Ref` returns a unique identifier for this resource.

### Fn::GetAtt
<a name="aws-resource-lightsail-instance-return-values-fn--getatt"></a>

The `Fn::GetAtt` intrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.

For more information about using the `Fn::GetAtt` intrinsic function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html).

#### 
<a name="aws-resource-lightsail-instance-return-values-fn--getatt-fn--getatt"></a>

`Hardware.CpuCount`  <a name="Hardware.CpuCount-fn::getatt"></a>
The number of vCPUs the instance has.

`Hardware.RamSizeInGb`  <a name="Hardware.RamSizeInGb-fn::getatt"></a>
The amount of RAM in GB on the instance (for example, `1.0`).

`InstanceArn`  <a name="InstanceArn-fn::getatt"></a>
The Amazon Resource Name (ARN) of the instance (for example, `arn:aws:lightsail:us-east-2:123456789101:Instance/244ad76f-8aad-4741-809f-12345EXAMPLE`).

`Ipv6Addresses`  <a name="Ipv6Addresses-fn::getatt"></a>
The IPv6 addresses of the instance.

`IsStaticIp`  <a name="IsStaticIp-fn::getatt"></a>
A Boolean value indicating whether the instance has a static IP assigned to it.

`Location.AvailabilityZone`  <a name="Location.AvailabilityZone-fn::getatt"></a>
The AWS Region and Availability Zone where the instance is located.

`Location.RegionName`  <a name="Location.RegionName-fn::getatt"></a>
The AWS Region of the instance.

`Networking.MonthlyTransfer.GbPerMonthAllocated`  <a name="Networking.MonthlyTransfer.GbPerMonthAllocated-fn::getatt"></a>
The amount of allocated monthly data transfer (in GB) for an instance.

`PrivateIpAddress`  <a name="PrivateIpAddress-fn::getatt"></a>
The private IP address of the instance.

`PublicIpAddress`  <a name="PublicIpAddress-fn::getatt"></a>
The public IP address of the instance.

`ResourceType`  <a name="ResourceType-fn::getatt"></a>
The resource type of the instance (for example, `Instance`).

`SshKeyName`  <a name="SshKeyName-fn::getatt"></a>
The name of the SSH key pair used by the instance.

`State.Code`  <a name="State.Code-fn::getatt"></a>
The status code of the instance.

`State.Name`  <a name="State.Name-fn::getatt"></a>
The state of the instance (for example, `running` or `pending`).

`SupportCode`  <a name="SupportCode-fn::getatt"></a>
The support code of the instance.  
Include this code in your email to support when you have questions about an instance or another resource in Lightsail. This code helps our support team to look up your Lightsail information.

`UserName`  <a name="UserName-fn::getatt"></a>
The user name for connecting to the instance (for example, `ec2-user`).

## Remarks
<a name="aws-resource-lightsail-instance--remarks"></a>

 *Attaching a static IP to an instance* 

You cannot attach a static IP to an instance using the instance resource. Instead, you must use the static IP resource to attach a static IP to an instance. To attach a static IP to an instance, the instance must be in a `running` state.

 *Network ports* 

If no network ports are specified when performing a create instance request, the default network ports are opened when the instance is created.

To open ports on your instance when performing a create instance request, you must specify all the ports that you want to open, including the default ports. The default ports are not automatically opened when you specify the ports you want to open.

 *Disk attach and detach* 

The instance restarts when performing an attach disk or detach disk request. This resets the public IP address of your instance if a static IP isn't attached to it.

If you detach a disk (for eample, `DiskA`) and attach a different disk (for example, `DiskB`) in the same request, and the attach disk request fails, CloudFormation will attempt to roll back the changes so that `DiskA` is re-attached to the instance. However, if you delete `DiskA` before CloudFormation attemps the roll-back, then the roll-back will fail and the instance will not have either disk attached.

 *Read-only properties* 

The `State`, `Location`, `CpuCount`, and `RamSizeInGb` properties are read-only and should not be specified in a create instance or update instance request.

# AWS::Lightsail::Instance AddOn
<a name="aws-properties-lightsail-instance-addon"></a>

`AddOn` is a property of the [AWS::Lightsail::Instance](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-instance.html) resource. It describes the add-ons for an instance.

## Syntax
<a name="aws-properties-lightsail-instance-addon-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-lightsail-instance-addon-syntax.json"></a>

```
{
  "[AddOnType](#cfn-lightsail-instance-addon-addontype)" : String,
  "[AutoSnapshotAddOnRequest](#cfn-lightsail-instance-addon-autosnapshotaddonrequest)" : AutoSnapshotAddOn,
  "[Status](#cfn-lightsail-instance-addon-status)" : String
}
```

### YAML
<a name="aws-properties-lightsail-instance-addon-syntax.yaml"></a>

```
  [AddOnType](#cfn-lightsail-instance-addon-addontype): String
  [AutoSnapshotAddOnRequest](#cfn-lightsail-instance-addon-autosnapshotaddonrequest): 
    AutoSnapshotAddOn
  [Status](#cfn-lightsail-instance-addon-status): String
```

## Properties
<a name="aws-properties-lightsail-instance-addon-properties"></a>

`AddOnType`  <a name="cfn-lightsail-instance-addon-addontype"></a>
The add-on type (for example, `AutoSnapshot`).  
`AutoSnapshot` is the only add-on that can be enabled for an instance.
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `128`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`AutoSnapshotAddOnRequest`  <a name="cfn-lightsail-instance-addon-autosnapshotaddonrequest"></a>
The parameters for the automatic snapshot add-on, such as the daily time when an automatic snapshot will be created.  
*Required*: No  
*Type*: [AutoSnapshotAddOn](aws-properties-lightsail-instance-autosnapshotaddon.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Status`  <a name="cfn-lightsail-instance-addon-status"></a>
The status of the add-on.  
Valid Values: `Enabled` \$1 `Disabled`  
*Required*: No  
*Type*: String  
*Allowed values*: `Enabling | Disabling | Enabled | Terminating | Terminated | Disabled | Failed`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Lightsail::Instance AutoSnapshotAddOn
<a name="aws-properties-lightsail-instance-autosnapshotaddon"></a>

`AutoSnapshotAddOn` is a property of the [AddOn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lightsail-instance-addon.html) property. It describes the automatic snapshot add-on for an instance.

## Syntax
<a name="aws-properties-lightsail-instance-autosnapshotaddon-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-lightsail-instance-autosnapshotaddon-syntax.json"></a>

```
{
  "[SnapshotTimeOfDay](#cfn-lightsail-instance-autosnapshotaddon-snapshottimeofday)" : String
}
```

### YAML
<a name="aws-properties-lightsail-instance-autosnapshotaddon-syntax.yaml"></a>

```
  [SnapshotTimeOfDay](#cfn-lightsail-instance-autosnapshotaddon-snapshottimeofday): String
```

## Properties
<a name="aws-properties-lightsail-instance-autosnapshotaddon-properties"></a>

`SnapshotTimeOfDay`  <a name="cfn-lightsail-instance-autosnapshotaddon-snapshottimeofday"></a>
The daily time when an automatic snapshot will be created.  
Constraints:  
+ Must be in `HH:00` format, and in an hourly increment.
+ Specified in Coordinated Universal Time (UTC).
+ The snapshot will be automatically created between the time specified and up to 45 minutes after.
*Required*: No  
*Type*: String  
*Pattern*: `^[0-9]{2}:00$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Lightsail::Instance Disk
<a name="aws-properties-lightsail-instance-disk"></a>

`Disk` is a property of the [Hardware](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lightsail-instance-hardware.html) property. It describes a disk attached to an instance.

## Syntax
<a name="aws-properties-lightsail-instance-disk-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-lightsail-instance-disk-syntax.json"></a>

```
{
  "[AttachedTo](#cfn-lightsail-instance-disk-attachedto)" : String,
  "[AttachmentState](#cfn-lightsail-instance-disk-attachmentstate)" : String,
  "[DiskName](#cfn-lightsail-instance-disk-diskname)" : String,
  "[IOPS](#cfn-lightsail-instance-disk-iops)" : Integer,
  "[IsSystemDisk](#cfn-lightsail-instance-disk-issystemdisk)" : Boolean,
  "[Path](#cfn-lightsail-instance-disk-path)" : String,
  "[SizeInGb](#cfn-lightsail-instance-disk-sizeingb)" : String
}
```

### YAML
<a name="aws-properties-lightsail-instance-disk-syntax.yaml"></a>

```
  [AttachedTo](#cfn-lightsail-instance-disk-attachedto): String
  [AttachmentState](#cfn-lightsail-instance-disk-attachmentstate): String
  [DiskName](#cfn-lightsail-instance-disk-diskname): String
  [IOPS](#cfn-lightsail-instance-disk-iops): Integer
  [IsSystemDisk](#cfn-lightsail-instance-disk-issystemdisk): Boolean
  [Path](#cfn-lightsail-instance-disk-path): String
  [SizeInGb](#cfn-lightsail-instance-disk-sizeingb): String
```

## Properties
<a name="aws-properties-lightsail-instance-disk-properties"></a>

`AttachedTo`  <a name="cfn-lightsail-instance-disk-attachedto"></a>
The resources to which the disk is attached.  
*Required*: No  
*Type*: String  
*Update requires*: Updates are not supported.

`AttachmentState`  <a name="cfn-lightsail-instance-disk-attachmentstate"></a>
(Deprecated) The attachment state of the disk.  
In releases prior to November 14, 2017, this parameter returned `attached` for system disks in the API response. It is now deprecated, but still included in the response. Use `isAttached` instead.
*Required*: No  
*Type*: String  
*Update requires*: Updates are not supported.

`DiskName`  <a name="cfn-lightsail-instance-disk-diskname"></a>
The unique name of the disk.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z0-9][\w\-.]*[a-zA-Z0-9]$`  
*Minimum*: `1`  
*Maximum*: `254`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`IOPS`  <a name="cfn-lightsail-instance-disk-iops"></a>
The input/output operations per second (IOPS) of the disk.  
*Required*: No  
*Type*: Integer  
*Update requires*: Updates are not supported.

`IsSystemDisk`  <a name="cfn-lightsail-instance-disk-issystemdisk"></a>
A Boolean value indicating whether this disk is a system disk (has an operating system loaded on it).  
*Required*: No  
*Type*: Boolean  
*Update requires*: Updates are not supported.

`Path`  <a name="cfn-lightsail-instance-disk-path"></a>
The disk path.  
*Required*: Yes  
*Type*: String  
*Update requires*: Updates are not supported.

`SizeInGb`  <a name="cfn-lightsail-instance-disk-sizeingb"></a>
The size of the disk in GB.  
*Required*: No  
*Type*: String  
*Update requires*: Updates are not supported.

# AWS::Lightsail::Instance Hardware
<a name="aws-properties-lightsail-instance-hardware"></a>

`Hardware` is a property of the [AWS::Lightsail::Instance](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-instance.html) resource. It describes the hardware properties for the instance, such as the vCPU count, attached disks, and amount of RAM.

## Syntax
<a name="aws-properties-lightsail-instance-hardware-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-lightsail-instance-hardware-syntax.json"></a>

```
{
  "[CpuCount](#cfn-lightsail-instance-hardware-cpucount)" : Integer,
  "[Disks](#cfn-lightsail-instance-hardware-disks)" : [ Disk, ... ],
  "[RamSizeInGb](#cfn-lightsail-instance-hardware-ramsizeingb)" : Integer
}
```

### YAML
<a name="aws-properties-lightsail-instance-hardware-syntax.yaml"></a>

```
  [CpuCount](#cfn-lightsail-instance-hardware-cpucount): Integer
  [Disks](#cfn-lightsail-instance-hardware-disks): 
    - Disk
  [RamSizeInGb](#cfn-lightsail-instance-hardware-ramsizeingb): Integer
```

## Properties
<a name="aws-properties-lightsail-instance-hardware-properties"></a>

`CpuCount`  <a name="cfn-lightsail-instance-hardware-cpucount"></a>
The number of vCPUs the instance has.  
The `CpuCount` property is read-only and should not be specified in a create instance or update instance request.
*Required*: No  
*Type*: Integer  
*Update requires*: Updates are not supported.

`Disks`  <a name="cfn-lightsail-instance-hardware-disks"></a>
The disks attached to the instance.  
The instance restarts when performing an attach disk or detach disk request. This resets the public IP address of your instance if a static IP isn't attached to it.  
*Required*: No  
*Type*: Array of [Disk](aws-properties-lightsail-instance-disk.md)  
*Update requires*: [Some interruptions](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-some-interrupt)

`RamSizeInGb`  <a name="cfn-lightsail-instance-hardware-ramsizeingb"></a>
The amount of RAM in GB on the instance (for example, `1.0`).  
The `RamSizeInGb` property is read-only and should not be specified in a create instance or update instance request.
*Required*: No  
*Type*: Integer  
*Update requires*: Updates are not supported.

# AWS::Lightsail::Instance Location
<a name="aws-properties-lightsail-instance-location"></a>

`Location` is a property of the [AWS::Lightsail::Instance](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-instance.html) resource. It describes the location for an instance.

## Syntax
<a name="aws-properties-lightsail-instance-location-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-lightsail-instance-location-syntax.json"></a>

```
{
  "[AvailabilityZone](#cfn-lightsail-instance-location-availabilityzone)" : String,
  "[RegionName](#cfn-lightsail-instance-location-regionname)" : String
}
```

### YAML
<a name="aws-properties-lightsail-instance-location-syntax.yaml"></a>

```
  [AvailabilityZone](#cfn-lightsail-instance-location-availabilityzone): String
  [RegionName](#cfn-lightsail-instance-location-regionname): String
```

## Properties
<a name="aws-properties-lightsail-instance-location-properties"></a>

`AvailabilityZone`  <a name="cfn-lightsail-instance-location-availabilityzone"></a>
The Availability Zone for the instance.  
*Required*: No  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`RegionName`  <a name="cfn-lightsail-instance-location-regionname"></a>
The name of the AWS Region for the instance.  
*Required*: No  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Lightsail::Instance MonthlyTransfer
<a name="aws-properties-lightsail-instance-monthlytransfer"></a>

`MonthlyTransfer` is a property of the [Networking](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lightsail-instance-networking.html) property. It describes the amount of allocated monthly data transfer (in GB) for an instance.

## Syntax
<a name="aws-properties-lightsail-instance-monthlytransfer-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-lightsail-instance-monthlytransfer-syntax.json"></a>

```
{
  "[GbPerMonthAllocated](#cfn-lightsail-instance-monthlytransfer-gbpermonthallocated)" : String
}
```

### YAML
<a name="aws-properties-lightsail-instance-monthlytransfer-syntax.yaml"></a>

```
  [GbPerMonthAllocated](#cfn-lightsail-instance-monthlytransfer-gbpermonthallocated): String
```

## Properties
<a name="aws-properties-lightsail-instance-monthlytransfer-properties"></a>

`GbPerMonthAllocated`  <a name="cfn-lightsail-instance-monthlytransfer-gbpermonthallocated"></a>
The amount of allocated monthly data transfer (in GB) for an instance.  
*Required*: No  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Lightsail::Instance Networking
<a name="aws-properties-lightsail-instance-networking"></a>

`Networking` is a property of the [AWS::Lightsail::Instance](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-instance.html) resource. It describes the public ports and the monthly amount of data transfer allocated for the instance.

## Syntax
<a name="aws-properties-lightsail-instance-networking-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-lightsail-instance-networking-syntax.json"></a>

```
{
  "[MonthlyTransfer](#cfn-lightsail-instance-networking-monthlytransfer)" : MonthlyTransfer,
  "[Ports](#cfn-lightsail-instance-networking-ports)" : [ Port, ... ]
}
```

### YAML
<a name="aws-properties-lightsail-instance-networking-syntax.yaml"></a>

```
  [MonthlyTransfer](#cfn-lightsail-instance-networking-monthlytransfer): 
    MonthlyTransfer
  [Ports](#cfn-lightsail-instance-networking-ports): 
    - Port
```

## Properties
<a name="aws-properties-lightsail-instance-networking-properties"></a>

`MonthlyTransfer`  <a name="cfn-lightsail-instance-networking-monthlytransfer"></a>
The monthly amount of data transfer, in GB, allocated for the instance  
*Required*: No  
*Type*: [MonthlyTransfer](aws-properties-lightsail-instance-monthlytransfer.md)  
*Update requires*: Updates are not supported.

`Ports`  <a name="cfn-lightsail-instance-networking-ports"></a>
An array of ports to open on the instance.  
*Required*: Yes  
*Type*: Array of [Port](aws-properties-lightsail-instance-port.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Lightsail::Instance Port
<a name="aws-properties-lightsail-instance-port"></a>

`Port` is a property of the [Networking](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lightsail-instance-networking.html) property. It describes information about ports for an instance.

## Syntax
<a name="aws-properties-lightsail-instance-port-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-lightsail-instance-port-syntax.json"></a>

```
{
  "[AccessDirection](#cfn-lightsail-instance-port-accessdirection)" : String,
  "[AccessFrom](#cfn-lightsail-instance-port-accessfrom)" : String,
  "[AccessType](#cfn-lightsail-instance-port-accesstype)" : String,
  "[CidrListAliases](#cfn-lightsail-instance-port-cidrlistaliases)" : [ String, ... ],
  "[Cidrs](#cfn-lightsail-instance-port-cidrs)" : [ String, ... ],
  "[CommonName](#cfn-lightsail-instance-port-commonname)" : String,
  "[FromPort](#cfn-lightsail-instance-port-fromport)" : Integer,
  "[Ipv6Cidrs](#cfn-lightsail-instance-port-ipv6cidrs)" : [ String, ... ],
  "[Protocol](#cfn-lightsail-instance-port-protocol)" : String,
  "[ToPort](#cfn-lightsail-instance-port-toport)" : Integer
}
```

### YAML
<a name="aws-properties-lightsail-instance-port-syntax.yaml"></a>

```
  [AccessDirection](#cfn-lightsail-instance-port-accessdirection): String
  [AccessFrom](#cfn-lightsail-instance-port-accessfrom): String
  [AccessType](#cfn-lightsail-instance-port-accesstype): String
  [CidrListAliases](#cfn-lightsail-instance-port-cidrlistaliases): 
    - String
  [Cidrs](#cfn-lightsail-instance-port-cidrs): 
    - String
  [CommonName](#cfn-lightsail-instance-port-commonname): String
  [FromPort](#cfn-lightsail-instance-port-fromport): Integer
  [Ipv6Cidrs](#cfn-lightsail-instance-port-ipv6cidrs): 
    - String
  [Protocol](#cfn-lightsail-instance-port-protocol): String
  [ToPort](#cfn-lightsail-instance-port-toport): Integer
```

## Properties
<a name="aws-properties-lightsail-instance-port-properties"></a>

`AccessDirection`  <a name="cfn-lightsail-instance-port-accessdirection"></a>
The access direction (`inbound` or `outbound`).  
Lightsail currently supports only `inbound` access direction.
*Required*: No  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`AccessFrom`  <a name="cfn-lightsail-instance-port-accessfrom"></a>
The location from which access is allowed. For example, `Anywhere (0.0.0.0/0)`, or `Custom` if a specific IP address or range of IP addresses is allowed.  
*Required*: No  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`AccessType`  <a name="cfn-lightsail-instance-port-accesstype"></a>
The type of access (`Public` or `Private`).  
*Required*: No  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`CidrListAliases`  <a name="cfn-lightsail-instance-port-cidrlistaliases"></a>
An alias that defines access for a preconfigured range of IP addresses.  
The only alias currently supported is `lightsail-connect`, which allows IP addresses of the browser-based RDP/SSH client in the Lightsail console to connect to your instance.  
*Required*: No  
*Type*: Array of String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Cidrs`  <a name="cfn-lightsail-instance-port-cidrs"></a>
The IPv4 address, or range of IPv4 addresses (in CIDR notation) that are allowed to connect to an instance through the ports, and the protocol.  
The `ipv6Cidrs` parameter lists the IPv6 addresses that are allowed to connect to an instance.
Examples:  
+ To allow the IP address `192.0.2.44`, specify `192.0.2.44` or `192.0.2.44/32`. 
+ To allow the IP addresses `192.0.2.0` to `192.0.2.255`, specify `192.0.2.0/24`.
*Required*: No  
*Type*: Array of String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`CommonName`  <a name="cfn-lightsail-instance-port-commonname"></a>
The common name of the port information.  
*Required*: No  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`FromPort`  <a name="cfn-lightsail-instance-port-fromport"></a>
The first port in a range of open ports on an instance.  
Allowed ports:  
+ TCP and UDP - `0` to `65535`
+ ICMP - The ICMP type for IPv4 addresses. For example, specify `8` as the `fromPort` (ICMP type), and `-1` as the `toPort` (ICMP code), to enable ICMP Ping.
+ ICMPv6 - The ICMP type for IPv6 addresses. For example, specify `128` as the `fromPort` (ICMPv6 type), and `0` as `toPort` (ICMPv6 code).
*Required*: No  
*Type*: Integer  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Ipv6Cidrs`  <a name="cfn-lightsail-instance-port-ipv6cidrs"></a>
The IPv6 address, or range of IPv6 addresses (in CIDR notation) that are allowed to connect to an instance through the ports, and the protocol. Only devices with an IPv6 address can connect to an instance through IPv6; otherwise, IPv4 should be used.  
The `cidrs` parameter lists the IPv4 addresses that are allowed to connect to an instance.
*Required*: No  
*Type*: Array of String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Protocol`  <a name="cfn-lightsail-instance-port-protocol"></a>
The IP protocol name.  
The name can be one of the following:  
+ `tcp` - Transmission Control Protocol (TCP) provides reliable, ordered, and error-checked delivery of streamed data between applications running on hosts communicating by an IP network. If you have an application that doesn't require reliable data stream service, use UDP instead.
+ `all` - All transport layer protocol types.
+ `udp` - With User Datagram Protocol (UDP), computer applications can send messages (or datagrams) to other hosts on an Internet Protocol (IP) network. Prior communications are not required to set up transmission channels or data paths. Applications that don't require reliable data stream service can use UDP, which provides a connectionless datagram service that emphasizes reduced latency over reliability. If you do require reliable data stream service, use TCP instead.
+ `icmp` - Internet Control Message Protocol (ICMP) is used to send error messages and operational information indicating success or failure when communicating with an instance. For example, an error is indicated when an instance could not be reached. When you specify `icmp` as the `protocol`, you must specify the ICMP type using the `fromPort` parameter, and ICMP code using the `toPort` parameter.
*Required*: No  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ToPort`  <a name="cfn-lightsail-instance-port-toport"></a>
The last port in a range of open ports on an instance.  
Allowed ports:  
+ TCP and UDP - `0` to `65535`
+ ICMP - The ICMP code for IPv4 addresses. For example, specify `8` as the `fromPort` (ICMP type), and `-1` as the `toPort` (ICMP code), to enable ICMP Ping.
+ ICMPv6 - The ICMP code for IPv6 addresses. For example, specify `128` as the `fromPort` (ICMPv6 type), and `0` as `toPort` (ICMPv6 code).
*Required*: No  
*Type*: Integer  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Lightsail::Instance State
<a name="aws-properties-lightsail-instance-state"></a>

`State` is a property of the [AWS::Lightsail::Instance](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-instance.html) resource. It describes the status code and the state (for example, `running`) of an instance.

## Syntax
<a name="aws-properties-lightsail-instance-state-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-lightsail-instance-state-syntax.json"></a>

```
{
  "[Code](#cfn-lightsail-instance-state-code)" : Integer,
  "[Name](#cfn-lightsail-instance-state-name)" : String
}
```

### YAML
<a name="aws-properties-lightsail-instance-state-syntax.yaml"></a>

```
  [Code](#cfn-lightsail-instance-state-code): Integer
  [Name](#cfn-lightsail-instance-state-name): String
```

## Properties
<a name="aws-properties-lightsail-instance-state-properties"></a>

`Code`  <a name="cfn-lightsail-instance-state-code"></a>
The status code of the instance.  
*Required*: No  
*Type*: Integer  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Name`  <a name="cfn-lightsail-instance-state-name"></a>
The state of the instance (for example, `running` or `pending`).  
*Required*: No  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Lightsail::Instance Tag
<a name="aws-properties-lightsail-instance-tag"></a>

Describes a tag key and optional value assigned to an Amazon Lightsail resource.

For more information about tags in Lightsail, see the [Amazon Lightsail Developer Guide](https://docs.aws.amazon.com/lightsail/latest/userguide/amazon-lightsail-tags).

## Syntax
<a name="aws-properties-lightsail-instance-tag-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-lightsail-instance-tag-syntax.json"></a>

```
{
  "[Key](#cfn-lightsail-instance-tag-key)" : String,
  "[Value](#cfn-lightsail-instance-tag-value)" : String
}
```

### YAML
<a name="aws-properties-lightsail-instance-tag-syntax.yaml"></a>

```
  [Key](#cfn-lightsail-instance-tag-key): String
  [Value](#cfn-lightsail-instance-tag-value): String
```

## Properties
<a name="aws-properties-lightsail-instance-tag-properties"></a>

`Key`  <a name="cfn-lightsail-instance-tag-key"></a>
The key of the tag.  
Constraints: Tag keys accept a maximum of 128 letters, numbers, spaces in UTF-8, or the following characters: \$1 - = . \$1 : / @  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `128`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Value`  <a name="cfn-lightsail-instance-tag-value"></a>
The value of the tag.  
Constraints: Tag values accept a maximum of 256 letters, numbers, spaces in UTF-8, or the following characters: \$1 - = . \$1 : / @  
*Required*: No  
*Type*: String  
*Minimum*: `0`  
*Maximum*: `256`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)