I’m happy to announce Cloudify 2.5, our latest and greatest Cloudify release. 2.5 offers important new capabilities and user experience improvements.
In this post I’d like to review three main items:
h2. Storage, as In Block
Cloudify is designed from the ground up with cloud portability in mind. If you’ve ever used it, you are familiar with the concept of Cloud Driver compute templates – a Cloudify administrator can define a catalog of VM templates with cloud-specific images and hardware IDs. The recipes are abstracted from these low level details by using the logical template name and thus remain portable and decoupled from the specific cloud on which they’re installed.
Cloudify 2.5 extends this concept for block storage. Block storage is still not as prevalent as it may seem. While Amazon offers the EBS for quite some time now, in OpenStack it is still a fairly new API. Other private cloud APIs are still lacking such a service. Having said that, block storage is a must-have for most real world applications running on the cloud. If your application is using a relational database, storing information on the file system, and in general has data that needs to outlive the life of individual VMs, it probably needs to use block storage rather than the ephemeral storage associated with each VM.
Cloudify block storage service goes beyond just templates. While you can only provision VMs using the Cloud driver, with block storage you can go the extra mile and create, attach, detach or reattach to a device from a recipe using the storage API. This provides the recipe users all the power they need to implement data persistency in a way that’s portable across clouds, so they can cater to not just deployment, but also to failover and restart scenarios.
h2. Browsing & Installing Recipes from the Web UI
In previous versions, Cloudify recipes had to be installed from your computer and stored in your file system. This made collaboration around recipes somewhat challenging. Furthermore, there was no option to install an application from the management web console.
With version 2.5, Cloudify marks the path for a new improved user experience. Cloudify 2.5 comes with the ability to clone any git repository and use the recipes saved within as a central recipe catalog.
Users can now browse, edit and invoke the recipes from the web GUI.
Furthermore, they can trace them from the web GUI in the same manner they would over the Cloudify shell.
h4(impt). At this point, recipes are not committed back to the repo.
There is also an advanced option to code a custom adapter to bind this GUI module to other version control systems such as SVN (see Cloudify reference for details). This feature is currently considered a technology preview, and we welcome your feedback, requests and comments. In the long term, our plan is to make all the functionality available in CLI accessible using the web UI.
h2. Debugging Recipes
One of the challenges in developing Cloudify services is that they are often stateful. That means that they publish and consume runtime attributes of other service instances and other services. Furthermore, they have runtime context of their own, containing their IP addresses, number of instances and other metadata.
To solve these runtime debug problems, a new remote debugging capability has been added that enables users to debug shell scripts and groovy scripts in place. The idea behind this debugger is to run groovy and shell life cycle event scripts through an augmented launcher that uses an SSH session and allows the end user to connect remotely and debug the script in the actual cloud environment.
Cloudify 2.5 reflects our on-going effort to make the on-boarding, configuration and management of applications on the cloud simpler than ever before. As always, we welcome your “(newwindow)feedback”:http://cloudifysource.zendesk.com and “contribution”:/guide/2.7/contribute/how_to.html. Stay tuned for more exciting stuff!