Skip to content

Kubernetes / OpenShift to AKS Migration Center

The definitive resource for migrating from self-managed Kubernetes and Red Hat OpenShift to Azure Kubernetes Service (AKS), Azure Red Hat OpenShift (ARO), and AKS Hybrid.


Who this is for

This migration center serves federal CIOs, CTOs, platform engineering leads, DevOps engineers, and application architects who are evaluating or executing a migration from self-managed Kubernetes clusters (kubeadm, Rancher, k3s, Tanzu) or Red Hat OpenShift (OCP 4.x) to Azure-managed container platforms. Whether you are responding to an Azure-first mandate, eliminating control-plane operational burden, consolidating container infrastructure onto a single hyperscaler, addressing compliance gaps (FedRAMP, STIG, FIPS), or modernizing data workloads with CSA-in-a-Box on AKS, these resources provide the evidence, patterns, and step-by-step guidance to execute confidently.


Quick-start decision matrix

Your situation Start here
Executive evaluating AKS vs self-managed K8s Why AKS (Executive Brief)
Need cost justification for migration Total Cost of Ownership Analysis
Need a feature-by-feature comparison Complete Feature Mapping
Ready to plan a migration Migration Playbook
Federal/government-specific requirements Federal Migration Guide
Migrating cluster configuration Cluster Migration
Migrating application workloads Workload Migration
Migrating persistent storage Storage Migration
Migrating networking and service mesh Networking Migration
Migrating security and RBAC Security Migration
Migrating CI/CD pipelines CI/CD Migration
Step-by-step Velero migration Tutorial: Velero Migration
Step-by-step application migration Tutorial: App Migration

Target platform decision matrix

Before starting, choose your target platform. The decision depends on your current platform, OpenShift dependency depth, hybrid requirements, and compliance posture.

Factor AKS ARO AKS Hybrid (Arc) AKS on Azure Stack HCI
Best for Standard K8s shops Red Hat / OpenShift shops Hybrid on-prem + cloud Edge / disconnected
Control plane cost Free (free tier) or $0.10/hr (standard) Included in ARO pricing Per-node pricing Azure Stack HCI licensing
Kubernetes conformance CNCF conformant OCP 4.x (K8s superset) CNCF conformant CNCF conformant
OpenShift compatibility No (standard K8s only) Full OCP 4.x No No
Azure integration depth Deep (Entra, Key Vault, Monitor, ACR, Policy) Moderate (Entra, Monitor) Deep (Arc-enabled) Moderate (Arc-enabled)
GPU support Full (NC, ND, NV series) Limited (GPU worker nodes) Depends on on-prem hardware Depends on HCI hardware
FIPS 140-2 node pools Yes (native) Yes (OCP FIPS mode) Yes Yes
FedRAMP High Inherited (Azure Gov) Inherited (Azure Gov) Customer + Azure Gov Customer + Azure Gov
IL4/IL5 Supported (Azure Gov) Supported (Azure Gov) Depends on deployment Depends on deployment
Managed upgrades Auto-upgrade channels OCP upgrade channels Manual + Arc Manual + Arc
Typical migration effort 12--20 weeks 8--14 weeks (from OCP) 16--24 weeks 12--20 weeks
Monthly cost (50 nodes) ~\(15K--\)30K ~\(25K--\)45K ~\(20K--\)35K + on-prem Azure Stack HCI + licensing

Decision flowchart

flowchart TD
    A[Current Platform?] --> B{OpenShift?}
    B -->|Yes| C{Heavy OCP dependency?}
    B -->|No| D{Need on-prem?}
    C -->|Yes - Routes, SCC, OLM| E[ARO]
    C -->|No - Standard K8s workloads| F{Need on-prem?}
    D -->|Yes| G{Connected?}
    D -->|No| H[AKS]
    F -->|Yes| G
    F -->|No| H
    G -->|Yes - Hybrid| I[AKS Hybrid / Arc-enabled]
    G -->|No - Disconnected/Edge| J[AKS on Azure Stack HCI]

    H --> K[Deploy on Azure Gov for federal]
    E --> K
    I --> K
    J --> K

    style H fill:#0078d4,color:#fff
    style E fill:#ee0000,color:#fff
    style I fill:#5c2d91,color:#fff
    style J fill:#008272,color:#fff

Strategic resources

These documents provide the business case, cost analysis, and strategic framing for decision-makers.

Document Audience Description
Why AKS CIO / CTO / Board Executive white paper covering managed control plane, Azure integration, CNCF conformance, Copilot in AKS, cost advantages, and honest assessment of self-managed K8s strengths
Total Cost of Ownership Analysis CFO / CIO / Procurement Detailed pricing comparison of self-managed K8s, OpenShift, and AKS across three federal deployment sizes with 5-year TCO projections, FTE savings, and infrastructure cost reduction
Complete Feature Mapping CTO / Platform Architecture 50+ Kubernetes and OpenShift features mapped to AKS equivalents with migration complexity ratings, gap analysis, and CSA-in-a-Box integration points

Migration guides

Domain-specific deep dives covering every aspect of a container platform migration.

Guide Source capability AKS destination
Cluster Migration Cluster config, node pools, networking, autoscaling AKS cluster configuration, VM sizes, availability zones, autoscaler
Workload Migration Deployments, StatefulSets, CRDs, operators, Helm charts Standard K8s manifests, Helm, Kustomize, AKS extensions
Storage Migration Ceph, NFS, GlusterFS, local storage, Velero Azure Disk, Azure Files, Azure Blob CSI, Azure NetApp Files
Networking Migration CNI, Ingress, Service Mesh, Network Policies, DNS Azure CNI, NGINX/AGIC, Istio, Calico/Cilium, Azure DNS
Security Migration RBAC, SCCs, secrets, pod security, image scanning Entra Workload Identity, PSS, Key Vault, Defender for Containers
CI/CD Migration Jenkins, GitLab CI, Tekton, ArgoCD, image builds GitHub Actions, Azure DevOps, Flux, ArgoCD, ACR Tasks

Tutorials

Step-by-step walkthroughs for common migration scenarios.

Tutorial Description Duration
Velero Cross-Cluster Migration Install Velero on source and target clusters, backup namespaces, restore workloads on AKS, validate, update DNS 4--6 hours
Stateful Application Migration Migrate a PostgreSQL + API tier from on-prem K8s to AKS with persistent storage, Ingress, TLS, and monitoring 6--8 hours

Technical references

Document Description
Complete Feature Mapping Every K8s/OpenShift feature mapped to its AKS equivalent with migration complexity and CSA-in-a-Box evidence
Benchmarks Pod scheduling latency, network throughput by CNI, storage IOPS by CSI driver, autoscaling response, API latency
Best Practices Cluster design, node pool strategy, namespace organization, monitoring, GitOps, CSA-in-a-Box integration

Government and federal

Document Description
Federal Migration Guide AKS in Azure Government, FedRAMP High, IL4/IL5, STIG-hardened images, FIPS crypto modules, Azure Policy for containers, image provenance with Notary v2, and agency-specific patterns

How CSA-in-a-Box fits

CSA-in-a-Box extends AKS from a generic container platform into a governed data and AI platform. Container workloads on AKS integrate directly with the CSA-in-a-Box architecture:

  • Containerized data pipelines: Spark on Kubernetes (via Spark Operator) runs on AKS, reading from and writing to ADLS Gen2 / OneLake. Jobs are governed by Unity Catalog and lineage-tracked in Purview.
  • Model serving: AI models trained in Azure ML or Databricks deploy to AKS GPU node pools (NC/ND series) using Triton Inference Server, vLLM, or TorchServe. Model endpoints register in AI Foundry and appear in the CSA-in-a-Box data marketplace.
  • Event-driven data processing: KEDA on AKS scales data consumers based on Event Hubs partition lag. Consumers write to the medallion architecture (bronze/silver/gold) on ADLS Gen2.
  • dbt runners: Containerized dbt jobs execute as Kubernetes CronJobs, running transformations against Databricks SQL Warehouses or Fabric SQL endpoints with contract validation.
  • Data API layer: REST and GraphQL APIs serving data products from the CSA-in-a-Box data marketplace run on AKS with Entra Workload Identity authentication, AGIC traffic management, and Container Insights observability.
  • Compliance integration: Azure Policy assignments on AKS clusters enforce the same compliance baselines (FedRAMP, CMMC, HIPAA) that govern the rest of the CSA-in-a-Box platform.
flowchart LR
    subgraph AKS["AKS Cluster"]
        SPARK[Spark Operator]
        MODEL[Model Serving<br>Triton / vLLM]
        KEDA_C[KEDA Consumers]
        DBT[dbt Runners]
        API[Data APIs]
    end

    subgraph CSA["CSA-in-a-Box Platform"]
        ADLS[ADLS Gen2 / OneLake]
        UC[Unity Catalog]
        PURV[Purview]
        DBX[Databricks SQL]
        EH[Event Hubs]
        AIF[AI Foundry]
        MKT[Data Marketplace]
    end

    SPARK --> ADLS
    SPARK --> UC
    MODEL --> AIF
    KEDA_C --> EH
    KEDA_C --> ADLS
    DBT --> DBX
    API --> MKT
    PURV --> AKS

    style AKS fill:#0078d4,color:#fff
    style CSA fill:#5c2d91,color:#fff

Migration timeline overview

gantt
    title Typical Kubernetes/OpenShift to AKS Migration (24 weeks)
    dateFormat  YYYY-MM-DD
    section Discovery
    Inventory clusters & workloads         :a1, 2026-05-04, 2w
    section Landing Zone
    Deploy AKS + ACR + networking          :a2, after a1, 3w
    section Pilot
    Migrate pilot stateless app            :a3, after a2, 3w
    section Stateless Migration
    Migrate remaining stateless workloads  :a4, after a3, 6w
    section Stateful Migration
    Migrate StatefulSets + data            :a5, after a3, 6w
    section Data Platform
    CSA-in-a-Box integration on AKS        :a6, after a4, 6w
    section Decommission
    Decommission on-prem clusters          :a7, after a5, 4w

Last updated: 2026-04-30 Maintainers: CSA-in-a-Box core team Related: Migration Playbook | VMware Migration Center | AWS Migration