4.5 KiB
layout | page_title | sidebar_current | description |
---|---|---|---|
aws | AWS: aws_instance | docs-aws-datasource-instance | Get information on an Amazon EC2 Instance. |
aws_instance
Use this data source to get the ID of an Amazon EC2 Instance for use in other resources.
Example Usage
data "aws_instance" "foo" {
instance_id = "i-instanceid"
filter {
name = "image-id"
values = ["ami-xxxxxxxx"]
}
filter {
name = "tag:Name"
values = ["instance-name-tag"]
}
}
Argument Reference
-
instance_id
- (Optional) Specify the exact Instance ID with which to populate the data source. -
instance_tags
- (Optional) A mapping of tags, each pair of which must exactly match a pair on the desired Instance. -
filter
- (Optional) One or more name/value pairs to use as filters. There are several valid keys, for a full reference, check out describe-instances in the AWS CLI reference.
~> NOTE: At least one of filter
, instance_tags
, or instance_id
must be specified.
~> NOTE: If anything other than a single match is returned by the search, Terraform will fail. Ensure that your search is specific enough to return a single Instance ID only.
Attributes Reference
id
is set to the ID of the found Instance. In addition, the following attributes
are exported:
~> NOTE: Some values are not always set and may not be available for interpolation.
associate_public_ip_address
- Whether or not the Instance is associated with a public IP address or not (Boolean).availability_zone
- The availability zone of the Instance.ebs_block_device
- The EBS block device mappings of the Instance.delete_on_termination
- If the EBS volume will be deleted on termination.device_name
- The physical name of the device.encrypted
- If the EBS volume is encrypted.iops
-0
If the EBS volume is not a provisioned IOPS image, otherwise the supported IOPS count.snapshot_id
- The ID of the snapshot.volume_size
- The size of the volume, in GiB.volume_type
- The volume type.
ebs_optimized
- Whether the Instance is EBS optimized or not (Boolean).ephemeral_block_device
- The ephemeral block device mappings of the Instance.device_name
- The physical name of the device.no_device
- Whether the specified device included in the device mapping was suppressed or not (Boolean).virtual_name
- The virtual device name.
iam_instance_profile
- The name of the instance profile associated with the Instance.ipv6_addresses
- The IPv6 addresses associated to the Instance, if applicable. NOTE: Unlike the IPv4 address, this doesn't change if you attach an EIP to the instance.instance_type
- The type of the Instance.key_name
- The key name of the Instance.monitoring
- Whether detailed monitoring is enabled or disabled for the Instance (Boolean).network_interface_id
- The ID of the network interface that was created with the Instance.placement_group
- The placement group of the Instance.private_dns
- The private DNS name assigned to the Instance. Can only be used inside the Amazon EC2, and only available if you've enabled DNS hostnames for your VPC.private_ip
- The private IP address assigned to the Instance.public_dns
- The public DNS name assigned to the Instance. For EC2-VPC, this is only available if you've enabled DNS hostnames for your VPC.public_ip
- The public IP address assigned to the Instance, if applicable. NOTE: If you are using anaws_eip
with your instance, you should refer to the EIP's address directly and not usepublic_ip
, as this field will change after the EIP is attached.root_block_device
- The root block device mappings of the Instancedelete_on_termination
- If the root block device will be deleted on termination.iops
-0
If the volume is not a provisioned IOPS image, otherwise the supported IOPS count.volume_size
- The size of the volume, in GiB.volume_type
- The type of the volume.
security_groups
- The associated security groups.source_dest_check
- Whether the network interface performs source/destination checking (Boolean).subnet_id
- The VPC subnet ID.user_data
- The User Data supplied to the Instance.tags
- A mapping of tags assigned to the Instance.tenancy
- The tenancy of the instance:dedicated
,default
,host
.vpc_security_group_ids
- The associated security groups in a non-default VPC.