create_instance
(**kwargs)¶Creates an instance in a specified stack. For more information, see Adding an Instance to a Layer.
Required Permissions : To use this action, an IAM user must have a Manage permissions level for the stack, or an attached policy that explicitly grants permissions. For more information on user permissions, see Managing User Permissions.
See also: AWS API Documentation
Request Syntax
response = client.create_instance(
StackId='string',
LayerIds=[
'string',
],
InstanceType='string',
AutoScalingType='load'|'timer',
Hostname='string',
Os='string',
AmiId='string',
SshKeyName='string',
AvailabilityZone='string',
VirtualizationType='string',
SubnetId='string',
Architecture='x86_64'|'i386',
RootDeviceType='ebs'|'instance-store',
BlockDeviceMappings=[
{
'DeviceName': 'string',
'NoDevice': 'string',
'VirtualName': 'string',
'Ebs': {
'SnapshotId': 'string',
'Iops': 123,
'VolumeSize': 123,
'VolumeType': 'gp2'|'io1'|'standard',
'DeleteOnTermination': True|False
}
},
],
InstallUpdatesOnBoot=True|False,
EbsOptimized=True|False,
AgentVersion='string',
Tenancy='string'
)
[REQUIRED]
The stack ID.
[REQUIRED]
An array that contains the instance's layer IDs.
[REQUIRED]
The instance type, such as t2.micro
. For a list of supported instance types, open the stack in the console, choose Instances , and choose + Instance . The Size list contains the currently supported types. For more information, see Instance Families and Types. The parameter values that you use to specify the various types are in the API Name column of the Available Instance Types table.
The instance's operating system, which must be set to one of the following.
Amazon Linux 2018.03
, Amazon Linux 2017.09
, Amazon Linux 2017.03
, Amazon Linux 2016.09
, Amazon Linux 2016.03
, Amazon Linux 2015.09
, or Amazon Linux 2015.03
.Ubuntu 16.04 LTS
, Ubuntu 14.04 LTS
, or Ubuntu 12.04 LTS
.CentOS Linux 7
Red Hat Enterprise Linux 7
Microsoft Windows Server 2012 R2 Base
, Microsoft Windows Server 2012 R2 with SQL Server Express
, Microsoft Windows Server 2012 R2 with SQL Server Standard
, or Microsoft Windows Server 2012 R2 with SQL Server Web
.Custom
.For more information about the supported operating systems, see AWS OpsWorks Stacks Operating Systems.
The default option is the current Amazon Linux version. If you set this parameter to Custom
, you must use the CreateInstance action's AmiId parameter to specify the custom AMI that you want to use. Block device mappings are not supported if the value is Custom
. For more information about supported operating systems, see Operating Systems For more information about how to use custom AMIs with AWS OpsWorks Stacks, see Using Custom AMIs.
A custom AMI ID to be used to create the instance. The AMI should be based on one of the supported operating systems. For more information, see Using Custom AMIs.
Note
If you specify a custom AMI, you must set Os
to Custom
.
paravirtual
or hvm
.x86_64
. Instance types do not necessarily support both architectures. For a list of the architectures that are supported by the different instance types, see Instance Families and Types.An array of BlockDeviceMapping
objects that specify the instance's block devices. For more information, see Block Device Mapping. Note that block device mappings are not supported for custom AMIs.
Describes a block device mapping. This data type maps directly to the Amazon EC2 BlockDeviceMapping data type.
The device name that is exposed to the instance, such as /dev/sdh
. For the root device, you can use the explicit device name or you can set this parameter to ROOT_DEVICE
and AWS OpsWorks Stacks will provide the correct device name.
Suppresses the specified device included in the AMI's block device mapping.
The virtual device name. For more information, see BlockDeviceMapping.
An EBSBlockDevice
that defines how to configure an Amazon EBS volume when the instance is launched.
The snapshot ID.
The number of I/O operations per second (IOPS) that the volume supports. For more information, see EbsBlockDevice.
The volume size, in GiB. For more information, see EbsBlockDevice.
The volume type. gp2
for General Purpose (SSD) volumes, io1
for Provisioned IOPS (SSD) volumes, st1
for Throughput Optimized hard disk drives (HDD), sc1
for Cold HDD,and standard
for Magnetic volumes.
If you specify the io1
volume type, you must also specify a value for the Iops
attribute. The maximum ratio of provisioned IOPS to requested volume size (in GiB) is 50:1. AWS uses the default volume size (in GiB) specified in the AMI attributes to set IOPS to 50 x (volume size).
Whether the volume is deleted on instance termination.
Whether to install operating system and package updates when the instance boots. The default value is true
. To control when updates are installed, set this value to false
. You must then update your instances manually by using CreateDeployment to run the update_dependencies
stack command or by manually running yum
(Amazon Linux) or apt-get
(Ubuntu) on the instances.
Note
We strongly recommend using the default value of true
to ensure that your instances have the latest security updates.
The default AWS OpsWorks Stacks agent version. You have the following options:
INHERIT
- Use the stack's default agent version setting.The default setting is INHERIT
. To specify an agent version, you must use the complete version number, not the abbreviated number shown on the console. For a list of available agent version numbers, call DescribeAgentVersions. AgentVersion cannot be set to Chef 12.2.
dedicated
, default
, or host
. Because there are costs associated with changes in tenancy options, we recommend that you research tenancy options before choosing them for your instances. For more information about dedicated hosts, see Dedicated Hosts Overview and Amazon EC2 Dedicated Hosts. For more information about dedicated instances, see Dedicated Instances and Amazon EC2 Dedicated Instances.dict
Response Syntax
{
'InstanceId': 'string'
}
Response Structure
(dict) --
Contains the response to a CreateInstance
request.
InstanceId (string) --
The instance ID.
Exceptions
OpsWorks.Client.exceptions.ValidationException
OpsWorks.Client.exceptions.ResourceNotFoundException