Weaveworks today launched open source and enterprise editions of a suite of offerings designed to make it simpler to apply GitOps best practices to the development and deployment of applications across fleets of Kubernetes clusters.
Steve George, Weaveworks COO, says Weave GitOps aggregates the open source software development tools that Weaveworks has been advancing in a way that makes them easier to deploy and consume.
At the core of the Weaveworks GitOps portfolio is Flux, an open source tool that automatically ensures that the state of a cluster matches the configuration stored in a Git repository. It uses an operator in the cluster, dubbed Flagger, to trigger application deployments to Kubernetes without requiring IT teams to acquire and deploy a dedicated continuous delivery platform.
Flux monitors all image repositories, detects new images, triggers deployments and updates configurations accordingly. On top of that core platform, Weaveworks adds Team Workspaces, a workflow application for tracking changes to Git-based deployments that can be used by multiple DevOps teams. Each workspace can also span multiple Kubernetes clusters to simplify the rollout of applications across a fleet of Kubernetes clusters.
Weave GitOps Core is an open source offering that installs with two commands and provides a user interface (UI) through which IT teams can explore a Kubernetes environment. The Weave GitOps Enterprise tier extends these capabilities into multi-cluster application delivery and continuous operations in a way that can more easily span multiple clouds. It provides a single pane of glass through which any Kubernetes cluster, whether running on-premises or in the cloud, can be observed and managed, including the ability to detect drift, evaluate cluster health and if necessary, roll back deployments, notes George.
GitOps has been gaining traction as a prescriptive approach to implementing a DevOps workflow. Rather than pushing code from a repository, the goal is to enable a target platform to automatically pull code at a designated time. Achieving that goal is easier in a Kubernetes environment because each target platform supports a common set of Kubernetes application programming interfaces (APIs). The Cloud Native Computing Foundation (CNCF), which oversees the development of Kubernetes, has formed a GitOps Working Group to advance best practices.
It’s not clear the degree to which GitOps might become the dominant form of a DevOps best practice. However, with the rise of microservices-based applications that need to be continuously updated, Weaveworks is making a case for an approach to DevOps that employs more automation to manage all the dependencies that exist between those microservices.
Regardless of DevOps approach, it’s clear that continuous delivery challenges—that have long bedeviled DevOps teams—are becoming more automated thanks, in part, to Kubernetes APIs that provide the means to consistently deploy applications. Historically, each IT platform on which an organization deployed applications had its own unique set of APIs that thwarted automation attempts. The challenge now is determining how best to manage fleets of Kubernetes clusters within the context of a larger GitOps workflow.