Getting started with Azure Arc and Kubernetes

Microsoft announced Azure Arc, an application-centric tool for deploying and managing applications running on virtual infrastructures, towards the end of 2019. Since then it’s rolled out two waves of product previews: the first targeted at virtual machines running on-premises and in the cloud; the second, a more recent release, at applications running on Kubernetes clusters.

Adding Arc to Kubernetes

That latest release is perhaps the most interesting, as it brings aspects of Microsoft’s cloud-native Kubernetes tools to Kubernetes running anywhere. Although the management aspects of Azure Arc are comparable to Google’s Anthos, it’s a much less prescriptive approach to managing Kubernetes. Instead of a complete managed Kubernetes distribution, Azure Arc is intended to work with any Cloud Native Computing Foundation-certified recent release, so you can manage applications running on existing installs without significant changes to the way your underlying infrastructure works.

It’s easy enough to deploy Azure Arc on your Kubernetes installs yourself. Microsoft is working with several partners to simplify integration with common commercial Kubernetes releases. These include RedHat’s OpenShift, Canonical’s Kubernetes distribution, and Rancher Labs’ tools and distributions. With out-of-the-box support for popular tools like these, it should be easy to switch to Arc to manage your applications while still working with familiar platforms and management tools.

Automating application deployment at scale across public and private clouds

One important aspect of the Azure Arc Kubernetes integration is its support for CI/CD (continuous integration/continuous development)-driven application development and management, using git-based techniques to drive application deployment directly from your source control system. With Helm 3 adding support for the Open Container Initiative’s open registry specification, you now have the option to write your code, merge it into your main branch, and automatically deploy all your assets to a single registry before automatically deploying the update via Azure Arc.

Building on GitOps processes like these makes Azure Arc a key element in automating your Kubernetes application deployments and management. If you’re building cloud-native code, the stateless nature of container-based distributed applications should ensure that Arc will be capable of deploying updated application infrastructures without affecting users or the underlying physical and virtual infrastructures, up to and including Kubernetes itself.

Getting started with Azure Arc-enabled Kubernetes

Microsoft has now released a public preview of what it’s calling Azure Arc-enabled Kubernetes. It’s not ready for production, but it’s worth exploring how you might use it with your applications. Like the Arc’s virtual machine support, you need an existing Kubernetes infrastructure to use the Arc service, with Arc agents running in each managed cluster.

Copyright © 2020 IDG Communications, Inc.

Source link