It’s been a while now since Microsoft unveiled its first Azure Arc preview. The service has grown considerably since then, adding more and more features, offering ways to help you run an Azure-like service on your own hardware, migrating workloads to and from the cloud.
Microsoft’s legacy of data center workloads makes sense of its commitment to hybrid clouds. While Amazon and Google have experience in running their own workloads, Microsoft’s long history of enterprise IT gives it a unique position to support and migrate existing workloads from on-premises to public cloud, with a deep understanding of what those workloads are and what they’re used for. That extends to understanding why an organisation might want to keep its applications and data on-premises, while still taking advantage of cloud services and architectures.
Microsoft’s slow and steady hybrid cloud approach
Microsoft has sensibly taken a step-by-step approach to releasing Azure Arc, rolling out new features and services one at a time. It’s a logical way to deliver this type of service, as it needs to fit in with your own cloud migrations, even if it is to an on-premises cloud. The cloud management model is very different from how we manage our own data centers, and bringing it in-house needs thought and planning.
Arc’s application-centric approach to managing virtual infrastructures and services allows you to run it alongside existing tools, moving servers to Arc-based management as they become available. You can start with one or two machines and a simple virtual infrastructure, slowly moving to a platform-as-a-service approach as you build new cloud native applications.
With so many services now available in Azure Arc, and more being added, there’s a new question: “How do I understand if it works for me?”
Planning and testing with Azure Arc Jumpstart
One useful tool for getting to grips with Azure Arc is the Jumpstart documentation and tools. These are built around a GitHub repository, with more than 70 deployment scenarios focused on key elements of the Arc platform. Currently these support Arc-enabled servers, SQL Server, data services, Kubernetes, app services, and working with Arc and Azure Lighthouse as a combined set of operations management tools.
The Jumpstart scenarios are a useful way to speed up getting started, giving you the tools you need to bring servers into Arc management. They include guides for enabling both Windows and Linux servers, adding them to Azure Arc resource groups and enabling the appropriate management environments. The tools allow you to work with your own VMs on existing servers or VMs running on managed platforms like Azure Stack HCI.
It’s important to remember that Azure Arc is a multi-platform, multi-cloud tool, so along with instructions for Windows and for Linux, there’s documentation for using Hashicorp’s Terraform infrastructure management tools with Azure Arc on Google Cloud Platform and Amazon Web Services. On-premises environments using VMware’s vSphere can use Azure Arc via Terraform. The Jumpstart guides don’t cover every scenario, but they provide a prescriptive way to get started, and by working with Terraform, they offer support for a popular open source DevOps platform, speeding up transitions and building on existing skills.
Getting started with the ArcBox test environment
Having guidelines and documentation is only part of the Jumpstart philosophy. It also offers a sandbox environment where you can try things out in a controlled environment. JumpStart’s ArcBox is a way of quickly standing up a set of servers in Azure that are managed by Arc, giving you the option of exploring its various features in one place either as a proof-of-concept or as a training tool.
Having a combination of the two-in-one tool is extremely valuable, as you can ask questions about how you might run an Arc-enabled platform and then attempt to answer them. The ArcBox environment can go further, as you can add new nodes and new services as you need them. It takes advantage of Azure capabilities like nested virtualization to simulate both host and managed-client VMs.
SEE: AWS Lambda, a serverless computing framework: A cheat sheet (free PDF) (TechRepublic)
At the heart of the deployment is a Windows Server 2019 Data Center VM which hosts Windows, Ubuntu, and SQL Server VMs. These are automatically configured to be managed via Azure Arc, leaving the host to be managed directly. It’s important to understand the separation between host infrastructure and application infrastructure, and ArcBox keeps its various host services outside its management envelope, leaving them for you to add to other management tools.
The Jumpstart tooling only supports a subset of the available Azure Arc services, with a basic Kubernetes cluster available as a host for managed containers. There’s an interesting part to this element of ArcBox, as it’s not a full-blown cluster, instead it’s a single node running on Rancher’s K3s minimal edge Kubernetes implementation. That shows the flexibility of the Arc Kubernetes tooling; if it can run with something like this, it can run with virtually any Kubernetes as long as it supports the Kubernetes management APIs. Again, you’ll need to manage ArcBox’s K3S cluster and its host Ubuntu VM outside of Azure Arc. Another three-node K3s cluster is used to host Azure Arc-managed Data Services, with both Azure SQL Managed Instance and an Azure PostgreSQL Hyperscale running on the cluster.
The entire ArcBox environment deploys from a single ARM template, which automates the entire process of setting up the sandbox. The aim is to make getting started as simple as possible, getting everything in place with a final step to automatically deploy the Arc-enabled services when you log into the host VM for the first time. Microsoft provides instructions for deploying ArcBox from the Azure Portal and from the Azure CLI. The whole process should take less than an hour, making it a quick and easy way of getting ready to experiment with Azure Arc.
You will be charged for the Azure resources ArcBox uses, but a basic evaluation should be possible using Visual Studio credits or even a free trial account. Microsoft continues to develop ArcBox, and as new features get added, it’s worth giving them a spin to see if they can be used in your own Azure Arc environments.