{"id":84017,"date":"2020-12-15T09:00:23","date_gmt":"2020-12-15T17:00:23","guid":{"rendered":""},"modified":"2025-06-23T11:31:36","modified_gmt":"2025-06-23T18:31:36","slug":"introducing-cluster-api-provider-azure-capz-kubernetes-cluster-management","status":"publish","type":"post","link":"https:\/\/opensource.microsoft.com\/blog\/2020\/12\/15\/introducing-cluster-api-provider-azure-capz-kubernetes-cluster-management\/","title":{"rendered":"Introducing the Cluster API Provider for Azure (CAPZ) for Kubernetes cluster management"},"content":{"rendered":"\n<p>Managing Kubernetes clusters is hard.<\/p>\n\n\n\n<p>Managing Kubernetes clusters at scale across a variety of infrastructures is\u2014well\u2014even harder.<\/p>\n\n\n\n<p>The Kubernetes community project <a href=\"https:\/\/cluster-api.sigs.k8s.io\/\" target=\"_blank\" rel=\"noopener noreferrer\">Cluster API<\/a> (CAPI) enables users to manage fleets of clusters across multiple infrastructure providers. The <a href=\"https:\/\/capz.sigs.k8s.io\/\" target=\"_blank\" rel=\"noopener noreferrer\">Cluster API Provider for Azure<\/a> (CAPZ) is the solution for users who need to manage Kubernetes clusters on Azure IaaS. In the past, we have recommended AKS Engine for this common scenario.&nbsp; While we will continue to provide regular, stable releases for AKS Engine, the Azure team is excited to share that CAPZ is now ready for users and will be our primary tool for enabling customers to operate self-managed Kubernetes clusters on Azure IaaS.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"do-you-manage-your-own-kubernetes-clusters\">Do you manage your own Kubernetes clusters?<\/h2>\n\n\n\n<p>Kubernetes is the dominant cross-platform tool for managing containerized applications. <a href=\"https:\/\/azure.microsoft.com\/en-us\/services\/kubernetes-service\/\" target=\"_blank\" rel=\"noopener noreferrer\">Azure Kubernetes Service<\/a> (AKS) is the managed service that makes it easy for users to run Kubernetes on Azure. AKS is mature, scalable, secure, and backed by Azure&#8217;s excellent support. But some users need to run clusters themselves and can\u2019t take advantage of AKS. Some need functionality that is not available in AKS yet or might never be because they require user access to the control plane.<\/p>\n\n\n\n<p>Some are running a service themselves on Azure that leverages Kubernetes and needs complete control, and others might need to run their own clusters for compliance or regulatory reasons (for example, financial services companies who can&#8217;t delegate management to another organization). Still, other users are developing new integrations with Kubernetes or Kubernetes features themselves, and need to be able to tweak, control, and test anything and everything. We call these clusters that users run themselves \u201cself-managed\u201d clusters.<\/p>\n\n\n\n<p>If you need to run self-managed clusters on Azure, whatever your reason, you\u2019ve come to the right place.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"cluster-api-powers-self-managed-clusters-on-azure\">Cluster API powers self-managed clusters on Azure<\/h2>\n\n\n\n<p>The Kubernetes community has long recognized the need for tooling to provide standardized lifecycle management of clusters independent of the infrastructure on which they run. In response SIG Cluster Lifecycle created the Cluster API sub-project:<\/p>\n\n\n\n<p>Cluster API is a Kubernetes sub-project focused on providing declarative APIs and tooling to simplify provisioning, upgrading, and operating multiple Kubernetes clusters. \u2013 <a href=\"https:\/\/cluster-api.sigs.k8s.io\/\" target=\"_blank\" rel=\"noopener noreferrer\">The Cluster API Book<\/a><\/p>\n\n\n\n<p>Cluster API provides our team with a natural place to innovate in open source for users and expand community participation in solving Azure user problems at the same time. Thus, it made sense for us to spend the past 18 months investing in the <a href=\"https:\/\/github.com\/kubernetes-sigs\/cluster-api-provider-azure\" target=\"_blank\" rel=\"noopener noreferrer\">Azure Provider for Cluster API<\/a> (CAPZ) to make it a fully functional project ready to realize the vision of Cluster API for every user.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2020\/12\/Cluster-API-Diagram-1024x781.webp\" alt=\"Cluster API Diagram\" \/><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p>The most recent CAPZ release, <a href=\"https:\/\/github.com\/kubernetes-sigs\/cluster-api-provider-azure\/releases\/tag\/v0.4.10\" target=\"_blank\" rel=\"noopener noreferrer\">v0.4.10<\/a>, includes new capabilities such as GPU support, private clusters, and Azure API call tracing. Some of you may be reluctant to adopt a tool whose API is labeled alpha (v1alpha3 to be exact). You should take comfort in the knowledge that CAPI enables forward and backward compatibility of API versions so that when the project moves to v1alpha4, and then v1beta1, you\u2019ll be able to upgrade, and then use the API to output your objects with the new API version.<\/p>\n\n\n\n<p>Our team is thrilled with the CAPZ work because more of you will be able to effectively manage your cluster\u2019s entire lifecycle on Azure. It has also been fulfilling to drive innovations in the Cluster API community, like <a href=\"https:\/\/github.com\/kubernetes-sigs\/cluster-api\/blob\/master\/docs\/proposals\/20190919-machinepool-api.md\" target=\"_blank\" rel=\"noopener noreferrer\">CAPI MachinePool<\/a>, which enables users to take advantage of each infrastructure provider\u2019s native VM scaling group capability. CAPI brings Kubernetes native cluster management and CAPZ enables this naturally on Azure infrastructure. Together in the community, we can deliver better capabilities for users more quickly.<\/p>\n\n\n\n<p>Users are already taking advantage of CAPI and CAPZ on Azure. The Azure provider community consists of amazing people from Azure, VMware, Red Hat, Weaveworks, and more. Community members are realizing the power of the Cluster API by using CAPZ for use cases that span from building new platforms and products, like <a href=\"https:\/\/docs.vmware.com\/en\/VMware-Tanzu-Kubernetes-Grid\/1.2\/vmware-tanzu-kubernetes-grid-12\/GUID-mgmt-clusters-azure.html\">Tanzu Kubernetes Grid,<\/a>&nbsp;to testing new hardware on multiple infrastructures.<\/p>\n\n\n\n<p>Users are also discovering new use cases for CAPI. For example, a <a href=\"https:\/\/medium.com\/cooking-with-azure\/create-aks-clusters-with-a-helm-chart-its-possible-with-clusterapi-74f991ee5713\" target=\"_blank\" rel=\"noopener noreferrer\">recent example<\/a> uses CAPI and Helm to operate managed clusters. And our team is using CAPZ to validate new versions of, and features in, Kubernetes on Azure. Soon our upstream tests will move from using AKS Engine to CAPZ.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"but-what-about-aks-engine\">But what about AKS Engine?<\/h2>\n\n\n\n<p>Our team, Azure Container Compute Upstream, has the following mission:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Enable Azure to efficiently consume innovations from the Kubernetes ecosystem<\/li>\n\n\n\n<li>Contribute innovations from Azure to the Kubernetes ecosystem<\/li>\n<\/ul>\n\n\n\n<p>We maintain AKS Engine as an open source tool for Azure customers, but the narrow focus on Azure-specific APIs is inconsistent with our mission in the Kubernetes ecosystem.<\/p>\n\n\n\n<p>AKS Engine works by creating ARM templates from a cluster model. ARM templates are a great Azure-specific solution for cluster creation, but this design falls short of empowering ongoing operational needs such as scaling, in-place upgrading, and extension management. And it isn\u2019t useful for users who are focused on multi-cloud scenarios like managing fleets of Kubernetes clusters across cloud infrastructures that do not support ARM.<\/p>\n\n\n\n<p>AKS Engine users will continue to receive excellent community support. As more maintainers have joined the AKS Engine community the Upstream team has shifted focus to CAPZ for new Kubernetes features. The community is committed to integrating and validating new versions of Kubernetes into AKS Engine. AKS Engine will remain the tool for creating Kubernetes clusters on Azure Stack Hub. We encourage other AKS Engine users to evaluate moving to CAPZ as it already provides stronger support for managing the cluster lifecycle compared to AKS Engine, and new investments from the Upstream team will be focused there.&nbsp;If you are committed to using AKS Engine longer term and would like to become a project maintainer, please reach out to us!<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"cluster-api-capz-getting-started-getting-help-and-getting-involved\">Cluster API CAPZ: Getting started, getting help, and getting involved<\/h2>\n\n\n\n<p>To get started building Kubernetes clusters on Azure with CAPZ, try the <a href=\"https:\/\/capz.sigs.k8s.io\/\" target=\"_blank\" rel=\"noopener noreferrer\">amazing CAPZ documentation<\/a>. When you have issues, please look at the <a href=\"https:\/\/github.com\/kubernetes-sigs\/cluster-api-provider-azure\/issues\" target=\"_blank\" rel=\"noopener noreferrer\">CAPZ issues<\/a> and create new ones if needed. If you want to get more involved in developing CAPZ, our team is active during <a href=\"https:\/\/github.com\/kubernetes-sigs\/cluster-api-provider-azure#office-hours\" target=\"_blank\" rel=\"noopener noreferrer\">office hours<\/a> and invite your participation. Many also find the <a href=\"https:\/\/github.com\/kubernetes-sigs\/cluster-api-provider-azure#other-ways-to-communicate-with-the-contributors\" target=\"_blank\" rel=\"noopener noreferrer\">#cluster-api-azure<\/a> Slack channel to be a great source of advice, help, and collaboration.<\/p>\n\n\n\n<p>In our next blog we\u2019ll discuss in more detail how you can customize your CAPZ deployment to tune startup time for your application by baking your chosen operating system and patch level, and\/or your application binaries and configurations into the virtual machine images. We plan to follow that with a discussion about how to leverage the GitOps principles by synchronizing a git repo with your management cluster. Reach out to us in the Kubernetes Slack (@craiglpeters and @jackfrancis) or on Twitter (<a href=\"https:\/\/twitter.com\/peterscraig\" target=\"_blank\" rel=\"noopener noreferrer\">@peterscraig<\/a> and <a href=\"https:\/\/twitter.com\/jackfrancis_esq\" target=\"_blank\" rel=\"noopener noreferrer\">@jackfrancis_esq<\/a>) with any other topic you\u2019d like to see us dig into.<\/p>\n\n\n\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Managing Kubernetes clusters is hard. Managing Kubernetes clusters at scale across a variety of infrastructures is\u2014well\u2014even harder. The Kubernetes community project Cluster API (CAPI) enables users to manage fleets of clusters across multiple infrastructure providers.<\/p>\n","protected":false},"author":5562,"featured_media":95486,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"msxcm_post_with_no_image":false,"ep_exclude_from_search":false,"_classifai_error":"","_classifai_text_to_speech_error":"","footnotes":""},"post_tag":[308,158,2272,166],"content-type":[361],"topic":[2241,2242],"programming-languages":[],"coauthors":[544,1730],"class_list":["post-84017","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","tag-azure-kubernetes-service","tag-kubernetes","tag-microsoft","tag-azure","content-type-project-updates","topic-cloud","topic-containers","review-flag-1593580428-734","review-flag-4-1593580448-609","review-flag-and-o-1593580423-446","review-flag-lever-1593580265-989","review-flag-never-1593580314-283","review-flag-new-1593580248-669","review-flag-vm-1593580807-312"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.2 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Introducing the Cluster API Provider for Azure (CAPZ) for Kubernetes cluster management | Microsoft Open Source Blog<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/opensource.microsoft.com\/blog\/2020\/12\/15\/introducing-cluster-api-provider-azure-capz-kubernetes-cluster-management\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Introducing the Cluster API Provider for Azure (CAPZ) for Kubernetes cluster management | Microsoft Open Source Blog\" \/>\n<meta property=\"og:description\" content=\"Managing Kubernetes clusters is hard. Managing Kubernetes clusters at scale across a variety of infrastructures is\u2014well\u2014even harder. The Kubernetes community project Cluster API (CAPI) enables users to manage fleets of clusters across multiple infrastructure providers.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/opensource.microsoft.com\/blog\/2020\/12\/15\/introducing-cluster-api-provider-azure-capz-kubernetes-cluster-management\/\" \/>\n<meta property=\"og:site_name\" content=\"Microsoft Open Source Blog\" \/>\n<meta property=\"article:published_time\" content=\"2020-12-15T17:00:23+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-06-23T18:31:36+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/STB13_Jaden_06.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1170\" \/>\n\t<meta property=\"og:image:height\" content=\"640\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Craig Peters, Jack Francis\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@OpenAtMicrosoft\" \/>\n<meta name=\"twitter:site\" content=\"@OpenAtMicrosoft\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Craig Peters, Jack Francis\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 min read\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2020\/12\/15\/introducing-cluster-api-provider-azure-capz-kubernetes-cluster-management\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2020\/12\/15\/introducing-cluster-api-provider-azure-capz-kubernetes-cluster-management\/\"},\"author\":[{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/author\/craig-peters\/\",\"@type\":\"Person\",\"@name\":\"Craig Peters\"},{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/author\/jack-francis\/\",\"@type\":\"Person\",\"@name\":\"Jack Francis\"}],\"headline\":\"Introducing the Cluster API Provider for Azure (CAPZ) for Kubernetes cluster management\",\"datePublished\":\"2020-12-15T17:00:23+00:00\",\"dateModified\":\"2025-06-23T18:31:36+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2020\/12\/15\/introducing-cluster-api-provider-azure-capz-kubernetes-cluster-management\/\"},\"wordCount\":1159,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2020\/12\/15\/introducing-cluster-api-provider-azure-capz-kubernetes-cluster-management\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/STB13_Jaden_06.webp\",\"keywords\":[\"Azure Kubernetes Service\",\"Kubernetes\",\"Microsoft\",\"Microsoft Azure\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/opensource.microsoft.com\/blog\/2020\/12\/15\/introducing-cluster-api-provider-azure-capz-kubernetes-cluster-management\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2020\/12\/15\/introducing-cluster-api-provider-azure-capz-kubernetes-cluster-management\/\",\"url\":\"https:\/\/opensource.microsoft.com\/blog\/2020\/12\/15\/introducing-cluster-api-provider-azure-capz-kubernetes-cluster-management\/\",\"name\":\"Introducing the Cluster API Provider for Azure (CAPZ) for Kubernetes cluster management | Microsoft Open Source Blog\",\"isPartOf\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2020\/12\/15\/introducing-cluster-api-provider-azure-capz-kubernetes-cluster-management\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2020\/12\/15\/introducing-cluster-api-provider-azure-capz-kubernetes-cluster-management\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/STB13_Jaden_06.webp\",\"datePublished\":\"2020-12-15T17:00:23+00:00\",\"dateModified\":\"2025-06-23T18:31:36+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2020\/12\/15\/introducing-cluster-api-provider-azure-capz-kubernetes-cluster-management\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/opensource.microsoft.com\/blog\/2020\/12\/15\/introducing-cluster-api-provider-azure-capz-kubernetes-cluster-management\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2020\/12\/15\/introducing-cluster-api-provider-azure-capz-kubernetes-cluster-management\/#primaryimage\",\"url\":\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/STB13_Jaden_06.webp\",\"contentUrl\":\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/STB13_Jaden_06.webp\",\"width\":1170,\"height\":640},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2020\/12\/15\/introducing-cluster-api-provider-azure-capz-kubernetes-cluster-management\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/opensource.microsoft.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Introducing the Cluster API Provider for Azure (CAPZ) for Kubernetes cluster management\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/#website\",\"url\":\"https:\/\/opensource.microsoft.com\/blog\/\",\"name\":\"Microsoft Open Source Blog\",\"description\":\"Open dialogue about openness at Microsoft \u2013 open source, standards, interoperability\",\"publisher\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/opensource.microsoft.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/#organization\",\"name\":\"Microsoft Open Source Blog\",\"url\":\"https:\/\/opensource.microsoft.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2019\/08\/Microsoft-Logo.png\",\"contentUrl\":\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2019\/08\/Microsoft-Logo.png\",\"width\":259,\"height\":194,\"caption\":\"Microsoft Open Source Blog\"},\"image\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/x.com\/OpenAtMicrosoft\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Introducing the Cluster API Provider for Azure (CAPZ) for Kubernetes cluster management | Microsoft Open Source Blog","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/opensource.microsoft.com\/blog\/2020\/12\/15\/introducing-cluster-api-provider-azure-capz-kubernetes-cluster-management\/","og_locale":"en_US","og_type":"article","og_title":"Introducing the Cluster API Provider for Azure (CAPZ) for Kubernetes cluster management | Microsoft Open Source Blog","og_description":"Managing Kubernetes clusters is hard. Managing Kubernetes clusters at scale across a variety of infrastructures is\u2014well\u2014even harder. The Kubernetes community project Cluster API (CAPI) enables users to manage fleets of clusters across multiple infrastructure providers.","og_url":"https:\/\/opensource.microsoft.com\/blog\/2020\/12\/15\/introducing-cluster-api-provider-azure-capz-kubernetes-cluster-management\/","og_site_name":"Microsoft Open Source Blog","article_published_time":"2020-12-15T17:00:23+00:00","article_modified_time":"2025-06-23T18:31:36+00:00","og_image":[{"width":1170,"height":640,"url":"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/STB13_Jaden_06.png","type":"image\/png"}],"author":"Craig Peters, Jack Francis","twitter_card":"summary_large_image","twitter_creator":"@OpenAtMicrosoft","twitter_site":"@OpenAtMicrosoft","twitter_misc":{"Written by":"Craig Peters, Jack Francis","Est. reading time":"5 min read"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/opensource.microsoft.com\/blog\/2020\/12\/15\/introducing-cluster-api-provider-azure-capz-kubernetes-cluster-management\/#article","isPartOf":{"@id":"https:\/\/opensource.microsoft.com\/blog\/2020\/12\/15\/introducing-cluster-api-provider-azure-capz-kubernetes-cluster-management\/"},"author":[{"@id":"https:\/\/opensource.microsoft.com\/blog\/author\/craig-peters\/","@type":"Person","@name":"Craig Peters"},{"@id":"https:\/\/opensource.microsoft.com\/blog\/author\/jack-francis\/","@type":"Person","@name":"Jack Francis"}],"headline":"Introducing the Cluster API Provider for Azure (CAPZ) for Kubernetes cluster management","datePublished":"2020-12-15T17:00:23+00:00","dateModified":"2025-06-23T18:31:36+00:00","mainEntityOfPage":{"@id":"https:\/\/opensource.microsoft.com\/blog\/2020\/12\/15\/introducing-cluster-api-provider-azure-capz-kubernetes-cluster-management\/"},"wordCount":1159,"commentCount":0,"publisher":{"@id":"https:\/\/opensource.microsoft.com\/blog\/#organization"},"image":{"@id":"https:\/\/opensource.microsoft.com\/blog\/2020\/12\/15\/introducing-cluster-api-provider-azure-capz-kubernetes-cluster-management\/#primaryimage"},"thumbnailUrl":"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/STB13_Jaden_06.webp","keywords":["Azure Kubernetes Service","Kubernetes","Microsoft","Microsoft Azure"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/opensource.microsoft.com\/blog\/2020\/12\/15\/introducing-cluster-api-provider-azure-capz-kubernetes-cluster-management\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/opensource.microsoft.com\/blog\/2020\/12\/15\/introducing-cluster-api-provider-azure-capz-kubernetes-cluster-management\/","url":"https:\/\/opensource.microsoft.com\/blog\/2020\/12\/15\/introducing-cluster-api-provider-azure-capz-kubernetes-cluster-management\/","name":"Introducing the Cluster API Provider for Azure (CAPZ) for Kubernetes cluster management | Microsoft Open Source Blog","isPartOf":{"@id":"https:\/\/opensource.microsoft.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/opensource.microsoft.com\/blog\/2020\/12\/15\/introducing-cluster-api-provider-azure-capz-kubernetes-cluster-management\/#primaryimage"},"image":{"@id":"https:\/\/opensource.microsoft.com\/blog\/2020\/12\/15\/introducing-cluster-api-provider-azure-capz-kubernetes-cluster-management\/#primaryimage"},"thumbnailUrl":"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/STB13_Jaden_06.webp","datePublished":"2020-12-15T17:00:23+00:00","dateModified":"2025-06-23T18:31:36+00:00","breadcrumb":{"@id":"https:\/\/opensource.microsoft.com\/blog\/2020\/12\/15\/introducing-cluster-api-provider-azure-capz-kubernetes-cluster-management\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/opensource.microsoft.com\/blog\/2020\/12\/15\/introducing-cluster-api-provider-azure-capz-kubernetes-cluster-management\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/opensource.microsoft.com\/blog\/2020\/12\/15\/introducing-cluster-api-provider-azure-capz-kubernetes-cluster-management\/#primaryimage","url":"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/STB13_Jaden_06.webp","contentUrl":"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/STB13_Jaden_06.webp","width":1170,"height":640},{"@type":"BreadcrumbList","@id":"https:\/\/opensource.microsoft.com\/blog\/2020\/12\/15\/introducing-cluster-api-provider-azure-capz-kubernetes-cluster-management\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/opensource.microsoft.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Introducing the Cluster API Provider for Azure (CAPZ) for Kubernetes cluster management"}]},{"@type":"WebSite","@id":"https:\/\/opensource.microsoft.com\/blog\/#website","url":"https:\/\/opensource.microsoft.com\/blog\/","name":"Microsoft Open Source Blog","description":"Open dialogue about openness at Microsoft \u2013 open source, standards, interoperability","publisher":{"@id":"https:\/\/opensource.microsoft.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/opensource.microsoft.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/opensource.microsoft.com\/blog\/#organization","name":"Microsoft Open Source Blog","url":"https:\/\/opensource.microsoft.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/opensource.microsoft.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2019\/08\/Microsoft-Logo.png","contentUrl":"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2019\/08\/Microsoft-Logo.png","width":259,"height":194,"caption":"Microsoft Open Source Blog"},"image":{"@id":"https:\/\/opensource.microsoft.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/x.com\/OpenAtMicrosoft"]}]}},"msxcm_display_generated_audio":false,"msxcm_animated_featured_image":null,"distributor_meta":false,"distributor_terms":false,"distributor_media":false,"distributor_original_site_name":"Microsoft Open Source Blog","distributor_original_site_url":"https:\/\/opensource.microsoft.com\/blog","push-errors":false,"_links":{"self":[{"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/posts\/84017","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/users\/5562"}],"replies":[{"embeddable":true,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/comments?post=84017"}],"version-history":[{"count":6,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/posts\/84017\/revisions"}],"predecessor-version":[{"id":97621,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/posts\/84017\/revisions\/97621"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/media\/95486"}],"wp:attachment":[{"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/media?parent=84017"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/post_tag?post=84017"},{"taxonomy":"content-type","embeddable":true,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/content-type?post=84017"},{"taxonomy":"topic","embeddable":true,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/topic?post=84017"},{"taxonomy":"programming-languages","embeddable":true,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/programming-languages?post=84017"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/coauthors?post=84017"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}