Features
- Supports HTTP and ConfigDriveV2 metadata sources
- Provides out the box: user creation, password injection, static networking configuration, hostname, SSH public keys and userdata scripts (Powershell, Cmd or Bash)
- It’s highly modular and can be easily extended to provide support for a lot of features and metadata sources.
- Works on any hypervisor (Hyper-V, KVM, Xen, etc)
- It’s platform independent, meaning that we plan to add other OSs, e.g.: FreeBSD
- Written in Python
- Open source, Apache 2 licensed
Supported Services
OpenStack Amazon EC2 Azure Oracle Cloud VMware vSphere OpenNebula Ubuntu MAAS
Supported Windows Versions
Windows Server 2008 Windows Server 2008 R2 Windows Server 2012 R2 Windows Server 2016 Windows Server 2019 Windows Server 2022 Windows 7, 8, 8.1, 10
Overview
Cloud-Init is the OpenStack automated initialization of a new instance which is a task that needs to be split between the cloud infrastructure and the guest OS. OpenStack™ provides the required metadata via HTTP or via ConfigDrive and Cloud-Init takes care of configuring the instance on Linux.
However, what would happen if you needed to do the same thing, but on Windows® guests?
Cloudbase-Init™ is the Windows equivalent of the Cloud-Init project used on most OpenStack Linux images. When deployed as a service on Windows, Cloudbase-Init takes care of all the guest initialization actions: disk volume expansion, user creation, password generation, custom PowerShell, CMD and Bash scripts execution, Heat templates, PowerShell remoting setup and much more.
Even though there were limited options for guest initialization until recently, now you can rest assured. Cloudbase-Init is the Windows equivalent of Cloud-Init: an open source project that brings together all the features handled on Linux, to Windows!
Download
Register and receive information on Cloudbase Solutions products, services and the latest updates:
Stable
Continuous Builds (Beta)
Installation
The installer takes care of everything, including installing a dedicated Python environment, generating a configuration file and creating a Windows service that runs at boot time. Configuration settings like the username, group membership and the network adapter to be configured can be specified during setup or later by editing the configuration file (cloudbase-init.conf).
Unattended setup
The setup can be done in silent mode as well, which means that it can be easily integrated in a Puppet, Chef or Windows GPO deployment strategy.
Here’s the basic syntax, with an additional optional log file to verify that everything worked fine:
1 |
msiexec /i CloudbaseInitSetup.msi /qn /l*v log.txt |
You can also pass parameters, for example to specify the serial port to be used for logging:
1 |
msiexec /i CloudbaseInitSetup.msi /qn /l*v log.txt LOGGINGSERIALPORTNAME="COM1" |
Links
Source: https://github.com/stackforge/cloudbase-init
Documentation: http://cloudbase-init.readthedocs.org/en/latest/
Got a question? Visit http://ask.cloudbase.it/questions/