Safe Haskell | None |
---|---|
Language | Haskell2010 |
Retrieve an EC2 instance's local metadata.
- isEC2 :: Manager -> IO Bool
- data Dynamic
- dynamic :: MonadIO m => Manager -> Dynamic -> ExceptT HttpException m ByteString
- data Metadata
- = AMIId
- | AMILaunchIndex
- | AMIManifestPath
- | AncestorAMIIds
- | BlockDevice !Mapping
- | Hostname
- | IAM !Info
- | InstanceAction
- | InstanceId
- | InstanceType
- | KernelId
- | LocalHostname
- | LocalIPV4
- | MAC
- | Network !Text !Interface
- | AvailabilityZone
- | ProductCodes
- | PublicHostname
- | PublicIPV4
- | OpenSSHKey
- | RAMDiskId
- | ReservationId
- | SecurityGroups
- data Mapping
- data Info
- = Info
- | SecurityCredentials (Maybe Text)
- data Interface
- metadata :: MonadIO m => Manager -> Metadata -> ExceptT HttpException m ByteString
- userdata :: MonadIO m => Manager -> ExceptT HttpException m (Maybe ByteString)
Requests
Running on EC2
isEC2 :: Manager -> IO Bool Source
Test whether the host is running on EC2 by requesting the instance-data.
Dynamic
FWS | Value showing whether the customer has enabled detailed one-minute monitoring in CloudWatch. Valid values: enabled | disabled. |
Document | JSON containing instance attributes, such as instance-id, private IP address, etc. |
PKCS7 | Used to verify the document's authenticity and content against the signature. |
Signature |
dynamic :: MonadIO m => Manager -> Dynamic -> ExceptT HttpException m ByteString Source
Metadata
AMIId | The AMI ID used to launch the instance. |
AMILaunchIndex | If you started more than one instance at the same time, this value indicates the order in which the instance was launched. The value of the first instance launched is 0. |
AMIManifestPath | The path to the AMI's manifest file in Amazon S3. If you used an Amazon EBS-backed AMI to launch the instance, the returned result is unknown. |
AncestorAMIIds | The AMI IDs of any instances that were rebundled to create this AMI. This value will only exist if the AMI manifest file contained an ancestor-amis key. |
BlockDevice !Mapping | See: |
Hostname | The private hostname of the instance. In cases where multiple network interfaces are present, this refers to the eth0 device (the device for which the device number is 0). |
IAM !Info | See: |
InstanceAction | Notifies the instance that it should reboot in preparation for bundling. Valid values: none | shutdown | bundle-pending. |
InstanceId | The ID of this instance. |
InstanceType | The type of instance. See: |
KernelId | The ID of the kernel launched with this instance, if applicable. |
LocalHostname | The private DNS hostname of the instance. In cases where multiple network interfaces are present, this refers to the eth0 device (the device for which the device number is 0). |
LocalIPV4 | 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 the device number is 0). |
MAC | The instance's media access control (MAC) address. In cases where multiple network interfaces are present, this refers to the eth0 device (the device for which the device number is 0). |
Network !Text !Interface | See: |
AvailabilityZone | The Availability Zone in which the instance launched. |
ProductCodes | Product codes associated with the instance, if any. |
PublicHostname | The instance's public DNS. If the instance is in a VPC, this category is only returned if the enableDnsHostnames attribute is set to true. For more information, see Using DNS with Your VPC. |
PublicIPV4 | The public IP address. If an Elastic IP address is associated with the instance, the value returned is the Elastic IP address. |
OpenSSHKey | Public key. Only available if supplied at instance launch time. |
RAMDiskId | The ID of the RAM disk specified at launch time, if applicable. |
ReservationId | ID of the reservation. |
SecurityGroups | The names of the security groups applied to the instance. |
AMI | The virtual device that contains the root/boot file system. |
EBS !Int | The virtual devices associated with Amazon EBS volumes, if present. This value is only available in metadata if it is present at launch time. The N indicates the index of the Amazon EBS volume (such as ebs1 or ebs2). |
Ephemeral !Int | The virtual devices associated with ephemeral devices, if present. The N indicates the index of the ephemeral volume. |
Root | The virtual devices or partitions associated with the root devices, or partitions on the virtual device, where the root (/ or C:) file system is associated with the given instance. |
Swap | The virtual devices associated with swap. Not always present. |
Info | Returns information about the last time the instance profile was updated, including the instance's LastUpdated date, InstanceProfileArn, and InstanceProfileId. |
SecurityCredentials (Maybe Text) | Where role-name is the name of the IAM role associated with the instance. Returns the temporary security credentials. See: |
IDeviceNumber | The device number associated with that interface. Each interface must have a unique device number. The device number serves as a hint to device naming in the instance; for example, device-number is 2 for the eth2 device. |
IIPV4Associations !Text | The private IPv4 addresses that are associated with each public-ip address and assigned to that interface. |
ILocalHostname | The interface's local hostname. |
ILocalIPV4s | The private IP addresses associated with the interface. |
IMAC | The instance's MAC address. |
IOwnerId | The ID of the owner of the network interface. In multiple-interface environments, an interface can be attached by a third party, such as Elastic Load Balancing. Traffic on an interface is always billed to the interface owner. |
IPublicHostname | The interface's public DNS. If the instance is in a VPC, this category is only returned if the enableDnsHostnames attribute is set to true. For more information, see Using DNS with Your VPC. |
IPublicIPV4s | The Elastic IP addresses associated with the interface. There may be multiple IP addresses on an instance. |
ISecurityGroups | Security groups to which the network interface belongs. Returned only for instances launched into a VPC. |
ISecurityGroupIds | IDs of the security groups to which the network interface belongs. Returned only for instances launched into a VPC. For more information on security groups in the EC2-VPC platform, see Security Groups for Your VPC. |
ISubnetId | The ID of the subnet in which the interface resides. Returned only for instances launched into a VPC. |
ISubnetIPV4_CIDRBlock | The CIDR block of the subnet in which the interface resides. Returned only for instances launched into a VPC. |
IVPCId | The ID of the VPC in which the interface resides. Returned only for instances launched into a VPC. |
IVPCIPV4_CIDRBlock | The CIDR block of the VPC in which the interface resides. Returned only for instances launched into a VPC. |
metadata :: MonadIO m => Manager -> Metadata -> ExceptT HttpException m ByteString Source
User data
userdata :: MonadIO m => Manager -> ExceptT HttpException m (Maybe ByteString) Source