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

An error occurred while submitting your form. Please try again or file a bug report. Close

  1. Blog
  2. Article

James Nunns
on 12 November 2018

Using Juju to manage evolving complex software


With developers increasingly moving towards microservices – and with the growing prevalence of the cloud as the default platform – software has become more complex than ever.

While installing all of the interconnected applications that make up a modern software stack is becoming easier, the real sting in the tail comes on day two and beyond – when it is time to maintain, upgrade, and scale the deployment.

Deployed software is constantly evolving through updates, configuration changes, changes in scale, and more. Keeping a complex deployment up-to-date and functioning perfectly in spite of these changes represents an immense challenge. And for operators maintaining these deployments, the cost in both time and cognitive load can be tremendous.

The shift to cloud has changed the way people think about operating software. Instead of reasoning about discrete machines, it’s now a matter of carving up compute capability. Juju embraces this mindset by enabling operators to focus on the software model, rather than machines and instance details.

This model-driven approach – made possible through the use of distributed agents – dramatically reduces the complexity of managing complexity. Juju handles upgrades and changes in configuration, scale, and components out of time, removing the complexity of maintaining large estates that can often be time consuming, challenging and costly to manage.

In the past, a stand-alone application was typically enough to solve a particular problem or provide a service to end users. But today’s solutions increasingly demand large bundles of interconnected microservices distributed across many machines, and potentially operating systems, to fulfil a single function.

Whitepaper highlights:

  • How constantly evolving software impacts automation, testing, and onboarding, and how Juju solves these issues
  • How Juju lets operators focus on the software model, rather than machines and instances details
  • How upgrades and changes in configuration, scale and components are handled by Juju

Read the whitepaper

 

Related posts


Javier de la Puente
13 January 2026

Deploy your Spring Boot application to production

Cloud and server Article

In this article we walk through the steps required to deploy a Spring Boot application to production using Juju and Kubernetes. The goal is to showcase the integration of the application with essential services like PostgreSQL for database management and Traefik for ingress control. ...


David Beamonte
26 June 2025

Cut data center energy costs with bare metal automation

Cloud and server MAAS

Data centers don’t have to be power-hungry monsters. With smart automation using tools like MAAS, you can reduce energy waste and operational costs, and make your infrastructure greener, without sacrificing performance or flexibility. ...


Isobel Kate Maxwell
24 April 2025

The hitchhiker’s guide to infrastructure modernization

Cloud and server Article

One of my favourite authors, Douglas Adams, once said that “we are stuck with technology when what we really want is just stuff that works.” Whilst Adams is right about a lot of things, he got this one wrong – at least when it comes to infrastructure. As our Infra Masters 2025 event demonstrated, infrastructure ...