summaryrefslogtreecommitdiff
path: root/doc/rtd/topics/datasources/ec2.rst
diff options
context:
space:
mode:
Diffstat (limited to 'doc/rtd/topics/datasources/ec2.rst')
-rw-r--r--doc/rtd/topics/datasources/ec2.rst141
1 files changed, 0 insertions, 141 deletions
diff --git a/doc/rtd/topics/datasources/ec2.rst b/doc/rtd/topics/datasources/ec2.rst
deleted file mode 100644
index d30e1bb6..00000000
--- a/doc/rtd/topics/datasources/ec2.rst
+++ /dev/null
@@ -1,141 +0,0 @@
-.. _datasource_ec2:
-
-Amazon EC2
-==========
-
-The EC2 datasource is the oldest and most widely used datasource that
-cloud-init supports. This datasource interacts with a *magic* ip that is
-provided to the instance by the cloud provider. Typically this ip is
-``169.254.169.254`` of which at this ip a http server is provided to the
-instance so that the instance can make calls to get instance userdata and
-instance metadata.
-
-Metadata is accessible via the following URL:
-
-::
-
- GET http://169.254.169.254/2009-04-04/meta-data/
- ami-id
- ami-launch-index
- ami-manifest-path
- block-device-mapping/
- hostname
- instance-id
- instance-type
- local-hostname
- local-ipv4
- placement/
- public-hostname
- public-ipv4
- public-keys/
- reservation-id
- security-groups
-
-Userdata is accessible via the following URL:
-
-::
-
- GET http://169.254.169.254/2009-04-04/user-data
- 1234,fred,reboot,true | 4512,jimbo, | 173,,,
-
-Note that there are multiple EC2 Metadata versions of this data provided
-to instances. cloud-init will attempt to use the most recent API version it
-supports in order to get latest API features and instance-data. If a given
-API version is not exposed to the instance, those API features will be
-unavailable to the instance.
-
-
-+----------------+----------------------------------------------------------+
-+ EC2 version | supported instance-data/feature |
-+================+==========================================================+
-+ **2021-03-23** | Required for Instance tag support. This feature must be |
-| | enabled individually on each instance. See the |
-| | `EC2 tags user guide`_. |
-+----------------+----------------------------------------------------------+
-| **2016-09-02** | Required for secondary IP address support. |
-+----------------+----------------------------------------------------------+
-| **2009-04-04** | Minimum supports EC2 API version for meta-data and |
-| | user-data. |
-+----------------+----------------------------------------------------------+
-
-
-To see which versions are supported from your cloud provider use the following
-URL:
-
-::
-
- GET http://169.254.169.254/
- 1.0
- 2007-01-19
- 2007-03-01
- 2007-08-29
- 2007-10-10
- 2007-12-15
- 2008-02-01
- 2008-09-01
- 2009-04-04
- ...
- latest
-
-
-
-Configuration
--------------
-The following configuration can be set for the datasource in system
-configuration (in `/etc/cloud/cloud.cfg` or `/etc/cloud/cloud.cfg.d/`).
-
-The settings that may be configured are:
-
- * **metadata_urls**: This list of urls will be searched for an EC2
- metadata service. The first entry that successfully returns a 200 response
- for <url>/<version>/meta-data/instance-id will be selected.
- (default: ['http://169.254.169.254', 'http://[fd00:ec2::254]',
- 'http://instance-data:8773']).
- * **max_wait**: the maximum amount of clock time in seconds that should be
- spent searching metadata_urls. A value less than zero will result in only
- one request being made, to the first in the list. (default: 120)
- * **timeout**: the timeout value provided to urlopen for each individual http
- request. This is used both when selecting a metadata_url and when crawling
- the metadata service. (default: 50)
- * **apply_full_imds_network_config**: Boolean (default: True) to allow
- cloud-init to configure any secondary NICs and secondary IPs described by
- the metadata service. All network interfaces are configured with DHCP (v4)
- to obtain an primary IPv4 address and route. Interfaces which have a
- non-empty 'ipv6s' list will also enable DHCPv6 to obtain a primary IPv6
- address and route. The DHCP response (v4 and v6) return an IP that matches
- the first element of local-ipv4s and ipv6s lists respectively. All
- additional values (secondary addresses) in the static ip lists will be
- added to interface.
-
-An example configuration with the default values is provided below:
-
-.. sourcecode:: yaml
-
- datasource:
- Ec2:
- metadata_urls: ["http://169.254.169.254:80", "http://instance-data:8773"]
- max_wait: 120
- timeout: 50
- apply_full_imds_network_config: true
-
-Notes
------
- * There are 2 types of EC2 instances network-wise: VPC ones (Virtual Private
- Cloud) and Classic ones (also known as non-VPC). One major difference
- between them is that Classic instances have their MAC address changed on
- stop/restart operations, so cloud-init will recreate the network config
- file for EC2 Classic instances every boot. On VPC instances this file is
- generated only in the first boot of the instance.
- The check for the instance type is performed by is_classic_instance()
- method.
-
- * For EC2 instances with multiple network interfaces (NICs) attached, dhcp4
- will be enabled to obtain the primary private IPv4 address of those NICs.
- Wherever dhcp4 or dhcp6 is enabled for a NIC, a dhcp route-metric will be
- added with the value of ``<device-number + 1> * 100`` to ensure dhcp
- routes on the primary NIC are preferred to any secondary NICs.
- For example: the primary NIC will have a DHCP route-metric of 100,
- the next NIC will be 200.
-
-.. _EC2 tags user guide: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#work-with-tags-in-IMDS
-.. vi: textwidth=79