Deployment Tools for Cloud Foundry: BOSH vs. Juju Charms
Today's DevOps platforms are rapidly moving towards better security, resilience, and scalability. Such orchestration tools as BOSH and Juju help to meet these challenges and accelerate provisioning, monitoring, and deployment processes.
BOSH is not the only tool to simplify Cloud Foundry deployment; other options also exist. This video explains why you should give Juju Charms a try.
BOSH is all good for deploying Cloud Foundry, but quite difficult to learn. From this video, you will find out why Juju Charms are simpler and how Juju/BOSH compare with Chef, Puppet, Ansible, and Salt.
Not only BOSH, Juju is also worth trying!
Cloud Foundry is a real deal for deploying your applications: self-healing, scalable, portable, IaaS-agnostic, etc. Still, to make sure that you smoothly work your way up from development to production, you need a bit of help. Such tools as BOSH and Juju Charms are there to give you a hand.
Supervised by Pivotal, the BOSH tool chain allows for easy software versioning, packaging, and deploying in a reproducible manner. It is designed to address the four principles of modern Release Engineering:
While other tools—Chef, Puppet, etc.—usually can handle only one problem at a time, BOSH is aimed at totally saving the day.
The table below demonstrates the results of the five deployment tools compared (Puppet, Chef, Salt, Ansible, Juju, and BOSH) across 12 parameters dealing with deployment life-cycle management, orchestration, and configuration. So, BOSH and Juju just nailed it!
Issues with BOSH
It seems that expectations quite meet the reality. Once you feel like all your dreams have come true, there is always a bitter pill to take. In this case, it’s all about developer adoption.
It turns out that BOSH is a tough cookie. It takes time and effort to learn it, information is hard to find, there is no software-defined networking, and the ecosystem is–to some degree–limited.
What are Juju Charms?
As an alternative to BOSH, Juju Charms get into the game. So, who is behind this tool and what can it offer?
Juju is an open-source orchestration tool that allows for deploying, configuring, managing, maintaining, and scaling cloud services quickly and efficiently on public clouds, physical servers, OpenStack, and containers. The project is managed by Canonical; Juju Charms for Cloud Foundry are supervised by Canonical and Pivotal. Altoros is also actively contributing to the development of Juju Charms.
With Juju, one can push services to all of the main IaaS solutions (AWS, OpenStack, Azure, etc.) by typing a command in the console or clicking one button in the GUI. The charms can set relations between services and make necessary adjustments automatically.
When we compared five deployment tools, it turned out that Juju comes short of rolling updates only in comparison to BOSH and outplays in terms of developer adoption. Besides, Juju Charms have got issues of their own: Juju local environment is not supported, the number of service brokers is limited, etc.
Freedom of choice
Surely, both projects are rapidly evolving, new features are added, and bugs are fixed. To decide between the tools, you need to set your priorities clear. It’s quite interesting that Juju succeeds where BOSH lags—and vice versa. So, it’s up to the features you need in the first place.
To see how it works, read our series of blogs on the topic:
- How to Deploy, Customize, and Upgrade Juju Charms
- How to Implement Integration Tests for Juju Charms
- Deploying Cloud Foundry in a Single Click with Juju Charms
Juju Charms are still a "dark horse" for many Cloud Foundry devs/operators. However, this orchestration tool offers a decent alternative for those who already work with Ubuntu. In comparison to BOSH, Juju Charms are far easier to learn. Its GUI features drag-and-drop functionality that greatly simplifies creation of complex stacks. So, why not give it a try?
Want details? Watch the video!
Table of contents
This presentation provides a technical overview of both tools. The solutions are compared and scored across different criteria that illustrate to what extent the tools are fit for adoption, configuring, monitoring, rolling updates, etc. You will also learn about issues, limitations, and future of these deployment tools.