EC2 / Client / create_placement_group
create_placement_group#
- EC2.Client.create_placement_group(**kwargs)#
Creates a placement group in which to launch instances. The strategy of the placement group determines how the instances are organized within the group.
A
cluster
placement group is a logical grouping of instances within a single Availability Zone that benefit from low network latency, high network throughput. Aspread
placement group places instances on distinct hardware. Apartition
placement group places groups of instances in different partitions, where instances in one partition do not share the same hardware with instances in another partition.For more information, see Placement groups in the Amazon EC2 User Guide.
See also: AWS API Documentation
Request Syntax
response = client.create_placement_group( DryRun=True|False, GroupName='string', Strategy='cluster'|'spread'|'partition', PartitionCount=123, TagSpecifications=[ { 'ResourceType': 'capacity-reservation'|'client-vpn-endpoint'|'customer-gateway'|'carrier-gateway'|'coip-pool'|'dedicated-host'|'dhcp-options'|'egress-only-internet-gateway'|'elastic-ip'|'elastic-gpu'|'export-image-task'|'export-instance-task'|'fleet'|'fpga-image'|'host-reservation'|'image'|'import-image-task'|'import-snapshot-task'|'instance'|'instance-event-window'|'internet-gateway'|'ipam'|'ipam-pool'|'ipam-scope'|'ipv4pool-ec2'|'ipv6pool-ec2'|'key-pair'|'launch-template'|'local-gateway'|'local-gateway-route-table'|'local-gateway-virtual-interface'|'local-gateway-virtual-interface-group'|'local-gateway-route-table-vpc-association'|'local-gateway-route-table-virtual-interface-group-association'|'natgateway'|'network-acl'|'network-interface'|'network-insights-analysis'|'network-insights-path'|'network-insights-access-scope'|'network-insights-access-scope-analysis'|'placement-group'|'prefix-list'|'replace-root-volume-task'|'reserved-instances'|'route-table'|'security-group'|'security-group-rule'|'snapshot'|'spot-fleet-request'|'spot-instances-request'|'subnet'|'subnet-cidr-reservation'|'traffic-mirror-filter'|'traffic-mirror-session'|'traffic-mirror-target'|'transit-gateway'|'transit-gateway-attachment'|'transit-gateway-connect-peer'|'transit-gateway-multicast-domain'|'transit-gateway-policy-table'|'transit-gateway-route-table'|'transit-gateway-route-table-announcement'|'volume'|'vpc'|'vpc-endpoint'|'vpc-endpoint-connection'|'vpc-endpoint-service'|'vpc-endpoint-service-permission'|'vpc-peering-connection'|'vpn-connection'|'vpn-gateway'|'vpc-flow-log'|'capacity-reservation-fleet'|'traffic-mirror-filter-rule'|'vpc-endpoint-connection-device-type'|'verified-access-instance'|'verified-access-group'|'verified-access-endpoint'|'verified-access-policy'|'verified-access-trust-provider'|'vpn-connection-device-type'|'vpc-block-public-access-exclusion'|'ipam-resource-discovery'|'ipam-resource-discovery-association'|'instance-connect-endpoint'|'ipam-external-resource-verification-token', 'Tags': [ { 'Key': 'string', 'Value': 'string' }, ] }, ], SpreadLevel='host'|'rack' )
- Parameters:
DryRun (boolean) – Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is
DryRunOperation
. Otherwise, it isUnauthorizedOperation
.GroupName (string) –
A name for the placement group. Must be unique within the scope of your account for the Region.
Constraints: Up to 255 ASCII characters
Strategy (string) – The placement strategy.
PartitionCount (integer) – The number of partitions. Valid only when Strategy is set to
partition
.TagSpecifications (list) –
The tags to apply to the new placement group.
(dict) –
The tags to apply to a resource when the resource is being created. When you specify a tag, you must specify the resource type to tag, otherwise the request will fail.
Note
The
Valid Values
lists all the resource types that can be tagged. However, the action you’re using might not support tagging all of these resource types. If you try to tag a resource type that is unsupported for the action you’re using, you’ll get an error.ResourceType (string) –
The type of resource to tag on creation.
Tags (list) –
The tags to apply to the resource.
(dict) –
Describes a tag.
Key (string) –
The key of the tag.
Constraints: Tag keys are case-sensitive and accept a maximum of 127 Unicode characters. May not begin with
aws:
.Value (string) –
The value of the tag.
Constraints: Tag values are case-sensitive and accept a maximum of 256 Unicode characters.
SpreadLevel (string) –
Determines how placement groups spread instances.
Host – You can use
host
only with Outpost placement groups.Rack – No usage restrictions.
- Return type:
dict
- Returns:
Response Syntax
{ 'PlacementGroup': { 'GroupName': 'string', 'State': 'pending'|'available'|'deleting'|'deleted', 'Strategy': 'cluster'|'spread'|'partition', 'PartitionCount': 123, 'GroupId': 'string', 'Tags': [ { 'Key': 'string', 'Value': 'string' }, ], 'GroupArn': 'string', 'SpreadLevel': 'host'|'rack' } }
Response Structure
(dict) –
PlacementGroup (dict) –
Information about the placement group.
GroupName (string) –
The name of the placement group.
State (string) –
The state of the placement group.
Strategy (string) –
The placement strategy.
PartitionCount (integer) –
The number of partitions. Valid only if strategy is set to
partition
.GroupId (string) –
The ID of the placement group.
Tags (list) –
Any tags applied to the placement group.
(dict) –
Describes a tag.
Key (string) –
The key of the tag.
Constraints: Tag keys are case-sensitive and accept a maximum of 127 Unicode characters. May not begin with
aws:
.Value (string) –
The value of the tag.
Constraints: Tag values are case-sensitive and accept a maximum of 256 Unicode characters.
GroupArn (string) –
The Amazon Resource Name (ARN) of the placement group.
SpreadLevel (string) –
The spread level for the placement group. Only Outpost placement groups can be spread across hosts.
Examples
This example creates a placement group with the specified name.
response = client.create_placement_group( GroupName='my-cluster', Strategy='cluster', ) print(response)
Expected Output:
{ 'ResponseMetadata': { '...': '...', }, }