---
title: "Azure Kubernetes Cluster: Deploy Your First Cluster on Azure"
description: Learn how Azure Kubernetes Clusters work with Azure Kubernetes Service (AKS), and how to easily deploy your first managed cluster on the Azure cloud.
image: https://cloud.netapp.com/hubfs/Azure%20Kubernetes%20Cluster-Deploy%20Your%20First%20Cluster%20on%20Azure-Blog%201200x672%202.jpg
---

![NetApp-Blue-logo-sm1](https://bluexp.netapp.com/hubfs/NetApp-Blue-logo-sm1.svg "NetApp-Blue-logo-sm1")

![hamburger icon](https://bluexp.netapp.com/hubfs/NetApp-Blue/hamburger-icon.svg) ![close icon](https://bluexp.netapp.com/hubfs/NetApp-Blue/close-icon.svg)

- Product
  
  ![left nav icons-1](https://bluexp.netapp.com/hubfs/left%20nav%20icons-1.svg)Storage 
    - [NetApp On-premises](https://bluexp.netapp.com/netapp-on-premises)
    - [Cloud Volumes ONTAP](https://bluexp.netapp.com/ontap-cloud)
    - [Amazon FSx for NetApp ONTAP](https://bluexp.netapp.com/fsx-for-ontap)
    - [Azure NetApp Files](https://bluexp.netapp.com/azure-netapp-files)
    - [Google Cloud NetApp Volumes](https://bluexp.netapp.com/google-cloud-netapp-volumes)
  
  
  ![data mobility](https://bluexp.netapp.com/hubfs/NetApp-Blue/data-mobility.svg)Mobility 
    - [Copy and Sync](https://bluexp.netapp.com/cloud-sync-service)
    - [Tiering](https://bluexp.netapp.com/cloud-tiering)
  
  
  ![left nav icons-2](https://bluexp.netapp.com/hubfs/left%20nav%20icons-2.svg)Protection 
    - [Backup and recovery](https://bluexp.netapp.com/cloud-backup)
    - [Disaster recovery](https://bluexp.netapp.com/disaster-recovery)
    - [Replication](https://bluexp.netapp.com/replication)
    - [Ransomware protection](https://bluexp.netapp.com/ransomware-protection)
  
  
  ![left nav icons](https://bluexp.netapp.com/hubfs/left%20nav%20icons.svg)Analysis and control 
    - [Observability](https://bluexp.netapp.com/cloud-insights)
    - [Classification](https://bluexp.netapp.com/netapp-cloud-data-sense)
    - [AIOps & storage health ](https://bluexp.netapp.com/digital-advisor)
    - [Digital wallet](https://bluexp.netapp.com/digital-wallet)
- Resources
  
    - ![solutions database](https://bluexp.netapp.com/hubfs/NetApp-Blue/solutions-protection.svg)CALCULATORS
    - [TCO Azure](https://bluexp.netapp.com/azure-calculator)
    - [TCO AWS](https://bluexp.netapp.com/aws-calculator)
    - [TCO Google Cloud](https://bluexp.netapp.com/google-cloud-calculator)
    - [Cloud Volumes ONTAP Sizer](https://bluexp.netapp.com/cvo-sizer)
    - ![resources explore](https://bluexp.netapp.com/hubfs/NetApp-Blue/resources-explore.svg)EXPLORE
    - [Global Availability Map](https://bluexp.netapp.com/cloud-volumes-global-regions)
- [Help Center](https://bluexp.netapp.com/help-center)

[Get Started](https://cloudmanager.netapp.com/)

# Azure Kubernetes Cluster: Deploy Your First Cluster on Azure

### Share

[![Facebook](https://bluexp.netapp.com/hubfs/Facebook.svg)](https://www.facebook.com/sharer.php?u=https://bluexp.netapp.com/blog/azure-anf-blg-azure-kubernetes-cluster-deploy-your-first-cluster-on-azure) [![Twitter](https://bluexp.netapp.com/hubfs/Twitter.svg)](https://twitter.com/share?url=https://bluexp.netapp.com/blog/azure-anf-blg-azure-kubernetes-cluster-deploy-your-first-cluster-on-azure) [![LinkedIn](https://bluexp.netapp.com/hubfs/linkedin-1.svg)](https://www.linkedin.com/shareArticle?mini=true&url=https://bluexp.netapp.com/blog/azure-anf-blg-azure-kubernetes-cluster-deploy-your-first-cluster-on-azure)

### Subscribe to our blog

Thanks for subscribing to the blog.

### November 1, 2020

### Topics: [Azure NetApp Files](https://bluexp.netapp.com/blog/topic/azure-netapp-files) [Azure](https://bluexp.netapp.com/blog/topic/azure)[Elementary](https://bluexp.netapp.com/blog/topic/elementary)[6 minute read](https://bluexp.netapp.com/blog/topic/6-minute-read)[Kubernetes](https://bluexp.netapp.com/blog/topic/kubernetes)

## What Is an Azure Kubernetes Cluster?

Kubernetes clusters are groups of resources that include one or more pods. Pods are groups of containers. In a pod, containers are dedicated to specific functions and can share data or communicate with other containers in the pod. The primary way to deploy Kubernetes clusters in the Microsoft Azure cloud is the Azure Kubernetes Service (AKS).

AKS is a managed service that you can use to configure and manage your clusters. The service takes care of maintenance tasks like health monitoring and updating and enables you to focus on operating your deployment. When deploying clusters with AKS, the service manages your Kubernetes masters while you manage your worker nodes.

We will also cover how Azure NetApp Files can help you optimize [Azure file storage](https://bluexp.netapp.com/azure-netapp-files) to achieve ultra-fast [Kubernetes performance](https://bluexp.netapp.com/blog/ma-anf-blg-configure-kubernetes-openshift) on Azure.

**In this article, you will learn:**

- [Azure Kubernetes Cluster Architecture](https://bluexp.netapp.com/blog/azure-anf-blg-azure-kubernetes-cluster-deploy-your-first-cluster-on-azure#H_H1) 
    - [Control Plane](https://bluexp.netapp.com/blog/azure-anf-blg-azure-kubernetes-cluster-deploy-your-first-cluster-on-azure#H_H2)
    - [Nodes and Node Pools](https://bluexp.netapp.com/blog/azure-anf-blg-azure-kubernetes-cluster-deploy-your-first-cluster-on-azure#H_H3)
- [Best Practices for Cluster Isolation and Security in Kubernetes Azure Service](https://bluexp.netapp.com/blog/azure-anf-blg-azure-kubernetes-cluster-deploy-your-first-cluster-on-azure#H_H4) 
    - [Design Clusters for Multi-Tenancy](https://bluexp.netapp.com/blog/azure-anf-blg-azure-kubernetes-cluster-deploy-your-first-cluster-on-azure#H_H4)
    - [Logically Isolate Clusters](https://bluexp.netapp.com/blog/azure-anf-blg-azure-kubernetes-cluster-deploy-your-first-cluster-on-azure#H_H4)
    - [Secure Access to the API Server and Cluster Nodes](https://bluexp.netapp.com/blog/azure-anf-blg-azure-kubernetes-cluster-deploy-your-first-cluster-on-azure#H_H7)
    - [App Armor](https://bluexp.netapp.com/blog/azure-anf-blg-azure-kubernetes-cluster-deploy-your-first-cluster-on-azure#H_H7)
- [Azure Kubernetes with NetApp](https://bluexp.netapp.com/blog/azure-anf-blg-azure-kubernetes-cluster-deploy-your-first-cluster-on-azure#H_H9)

## A Refresher: Key Components of Kubernetes Clusters

To better understand how AKS works, it helps to be familiar with the basics of Kubernetes clusters. Each cluster contains the following components:

- ** kube-apiserve**r—hosts a REST interface for Kubernetes resources that you can customize. It enables you to interact with Kubernetes components and utilities.
- ** kube-scheduler**—enables you to automate resource provisioning according to defined policies. This utility determines where and when workloads run.
- ** kube-controller-manager**—enables you to monitor your cluster state and ensures that resources match defined statuses. If cluster states don’t match, controllers are used to deploy resources’ needs to match the defined state.
- ** kubelet**—a node agent that enables you to automatically check the status of nodes and communicate with clusters. This agent is used to orchestrate requests and run containers.
- ** kube-proxy**—a network proxy that enables you to connect nodes within a cluster and allows communication between nodes. It manages your node and cluster IP addresses.
- ** etcd**—a key-value store that contains your cluster configuration information.

## Azure Kubernetes Cluster Architecture

When operating Kubernetes in AKS, all of the above elements exist. The difference is in the flexibility you have to set components up and how responsible you are for maintaining components. The most important aspects to understand in AKS are how your control plane is managed and how your nodes are managed.

### **Control Plane**

In AKS, your control plane is automatically configured as a managed resource when you create a cluster. This resource is created in the same region as your cluster and does not incur a cost on its own. The control plane is a single tenant and includes dedicated components, including a scheduler and API server.

When you create your cluster, you define the size and number of nodes you want and AKS connects the control plane to those nodes. You do not need to define your etcd cluster, proxies, or controllers. However, you also cannot access these components directly. This means that tasks like upgrading your clusters must be performed through the Azure Portal or CLI.

### **Nodes and Node Pools**

When deploying clusters to AKS, your nodes are based on Azure virtual machines (VMs). Each VM hosts your required node components and includes Moby as your container runtime. This component is what enables your applications to operate and interact with storage and networking components.

The size you specify for your nodes determines your resources, including available storage, memory, and CPU power. This means you can size your nodes to optimize costs and ensure performance. Additionally, nodes are billed like any other VM so you can apply price discounts automatically. Currently, the VM images available for AKS nodes are based on Windows Server 2019 or Ubuntu Linux.

## Deploy an Azure Kubernetes Service Cluster

This walkthrough explains how to deploy an AKS cluster using the Azure CLI. This walkthrough is adapted from the Azure documentation and you can find additional information about these steps [here](https://docs.microsoft.com/en-us/cli/azure/aks?view=azure-cli-latest#az-aks-create).

**Create your principal  
**To start, you need to create a service principal for Azure Active Directory. This component connects your Azure resources to your cluster. You can create this principal manually or rely on AKS to create one by default.

Below you can see an example of this principle with example names. To modify the configuration, you would change names as needed. Once your component is created, you can verify your configuration in the returned JSON file.

`az aks create    --resource-group exampleGroup    --name clusterName    --node-count 2    --generate-ssh-keys    --attach-acr acrName`

**Install and configure kubectl  
**After you create your cluster and connect it to your resources, you can access it directly using kubectl. This utility is the default CLI for Kubernetes and is pre-installed if you are using the Azure Cloud Shell. If you would prefer to use kubectl directly, you can install it with this command:

`az aks install-cli`

Once installed, you can configure kubectl with your AKS credentials. If you do not know your credentials, you can access them with the following command:

`az aks get-credentials --resource-group exampleGroup --name clusterName`

After providing your credentials to kubectl, you should be able to connect to your cluster. You can confirm this connection with the command below:

`$ kubectl get nodes`

Provided your connection was successful, you should receive an output like the following:

`NAME                     STATUS   ROLES   AGE   VERSION Aks-nodepool-test     Ready   agent   30m   v1.14`

## Azure Kubernetes with Azure NetApp Files

[Azure NetApp Files](https://bluexp.netapp.com/azure-netapp-files) is a Microsoft Azure file storage service built on NetApp technology, giving you the file capabilities in Azure even your core business applications require.

Get enterprise-grade data management and storage in Azure to manage workloads, applications and development deployments with ease, and move all of your file-based environments to the cloud.

Azure NetApp Files solves availability and performance challenges for enterprises that want to move mission-critical applications to the cloud, including workloads like [HPC](https://bluexp.netapp.com/ma-anf-hpc-file-services), [SAP](https://www.netapp.com/cloud-services/microsoft-azure-partnership/sap-azure-netapp-files/), [Linux](https://bluexp.netapp.com/ma-anf-linux-file-services), Oracle and SQL Server workloads, [Windows Virtual Desktop](https://bluexp.netapp.com/ma-anf-vdi-file-services), and more.

In particular, Azure NetApp Files gives you data management, such as cloning and backup capabilities that reduce your workspace deployment times allowing you to migrate more applications to Azure–even your business-critical workloads–with extreme file throughput with sub-millisecond response times.

**Want to get started?** [See Azure NetApp Files for yourself with a free demo](https://bluexp.netapp.com/ma-anf-lp-demo-request).

## Learn More About Azure Kubernetes

Read more in our series of guides about Azure Kubernetes

**Out-of-This-World Kubernetes Performance on Azure with Azure NetApp Files  
**Azure NetApp Files is a PaaS shared file service that you can use to boost the performance of your Kubernetes deployments on-premises or in Azure. This service is natively supported by Azure and can help you more effectively manage your Kubernetes deployments.

In this article you’ll learn how Azure NetApp Files can improve your Kubernetes performance and how to deploy a Kubernetes cluster in Azure Kubernetes Service.

**Read more:** [Out-of-This-World Kubernetes Performance on Azure with Azure NetApp Files](https://bluexp.netapp.com/blog/ma-anf-blg-configure-kubernetes-openshift)

**Address Persistent Storage Woes in AKS Using Azure NetApp Files  
**Azure Kubernetes Service (AKS) is a service that you can use to easily manage container-based workloads in Azure. When deploying this service, you also need to deploy persistent storage to ensure that your data and workloads remain available in the event of container failure.

In this article you’ll learn how persistent storage for AKS works and some challenges you may face, how to configure storage for AKS, and how Azure NetApp Files can provide storage benefits.

Read more: [Address Persistent Storage Woes in AKS Using Azure NetApp Files](https://bluexp.netapp.com/blog/ma-anf-blg-persistent-storage-azure-kubernetes-service)

[Jeff Whitaker](https://bluexp.netapp.com/blog/author/jeff-whitaker-cloud-data-services)

### Cloud Data Services

<https://bluexp.netapp.com/blog/author/jeff-whitaker-cloud-data-services>

-

```json
{
  "@context" : "https://schema.org",
  "@type" : "FAQPage",
  "mainEntity" : [ {
    "@type" : "Question",
    "acceptedAnswer" : {
      "@type" : "Answer",
      "text" : "<p>Kubernetes clusters are groups of resources that include one or more pods. Pods are groups of containers.</p><p>In a pod, containers are dedicated to specific functions and can share data or communicate with other containers in the pod.</p><p><a href='https://cloud.netapp.com/blog/azure-anf-blg-azure-kubernetes-cluster-deploy-your-first-cluster-on-azure'>Read more about Azure Kubernetes Cluster</a></p>"
    },
    "name" : "What Is an Azure Kubernetes Cluster?"
  } ]
}
```

```json
{
  "@context" : "https://schema.org",
  "@type" : "TechArticle",
  "author" : {
    "@type" : "Person",
    "name" : "Jeff Whitaker, Cloud Data Services"
  },
  "dateModified" : "Nov 1, 2020 2:18:48 AM",
  "datePublished" : "Nov 1, 2020 2:18:48 AM",
  "description" : "Learn how Azure Kubernetes Clusters work with Azure Kubernetes Service (AKS), and how to easily deploy your first managed cluster on the Azure cloud.",
  "headline" : " Azure Kubernetes Cluster: Deploy Your First Cluster on Azure ",
  "image" : [ "https://cloud.netapp.com/hubfs/Azure%20Kubernetes%20Cluster-Deploy%20Your%20First%20Cluster%20on%20Azure-Blog%201200x672%202.jpg" ],
  "mainEntityOfPage" : {
    "@id" : "https://bluexp.netapp.com/blog",
    "@type" : "WebPage"
  },
  "publisher" : {
    "@type" : "Organization",
    "logo" : {
      "@type" : "ImageObject",
      "url" : "https://bluexp.netapp.com/hubfs/2016_dev/netapp-logo.png"
    },
    "name" : "Netapp"
  }
}
```