FREEDOM251

Freedom251 › Infrastructure as Code Tools

Azure Service Operator

Free plan Self-hosted

Visit Azure Service Operator Alternatives

Azure Service Operator's own site

What Azure Service Operator is

Azure Service Operator lets users deploy and maintain Azure resources from a Kubernetes cluster using Kubernetes tooling. Users describe resources with Custom Resource Definitions and Go API structures, then the controller compares each desired state with Azure’s actual state and creates, updates, or deletes resources to match. It can provision services such as Redis Cache or PostgreSQL and configure Kubernetes applications to use them. ASO v2 supports more than 150 Azure resources, with additional coverage in each release, and models ownership through Kubernetes garbage collection. Deleting an ASO resource also deletes its Azure counterpart unless the documented skip-reconcile annotation is applied first. Installation uses a Helm chart or GitHub release. Getting started requires Kubernetes 1.32 or later and an Azure subscription. Authentication options include Azure Workload Identity, service principals, user-assigned identities, and deprecated aad-pod-identity. Argo CD or Flux can review custom-resource changes before application. The project describes v2 as stable.

Who it suits

It suits users who want to manage Azure resources with Kubernetes primitives such as kubectl apply. Teams need a Kubernetes 1.32-or-later cluster and an Azure subscription.

What it does well

  • Supports more than 150 Azure resources
  • Reconciles desired and actual Azure state
  • Installs through Helm or GitHub release
  • Integrates with Argo CD and Flux
  • Models lifecycle with Kubernetes garbage collection

What to know first

  • Requires Kubernetes 1.32 or later
  • Requires an Azure subscription
  • Deleting resources can delete Azure counterparts
  • RoleAssignment CRD can enable privilege escalation

Limits

ASO requires a Kubernetes 1.32-or-later cluster and an Azure subscription. Deleting an ASO resource also deletes its corresponding Azure resource unless the skip-reconcile annotation is applied; careless use of the RoleAssignment CRD can enable privilege escalation.

Getting started

  1. Open the Azure Service Operator website
  2. Prepare a Kubernetes cluster running version 1.32 or later
  3. Obtain an Azure subscription
  4. Install ASO v2 with its Helm chart or a GitHub release
  5. Configure an Azure identity and required permissions
  6. Create Kubernetes custom resources for Azure services
  7. Review changes with Argo CD or Flux before applying them

Verdict

Azure Service Operator brings Azure resource lifecycle management into Kubernetes workflows and supports broad resource coverage. Its deletion behavior and identity permissions require careful controls, especially around the RoleAssignment CRD.

Questions

Is Azure Service Operator free?

Yes. It is listed as free and open source, with a free plan and no free trial.

Which cloud does ASO support?

It supports Azure resources.

How many Azure resources does ASO v2 support?

The project says ASO v2 supports more than 150 Azure resources, with more added in each release.

How can ASO be installed?

ASO v2 can be installed with a Helm chart or from a GitHub release.

Which authentication methods are available?

It supports Azure Workload Identity, service principals using a client secret or certificate, user-assigned identity credentials, and deprecated aad-pod-identity authentication.

What happens when an ASO resource is deleted?

Deleting it from the cluster deletes the corresponding Azure resource unless the documented skip-reconcile annotation is applied first.

Facts from Azure Service Operator's own pages

Application configuration
It can manage Azure resources alongside a Kubernetes application and configure the application to use them, such as a Redis cache or PostgreSQL server. · azure.github.io, 11 Oct 2026
Authentication
ASO authenticates with Azure using an identity or service principal, and the project recommends Azure Workload Identity for production use. · azure.github.io, 11 Oct 2026
Azure lifecycle
ASO models Azure resource lifecycle using Kubernetes garbage collection through ownership references. · azure.github.io, 11 Oct 2026
Deletion behavior
Deleting an ASO resource from the cluster also deletes its corresponding Azure resource unless the documented skip-reconcile annotation is applied first. · azure.github.io, 11 Oct 2026
GitOps integrations
The security guide recommends tools such as Argo CD or Flux to review changes to ASO custom resources before applying them. · azure.github.io, 11 Oct 2026
Installation
The project identifies Helm as its preferred installation and management method and also documents installation from release YAML. · azure.github.io, 11 Oct 2026
Integrations
The project recommends using ArgoCD or Flux to review changes to ASO custom resources before they are merged and applied. · azure.github.io, 10 Oct 2026
Intended users
ASO is aimed at users who want to manage Azure resources with Kubernetes tooling and primitives such as kubectl apply. · github.com, 10 Oct 2026
Kubernetes interface
ASO provides Kubernetes custom resource definitions and Go API structures for deploying and managing Azure resources. · azure.github.io, 11 Oct 2026
Prerequisites
Getting started requires a Kubernetes cluster version 1.32 or later and an Azure subscription. · azure.github.io, 11 Oct 2026
Project status
The project describes itself as stable and says it follows the Kubernetes definition of stable. · azure.github.io, 11 Oct 2026
Purpose
Azure Service Operator lets users deploy and maintain Azure resources from within a Kubernetes cluster using Kubernetes tooling. · azure.github.io, 11 Oct 2026
Reconciliation
ASO uses asynchronous reconciliation and does not block while Azure resources are created. · azure.github.io, 11 Oct 2026
Resource coverage
ASO v2 supports more than 150 Azure resources, with more added in each release. · azure.github.io, 10 Oct 2026
Resource lifecycle
ASO models Azure resource lifecycle through Kubernetes garbage collection and ownership references. · azure.github.io, 10 Oct 2026
Security controls
The security guide recommends controlling installed CRDs, Azure identities and permissions, and Kubernetes identities and permissions. · azure.github.io, 11 Oct 2026
Security guidance
The project recommends Azure Workload Identity, namespace-scoped credentials, least-privilege Azure roles, and installing only needed CRDs. · azure.github.io, 10 Oct 2026
Security limit
The security guide warns that the RoleAssignment CRD can enable privilege escalation if used carelessly. · azure.github.io, 10 Oct 2026
Security warning
The guide warns that the RoleAssignment CRD can enable privilege escalation if it is not used carefully. · azure.github.io, 11 Oct 2026
Support
The project directs users to report issues in its GitHub repository or ask questions in the Kubernetes Slack #azure-service-operator channel. · azure.github.io, 11 Oct 2026
Supported resources
The project says ASO supports more than 150 Azure resources, with more added each release. · azure.github.io, 11 Oct 2026

Where Azure Service Operator stands on Freedom251

Look at these too