Im new to OpenNebula, just found it during investigation what platform to use for small private cloud.
And now Im trying to understand what devops tools have integration with OpenNebula.
After briefly investigation I realized, that ( from ansible, chef, saltstack, puppet, terraform, jenkins and some others)
Only puppet has some modules ( and most of them for installing OpenNebula itself)
Important note: Im not looking how to install OpenNebula itself with this tools, but to use them to automate infrastructure provisioning inside OpenNebula.
The one way I see now, it’s to write this integration myself: provider to terraform, modules for chef/ansible and etc…
Did I missed something and all this was done?
Hello, I think that nothing is done :(…recentrly I play with public ECONE API, which simulates EC2 API, but there are only some function, I have to program resp. fake some by myself to make it work with docker-machine ec2 driver, but I think, that can be used for provision VMs from ansible and also EBS (Datablock images). But it is too simple.
I like to write own opensource project, which replaces econe, it is basicly middleware or proxy between opennebula XML-RPC and EC2 API Spec.
Sounds good, but Im thinking in a way of writing terraform provider for opennebula. This is what I need most of all. At the same time, for me opennebula is one of the possible choices (between cloudstack, openstack and etc…). And I want to concentrate on building final solution, not to developing integrations. Thats why I try to get as much information as possible before decide what to do.
There is a terraform provider (runtastic uses it, ask them on github?
There’s also Fog, a standard library for dozens of cloud APIs that has OpenNebula support.
There is also OCCI support for those looking for really open standards instead of tools.
That runtastic one is the one I know of. There’s one more I’ve heard mentioned but I haven’t been able to find it.
It’d be good if both the go bindings and a terraform provider were made official, given some development time and made more full featured. Is anyone from OpenNebula Systems able to say whether or not this is likely in the near future?
About the go bindings, they are in fact being moved to OpenNebula’s main source tree, and they’ll be part of the official distribution from v5.6.
About terraform there are not specific plans for it in our short term roadmap. However if there is enough interest from the community we can add it; probably using runtastic’s work as starting point.
It would be great if someone interested can open a feature request at github.com/OpenNebula/one. We’d love to here what is currently missing so we can plan the development accordingly; and move any technical discussion there .
I am really interested about the Terraform Provider. I am trying to include official Goca (added under OpenNebula repo for the 5.6 release) in a customer provider I am doing based on https://github.com/blackberry/terraform-provider-opennebula (which is based on https://github.com/runtastic/terraform-provider-opennebula).
But before doing my own provider, I think it is better to include the provider from Blackberry (it is recent thant the runtastic one) into OpenNebula repo and then migrate the provider under the Goca.
I am volunteer to integrate official Go binding into this provider.
As Go bindings are now fully part of OpenNebula, it is not really easy to use only them as an import into an external Go tool without importing the entire OpenNebula repo.
An idea could be to have a git module for the Goca, then it is quite easy to use it as a submodule of a project, but I think it is easier to include the Terraform Provider into OpenNebula if you are aligned with this idea of course.
As I didn’t contribute on these project yet, I think am not the right person to open the Feature request. However if you think I can and it will something like that: Adding Terraform provider into OpenNebula repo
Thank you for your help,
Sorry @ilia, I am just talking about the Terraform provider and not other Devops tools. If you think it is not appropriate, i can start another topic.