Cloud-init is an open-source project compatible with most Linux distributions. Cloud-init is designed to handle early initialization of a cloud instance and uses user data to describe the cloud instance's configuration settings. When Cloud-init detects user data, it applies the settings to the cloud instance.
Cloud-init is third-party software and is not supported by Vultr. See this article for more information about cloud-init issues. Vultr instances created before 2017 had this software installed by default. New deployments of our standard OS images do not include cloud-init. If you decide to install Cloud-init on your instance, please see the official cloud-init documentation.
We recommend using Vultr startup scripts instead of cloud-init. You can add startup scripts to an instance in the Vultr Control panel or with the Vultr API. Read more about startup scripts in our quickstart guide. You can create user data for startup scripts with the Vultr Metadata API when deploying a new instance. You can also update running instances. User data values are Base64 encoded. For more information, see our article "Manage Instance User Data with the Vultr Metadata API".
The Vultr API offers several endpoints to manage startup scripts.