Skip to content

Control plane

The purpose of a control plane is to offer a centralized way of managing a platform. It enables platform engineers to focus on delivering value to their customers by centralizing control of resources. A control plane provides command and control of all services running on the platform. As such, a control plane is critical for operating a platform, providing an interface to create, update, and destroy resources.

A control plane consists of a set of processes, systems, and tools used to automate and orchestrate the deployment, scaling, and maintenance of platform components. A control plane enables the following example scenarios:

  • Provision, configure, maintain and manage underlying infrastructure of a platform
  • Orchestrate and scale services and applications deployed to a platform
  • Monitor, observe, and react to the health of a platform
  • Automation of any of the above

Characteristics

Command interface

An interface or mechanism that allows for commands to be issued to the control plane. These commands will perform some action on the underlying platform. The commands could be direct, like for example an API, or indirect, like for example GitOps. The commands result in defining the desired state of the underlying platform.

State

The control plane requires state, so that it can reconcile the outcomes of commands with the state of the underlying platform that it is managing. The state defines the desired state of the underlying platform.

Reconcile

The control plane must be able to reconcile the differences between the desired state and the actual state of the underlying platform it is managing. The control plane aims to bring the state of the underlying platform towards the desired state.

Examples

Kubernetes-based control plane

Cloud-based control plane

  • The Azure Resource Manager (ARM) provider is Azure's control plane for the provisioning of resources. ARM supports a broad set of command interfaces - portal, PowerShell cmdlets, Azure CLI, REST APIs, and SDKs.
  • Non-Azure resources can be managed through Azure by utilizing Azure Arc

Learn More