Cloud-init is the industry standard multi-distribution method for cross-platform cloud instance initialization. It is supported across all major public cloud providers, provisioning systems for private cloud infrastructure, and bare-metal installations.
Cloud instances are initialized from a disk image and instance data:
- Cloud metadata
- User data (optional)
- Vendor data (optional)
Cloud-init will identify the cloud it is running on during boot, read any provided metadata from the cloud and initialize the system accordingly. This may involve setting up network and storage devices to configuring SSH access key and many other aspects of a system. Later on cloud-init will also parse and process any optional user or vendor data that was passed to the instance.
The majority of clouds and Linux / Unix OSes are supported by and ship with cloud-init. If your distribution or cloud is not supported, please get in contact with that distribution and send them our way!
The documentation is the first place to look for help. If a thorough search of the documentation does not resolve your issue, consider the following:
- Ask a question in the
#cloud-initchannel on Matrix - Look for announcements or engage in cloud-init discussions on GitHub Discussions
- Find a bug? Read how to report it
See the contributing guide.