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
Cloud-init provides tooling to
quickly introspect some of that data. See Instance metadata for more
How to configure which datasource to use#
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
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 commandline arguments.
The following is a list of documentation for each supported datasource: