Skip to main content

Your submission was sent successfully! Close

Thank you for signing up for our newsletter!
In these regular emails you will find the latest updates from Canonical and upcoming events where you can meet our team.Close

Thank you for contacting us. A member of our team will be in touch shortly. Close

  1. Blog
  2. Article

Tim McNamara
on 10 January 2020


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 model-driven operations mentality. Learn how Canonical has addressed these concerns by developing Juju, an open source DevOps tool, to allow it create multiple world-leading products.

Two DevOps trends in 2020

Let’s consider the two trends and their impacts on DevOps:

Microservices push complexity from applications into operations

Switching to microservices involves breaking up large, complex applications into many smaller service units. In a ‘divide and conquer’ style, each unit becomes easier to deploy, scale-out, update and remove in isolation from the rest. Yet, microservices architectures risk pushing complexity onto operations, rather than removing it.

Adopting Infrastructure-as-Code tools removes some of this burden, but not all of it. Suddenly you need to consider network latency, message formats and connectivity. Each new service needs to connect to every other service. Without adequate tooling, upgrades and migrations can become time-consuming and brittle.

Container-based deployment can incur a performance penalty

A container-based deployment platform, such as Kubernetes, is a joy for many applications. But containers do not suit all use cases. Databases and other middleware are often bound by I/O constraints. These applications receive a performance penalty when they run as containers.

Most Infrastructure-as-Code tools tend to work well for hosting applications on a single platform.  But reality is more complex. They rarely allow you to deploy applications across platforms. And life is even more complicated when containers and virtual machines are combined.

Systems engineers and operations teams want to provide maximum performance, but they also want to provide agility to product engineering teams writing applications. Eventually, complexity will catch up to the business. A management decision to consolidate on tooling is likely to mean that databases are moved into Kubernetes clusters.  

Self-driving software is here

Canonical develops Juju to address these concerns. Its approach differs from other DevOps tools in the ways:

  • Reduced complexity by allowing devops teams to work at a higher level of abstraction
  • Increased stability by enabling applications to dynamically respond to their deployment
  • Increased flexibility by decoupling configuration management from an application’s specific hosting environment

Juju is simple, secure devops tooling built to manage today’s complex applications wherever you run your software. Compute, storage, networking, service discovery and health monitoring come for free and work with Kubernetes, the cloud and the laptop. 

Juju allows your software infrastructure to maintain always-optimal configuration. As your deployment changes, every applications’ configuration operations are dynamically adjusted by charms. Charms are software packages that are run alongside your applications. They encode business rules for adapting to environmental changes.

Using a model-driven mentality means raising the level of abstraction. Users of Juju quickly get used to a flexible, declarative syntax that is substrate-agnostic. Juju interacts with the infrastructure provider, but operations code remains the same across. Focusing on creating a software model of your product’s infrastructure increases productivity and reduces complexity.

Automating infrastructure at a low level of abstraction, DevOps has bought the industry from breathing space. But that breathing space is running out.

Examples of Infrastructure-as-Code excellence

Using a single tool that speaks multiple backends at the same time has several benefits: productivity increases and complexity remains constant. Here are two examples of Canonical’s products and services that rely on Juju to provide their competitive advantage: 

  • Open Source MANO (OSM) is an open-source implementation of the ETSI NFV MANO stack supported by global telecommunications service providers like Telefonica, BT and Telenor. By providing a native framework for implementing service orchestration capabilities, Juju charms have been selected by the OSM community as an engine behind Open Source MANO project.
  • Canonical’s managed services for OpenStack and Kubernetes provide the fastest and cost-effective path to a private cloud and container orchestration platform. The cost reductions are enabled through enhanced tooling, namely Juju.

Learn more

The best place to learn about Juju is by following its getting started guide.

Related posts


Michael C. Jaeger
9 May 2023

Kubecon EU 2023: Operator Day hosted by Canonical – recordings available

Charms Article

The Operator Day at KubeCon EU 2023, hosted by Canonical, took place on Monday, 17 April  2023. We thank everyone for attending the event. Our thanks go out especially to those who engaged with each other during the sessions, asked questions and contributed to our  interactive event. If you missed this 6th edition of Operator ...


robgibbon
31 August 2022

Kubernetes operators – the top 5 things to watch for

Charms Article

Software operators are steadily revolutionising how we deploy and run complex distributed systems. They offer the promise of low-intervention, self-driving software – ideally leading to service reliability gains and better uptime. For an introduction to Kubernetes operators, check out our introductory webinar or download our guide to Kube ...


Serdar Vural
20 September 2024

Canonical and OpenAirInterface to collaborate on open source telecom network infrastructure

5G Article

Canonical is excited to announce that we are collaborating with OpenAirInterface (OAI) to drive the development and promotion of open source software for open radio access networks (Open RAN). Canonical will bring automation in software lifecycle management to OAI’s RAN stack, alongside additional infrastructure capabilities. This will be ...