Datasources¶
Datasources are sources of configuration data for cloud-init
that typically
come from the user (i.e., user data) or come from the cloud that created the
configuration drive (i.e., metadata). Typical user data includes files,
YAML, and shell scripts whereas typical metadata includes server name,
instance id, display name, and other cloud specific details.
Any metadata processed by cloud-init
’s datasources is persisted as
/run/cloud-init/instance-data.json
. Cloud-init
provides tooling to
quickly introspect some of that data. See Instance metadata for more
information.
How to configure which datasource to use¶
By default cloud-init
should automatically determine which datasource it is
running on. Therefore, in most cases, users of cloud-init
should not
have to configure cloud-init
to specify which datasource cloud-init is
running on; cloud-init
should “figure it out”.
There are exceptions, however, when the datasource does not
identify itself to cloud-init
. For these
exceptions, one can override datasource detection either by configuring a
single datasource in the datasource_list,
or by using kernel command line arguments.
Datasources:¶
The following is a list of documentation for each supported datasource:
- Akamai
- Alibaba Cloud (AliYun)
- AltCloud
- Amazon EC2
- Azure
- CloudCIX
- CloudSigma
- CloudStack
- Config drive
- DigitalOcean
- E24Cloud
- Exoscale
- Fallback/no datasource
- Google Compute Engine
- LXD
- MAAS
- NoCloud
- None
- NWCS
- OpenNebula
- OpenStack
- Oracle
- OVF
- Rbx Cloud
- Scaleway
- SmartOS Datasource
- UpCloud
- VMware
- Vultr
- WSL
- ZStack