Thursday , 25 May 2017


Cloudify 2.3 – Security, Multi-tenancy, Deployment Isolation, Support, and Troubleshooting

– Uri Cohen,VP of Product Management at Gigaspaces, says:

When we introduced Cloudify 2.2 in early December, we announced our Chef integrationREST API, and a number of important usability improvements that allow for more robust applications on top of Cloudify. With the new version of Cloudify 2.3, we have a number of new features, some which are quite significant.

These features include:


Cloud security and multi-tenancy -Cloudify 2.3 introduces a comprehensive security model for securing the access to the Cloudify controller, including pluggable authentication, authorization and transport security. Users are assigned roles and privileges, and can belong to one or more groups. Groups are completely isolated, and members of one group can never manage or view the applications and services of another group. Within a group, users can be assigned different privileges, for example only view the deployed applications and services, or deploy new applications, or change the configuration of the controller.


Cloud deployment isolation– Also related to security and multi-tenancy. Upon deploying applications and services, they’re automatically assigned the group to which the user deploying the app belongs. This user can choose the deployment isolation level from other applications and services, i.e. if and how the service or application being deployed will share resources with already deployed applications and services. Users can opt for complete isolation (meaning their deployment will not share any VM with already deployed services), group-shared (meaning their deployment can share VMs with already deployed services from the same group, that have the same isolation level) or globally-shared (meaning their deployment can share VMs with any deployed service that can be globally shared as well). This gives users the option to provide better SLAs for more important services, or share VMs between services to better utilize the underlying cloud infrastructure.


Dynamic configuration of cloud driver templates– Until 2.3, cloud driver templates were static from the moment the controller has started. With 2.3, you can introduce, edit and delete templates at runtime using Cloudify’s CLI or REST interfaces. So if your IaaS provider introduces new images or hardware types, they can be introduced to the Cloudify controller and used by your applications and services without taking down or reconfiguring the controller.


Cloud, application and service overrides– The new overrides mechanism allows you to override almost any aspect of your cloud driver template, application or service recipe at deployment time. This opens the door to many interesting use cases, such as hosting a catalog of applications and service recipes, and then tweaking them at deployment time per the user’s requirements (e.g. starting your Cassandra cluster with 5 and not 3 instances, or setting the auto-scaling threshold for your Tomcat cluster at 80% CPU utilization rather than 70%).


Improved OpenStack support / JClouds 1.5.3: Version 2.3 leverages JClouds 1.5.3, which, in turn, has much better support for OpenStack. Up until 2.3, Cloudify’s OpenStack support was based on a native cloud driver which used the OpenStack APIs directly. In 2.3, we were finally able to switch to JClouds, and consequently, also better support the full range of OpenStack configuration options and the Folsom release.

Troubleshooting Capabilities: Cloudify 2.3 takes another step in making it easier for users to develop recipes. Whendeveloping new recipes, Cloudify now allows you to ‘freeze’ the situation in case of recipe execution failure, and let you log in to the VMs to troubleshoot the failure.


New Cloud Recipes: We’ve also added a few more recipes to our Github repo, most notably Storm,Zookeeper,CouchBase, The Play FrameworkVertx and Hadoop (using IBM’s BigInsights Hadoop distro), with more to come.


One More Thing…

In addition to 2.3, GigaSpaces has also been busy working on a cool new project which is basically a Cloudify widget. Think of it as an embeddable, one click player for Cloudify recipes. The idea is to let users try out applications and frameworks using Cloudify and its recipes. You create a recipe (or use one of the existing ones) and then, with a few simple steps done online, get an embeddable HTML code snippet that you can embed into any web page. Any visitor of this page can then test drive the application or framework that the recipe deploys, with a single click. So if you’re developing an open source framework, or have a product you want to easily showcase to your users, this Cloudify widget is the tool for you. Here’s a preview of what this Cloudify demo on demand actually looks like.

Host in Ireland