Juju 2.7: Enhanced k8s experience, improved networking and more

Tytus Kurek

on 11 December 2019

Canonical is proud to announce the availability of Juju 2.7. This new release introduces a range of exciting features and several improvements which enhance Juju across various areas.

To learn more about Juju, visit our page.

Kubernetes extensions

Juju is becoming the simplest way to deploy and manage your container-centric workloads. This release was aimed at bringing more Juju features to k8s charms and more k8s features to Juju.

K8s charms can now define actions, introspect agents, and communicate back to Juju via the addition of juju-run within the pod’s PATH environmental variable. Experienced k8s operators will feel more at home with the ability to set secrets, administer service accounts, and other k8s-native features from their charms directly.

Flexible, adaptive networking in

Network management used to be one of the most frustrating parts when deploying applications to the cloud. Therefore, during this development cycle, Canonical has reworked the internals of how Juju manages networking. This has paid off in the form of added flexibility and opens the door for lots of innovation in this area. 

The most prominent change has been the inclusion of the juju bind command. As a result, users can now define application endpoint bindings to network spaces over time. Previously this capability was only available at the deployment time, so the applications had to be re-deployed in case of any changes on the networking side.

Bulking out bundles

As of Juju 2.7, bundles provide the capability of describing cross-model relations. Cross-model relations allow re-using applications outside of their original model. That allows central services, such as those provided by OpenStack Keystone or Vault, to be accessible from other models.

Cross-model relations also enable applications to bridge clouds. For example, users can deploy a database on bare metal with minimal I/O overhead and a web application, which uses these data, on Kubernetes where high-density is preferred.

Moreover, bundles now support Juju’s trust functionality. Trust allows users to delegate programmatic access to cloud APIs to charms. This allows charms to directly provision storage.

New charm capability: application-level data

Charms are now able to store and retrieve data outside of individual application units. This new functionality is scale-agnostic. Even if the scale of an application is reduced to 0, the data is retained. This effort was driven by a requirement to create a distributed key/value store that is accessible for all units of an application. To set a shared value, charms needed to coordinate between all peers. That’s now reduced to only a single message.

CLI improvements

Juju 2.7 introduces several changes to command-line behaviour to make it easier for both developers and end-users. This includes the commands used to manage clouds and credentials. Users can benefit from numerous improvements, such as “ask-or-tell” approach, region-specific credentials, updating credentials from an input file, adding multiple credentials at once, etc.

For more information about Juju 2.7, please refer to the official release notes.

To learn more about Juju, visit our page

Talk to us today

Interested in running Ubuntu Desktop in your organisation?

Newsletter signup

Select topics you’re
interested in

In submitting this form, I confirm that I have read and agree to Canonical’s Privacy Notice and Privacy Policy.

Related posts

Infrastructure-as-Code mistakes and how to avoid them

Two industry trends point to a gap in DevOps tooling chosen by many. Operations teams need more than an Infrastructure-as-Code approach, but a complete...

Data Ops at petabyte scale

Should you deploy Apache Spark to Kubernetes? Learn how model-driven operations have enabled one data engineering team to evaluate several options and come to...

Canonical sponsors WSLConf at Microsoft HQ

Canonical is announcing today it will be a featured sponsor of WSLConf, the first conference dedicated to the Windows Subsystem for Linux (WSL) platform....