Simplify and Automate Deployments Using GitOps with IBM Multicloud Manager 3.1.2

Share this post:

IBM Multicloud Manager 3.1.2 is introducing GitOps support with Argo CD

GitOps and multicloud may be two of the trendiest cloud-native technologies (or buzzwords) for 2019. But, did you know that you can combine the two concepts? You can now use IBM Multicloud Manager 3.1.2 with Argo CD as a technical preview to achieve declarative and automated deployment of applications to multiple Kubernetes clusters.

What is GitOps?

The term GitOps was coined by Weaveworks at 2017 (although the concept has started to emerge a bit earlier), borrowing and combining elements from continuous delivery, infrastructure as code, and Kubernetes’ natural affinity for declarative infrastructure. At its core, GitOps refers to a set of practices and tooling that puts Git at the center of the DevOps toolchain and makes it the source of truth for what should be deployed on the cluster. With GitOps, developers and operators use familiar Git workflows to define, review, approve, and audit changes to their infrastructure and applications, whereas automated tools take care of synchronizing the live state of their cluster with the desired state described in Git.

What is Argo CD?

Argo CD is a GitOps-style continuous delivery tool for Kubernetes and is part of the larger Argo family of open source projects, primarily supported by Intuit. Despite being only recently launched, Argo CD is arguably one of the best open-source GitOps tools to date due to its extensive feature-set, stability, robust and scalable implementation, effective documentation, and open and active community.

These are some notable features of Argo CD, and many of these are unique among GitOps tools:

  • Multiple Git repositories and cluster destinations
  • Multiple manifests template formats (e.g., Helm, Ksonnet, Kustomize) or plain YAML manifests
  • Git branch tracking or tag/commit pinning
  • Automated or manual synchronization
  • Pruning of deleted resources
  • Rollback/roll-anywhere
  • Declarative management of its own configuration
  • Continuous monitoring of deployed applications
  • Audit trail and history for application events and API calls
  • Health assessment statuses on all components of the application
  • Web console, CLI, and gRPC/REST API
  • SSO Integration (OIDC, LDAP, SAML 2.0, and others)
  • Role-based access control
  • Webhook integration (GitHub, GitLab, BitBucket)
  • PreSync, Sync, PostSync hooks for complex application rollouts (e.g., canary upgrades, blue/green)

Combining Argo CD with IBM Multicloud Manager

IBM Multicloud Manager is a recently launched product from IBM, offering three primary value-adds for organizations running a multicloud strategy:

  • Visibility across clouds
  • Automated application deployment across clouds
  • Compliance policies management and enforcement across clouds

IBM Multicloud Manager’s management components run on top of an IBM Cloud Private Kubernetes cluster (dubbed the hub-cluster) which manages and controls a fleet of managed-clusters running the IBM Multicloud Manager Klusterlet agent. Developers and operators can then interact with the hub-cluster to create template resources that describe applications and compliance policies to be deployed and enforced in the managed-clusters. While the Klusterlet agent works best with IBM Cloud Private clusters, it can also be installed in the following public cloud Kubernetes platforms:

IBM Multicloud Manager 3.1.2 bundles Argo CD as a technology preview feature. Argo CD’s GitOps capabilities complement IBM Multicloud Manager’s automated deployment and enforcement capabilities by allowing users to manage their applications and compliance configuration resources in a centralized Git repository and achieve end-to-end automated deployment and enforcement from their Git repository, down to the last of their managed clusters.

What’s next?

See Argo CD documentation and IBM Multicloud Manager Knowledge Center to learn more about these two products.

You’ll want to check out our follow-up blog post, where we’ll go in-depth with a hands-on example on how to apply GitOps practices and deploy a multicloud application using IBM Multicloud Manager 3.1.2 and Argo CD.

Software Engineer

More How-tos stories
May 1, 2019

What’s Included in the IBM Cloud Developer Tools Version 2.2.0

I’m pleased to announce the latest version of IBM Cloud Developer Tools CLI, which contains some exciting new features.

Continue reading

April 26, 2019

Help Shape the Future of Cloud Foundry

Are you a Cloud Foundry user? If so, here's your opportunity to influence the future of Cloud Foundry with the 2019 user survey.

Continue reading

April 25, 2019

Develop in Public Cloud, Deploy Anywhere with IBM Cloud DevOps

In this article, we explore how to deploy multicloud apps developed with IBM Cloud Continuous Delivery to a network-accessible IBM Cloud Private installation.

Continue reading