Class EC2MetadataUtils
Note: this is an internal API subject to change. Users of the SDK should not depend on this.
You can use the data to build more generic AMIs that can be modified by
configuration files supplied at launch time. For example, if you run web
servers for various small businesses, they can all use the same AMI and
retrieve their content from the Amazon S3 bucket you specify at launch. To
add a new customer at any time, simply create a bucket for the customer, add
their content, and launch your AMI.
If SdkSystemSetting.AWS_EC2_METADATA_DISABLED
is set to true, EC2 metadata usage
will be disabled and SdkClientException
will be thrown for any metadata retrieval attempt.
If SdkSystemSetting.AWS_EC2_METADATA_V1_DISABLED
or ProfileProperty.EC2_METADATA_V1_DISABLED
is set to true, data will only be loaded from EC2 metadata service if a token is successfully retrieved -
fallback to load data without a token will be disabled.
More information about Amazon EC2 Metadata
- See Also:
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
static class
All of the metada associated with a network interface on the instance. -
Method Summary
Modifier and TypeMethodDescriptionstatic void
static String
Fetch data using the given pathstatic String
getAmiId()
Get the AMI ID used to launch the instance.static String
Get the index of this instance in the reservation.static String
Get the manifest path of the AMI with which the instance was launched.Get the list of AMI IDs of any instances that were rebundled to created this AMI.static String
Get the Availability Zone in which the instance launched.Get the virtual devices associated with the ami, root, ebs, and swap.static String
static String
static String
Returns the current region of this running EC2 instance; or null if it is unable to do so.static String
Notifies the instance that it should reboot in preparation for bundling.static String
Get the ID of this instance.Retrieve some of the data from http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html as a typed object.static String
Get the signature of the instance.static String
Get the type of the instance.static String
Get the local hostname of the instance.static String
Get the MAC address of the instance.Get the list of network interfaces on the instance.static String
Get the private IP address of the instance.Get the list of product codes associated with the instance, if any.static String
Get the public key.static String
Get the ID of the RAM disk specified at launch time, if applicable.static String
Get the ID of the reservation.Get the list of names of the security groups applied to the instance.static String
getToken()
static String
Get the metadata sent to the instancestatic void
-
Method Details
-
getAmiId
Get the AMI ID used to launch the instance. -
getAmiLaunchIndex
Get the index of this instance in the reservation. -
getAmiManifestPath
Get the manifest path of the AMI with which the instance was launched. -
getAncestorAmiIds
Get the list of AMI IDs of any instances that were rebundled to created this AMI. Will only exist if the AMI manifest file contained an ancestor-amis key. -
getInstanceAction
Notifies the instance that it should reboot in preparation for bundling. Valid values: none | shutdown | bundle-pending. -
getInstanceId
Get the ID of this instance. -
getInstanceType
Get the type of the instance. -
getLocalHostName
Get the local hostname of the instance. In cases where multiple network interfaces are present, this refers to the eth0 device (the device for which device-number is 0). -
getMacAddress
Get the MAC address of the instance. In cases where multiple network interfaces are present, this refers to the eth0 device (the device for which device-number is 0). -
getPrivateIpAddress
Get the private IP address of the instance. In cases where multiple network interfaces are present, this refers to the eth0 device (the device for which device-number is 0). -
getAvailabilityZone
Get the Availability Zone in which the instance launched. -
getProductCodes
Get the list of product codes associated with the instance, if any. -
getPublicKey
Get the public key. Only available if supplied at instance launch time. -
getRamdiskId
Get the ID of the RAM disk specified at launch time, if applicable. -
getReservationId
Get the ID of the reservation. -
getSecurityGroups
Get the list of names of the security groups applied to the instance. -
getInstanceSignature
Get the signature of the instance. -
getEC2InstanceRegion
Returns the current region of this running EC2 instance; or null if it is unable to do so. The method avoids interpreting other parts of the instance info JSON document to minimize potential failure.The instance info is only guaranteed to be a JSON document per http://docs .aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html
-
getBlockDeviceMapping
Get the virtual devices associated with the ami, root, ebs, and swap. -
getNetworkInterfaces
Get the list of network interfaces on the instance. -
getUserData
Get the metadata sent to the instance -
getInstanceInfo
Retrieve some of the data from http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html as a typed object. This entire class will be removed as part of https://github.com/aws/aws-sdk-java-v2/issues/61, so don't rely on this sticking around. This should not be removed until https://github.com/aws/aws-sdk-java-v2/issues/61 is implemented. -
getData
-
getData
-
getItems
-
getItems
-
clearCache
public static void clearCache() -
resetIsFallbackDisableResolved
public static void resetIsFallbackDisableResolved() -
getToken
-
fetchData
Fetch data using the given path- Parameters:
path
- the pathforce
- whether to force to override the value in the cacheattempts
- the number of attempts that should be executed.- Returns:
- the value retrieved from the path
-