Feature #1768
CloudInit and Instance Data, or replacing the current context scripts
Status: | Closed | Start date: | 02/15/2013 | |
---|---|---|---|---|
Priority: | High | Due date: | ||
Assignee: | Javi Fontan | % Done: | 0% | |
Category: | Context | |||
Target version: | Release 4.4 | |||
Resolution: | fixed | Pull request: |
Description
Have you heard of CloudInit? It allow for bootstrapping instance configuration (setting the hostname, configuring various services, etc.). It seems to be becoming the standard for doing instance configuration on other cloud platforms, at least on Amazon EC2, and Openstack has support for it too.
https://help.ubuntu.com/community/CloudInit
http://docs.openstack.org/trunk/openstack-compute/admin/content/user-data.html
http://docs.aws.amazon.com/AWSEC2/2007-03-01/DeveloperGuide/AESDG-chapter-instancedata.html
I think we should look at adding support for CloudInit, and ultimately replacing the OpenNebula context packages / scripts.
Simon
Related issues
History
#1 Updated by Javi Fontan over 8 years ago
We also think that cloud-init support is a must so VMs don't need to be reengineered for different VMMs. There are already two efforts in that direction:
- Ricardo Duarte was working in a metadata server like EC2, compatible with cloud-init. http://lists.opennebula.org/pipermail/users-opennebula.org/2013-January/021773.html
- Vlastimil Holer is working on cloud-init extensions that understand OpenNebula contextualization, hopefully these changes will be added to upstream. https://code.launchpad.net/~vlastimil-holer/cloud-init/opennebula
#2 Updated by Simon Boulet over 8 years ago
Excellent, the metadata server is exactly what I was looking for. Perhaps we should look more at integrating more sophisticated / advanced CONTEXT with CloudInit instead of having our own set of context scripts.
#3 Updated by Ruben S. Montero about 8 years ago
- Priority changed from Normal to High
#4 Updated by Ruben S. Montero about 8 years ago
- Target version set to Release 4.2
#5 Updated by Ricardo Duarte about 8 years ago
If you want to support regular images, it would be valuable to handle image resize, because most of the images (most notably ubuntu cloud images) are small and assume they will be resized by the cloud software. Cloud-init deals with the resize of the filesystems inside the guests. OpenNebula just has to resize the qcow/raw virtual disk.
Maybe by including #1727 this could be easily implemented.
Also, latest Ubuntu cloud-init requires a serial port to be present. And cloud-init is know to put some important output to the console (keys, passwords, etc).
This could also be a good driver to implement #1710 .
#6 Updated by Ruben S. Montero almost 8 years ago
- Target version changed from Release 4.2 to Release 4.4
#7 Updated by Ruben S. Montero almost 8 years ago
- Status changed from New to Closed
- Assignee set to Javi Fontan
- Resolution set to fixed
Code has been merged with cloudinit. It currently supports user_data, ssh keys. There is a bug to be solved in feature versions when configuring the network. We will follow this using the cloud-init project tracker.