I am writing a non-web application (written in java) which will allocate cloud resources. I want to make it compatible with as many providers as possible. Is it wise to use OCCI interface? Will it be too complicated?
2 Answers
OCCI as an open standard is indeed a good option with regards to interoperability between different resource providers.
There are quite a few OCCI implementations under development. A list can be found here:
Pollux may be a good starting point for OCCI clients written in Java.
As OCCI was published last year and is still in an early adoption face, support by resource providers is just beginning. OCCI 1.1 support in OpenNebula will be followed by support for OpenStack within the next months.
It's reasonably easy to adopt an OCCI server like the OpenNebula OCCI Implementation (written in Ruby) for other resource providers as well and work is already under way to support a wider range of resource providers.
-
I might also mention that the next Cloud Plugfest organised by SNIA will take place end of february 2012 in Düsseldorf (Germany), Tyson’s Corner (Virginia) and virtual for remote participants. It's a place for programmers to get together and discuss their implementations of OCCI and CDMI. Commented Feb 8, 2012 at 20:59
The reality is that there is no one standard to connect to cloud providers, whether that be at the PaaS, SaaS or IaaS levels. I'm assuming you're utilising IaaS aspects here (your 'allocating resources' wording)?
OCCI is certainly one standard you can implement to cut down the number of different providers you want to support. However, the reality is that you'll also need to write custom code (hopefully RESTFul if you're lucky) or grab custom open source components to connect to some of the cloud providers.
-
My starting point is OpenNebula. Which supports OCCI. It also has xmlrpc interface. So OCCI is the way to go?– bonziCommented Feb 8, 2012 at 14:37