Onboard EKS Cluster to Azure Arc

This post is part of the Azure Arc for Kubernetes series, in this post, we will connect an existing EKS cluster to Azure Arc.

Prerequisites:

az --version
AZ cli
helm version
Helm
  • Create Azure service principal (SP)
az login
az ad sp create-for-rbac -n "<Unique Name>" --role contributor

Example: az ad sp create-for-rbac -n "http://zcarcseries" --role contributor
  • Verify access to cluster and Azure:
    • A kubeconfig file pointing to the cluster you want to connect to Azure Arc.
    • ‘Read’ and ‘Write’ permissions for the user or service principal connecting creating the Azure Arc enabled Kubernetes resource type (Microsoft.Kubernetes/connectedClusters).
  • Install the following Azure Arc enabled Kubernetes CLI extensions of versions
az extension add --name connectedk8s
az extension add --name k8s-configuration

# To update
az extension update --name connectedk8s
az extension update --name k8s-configuration

Deployment:

  • Register the two providers for Azure Arc enabled Kubernetes
az provider register --namespace Microsoft.Kubernetes
az provider register --namespace Microsoft.KubernetesConfiguration

# Monitor the registration process

az provider show -n Microsoft.Kubernetes -o table
az provider show -n Microsoft.KubernetesConfiguration -o table
  • Login to previously created, Service Principal
export spappId='<Service Principal App ID>'
export spsecret='<Service Principal Client Secret>'
export tenantId='<Tenant ID>'

az login --service-principal --username $spappId --password $spsecret --tenant $tenantId
  • Set variables and create a resource group
export resourceGroup='zc-arc-series'
export arcClusterName='zc-aws-eks-01-arc'

az group create --name $resourceGroup --location 'eastus'
  • Connect your Kubernetes cluster to Azure Arc
az connectedk8s connect --name $arcClusterName --resource-group $resourceGroup --location 'eastus' --tags 'arck8s=aws_eks'
  • Verify list of connected clusters
az connectedk8s list -g zc-arc-series -o table

Note: After onboarding the cluster, it takes around 5 to 10 minutes for the cluster metadata (cluster version, agent version, number of nodes, etc.) to surface on the overview page of the Azure Arc enabled Kubernetes resource in Azure portal.

  • Check Namespace, deployments created as part of onboarding
  • Azure Arc agents deployed in the cluster
Azure Arc enabled Kubernetes Agent Architecture – Azure Arc | Microsoft Docs

Network/Proxy Requirements: https://docs.microsoft.com/en-us/azure/azure-arc/kubernetes/quickstart-connect-cluster

Reference: EKS cluster Terraform plan | Azure Arc Jumpstart
Quickstart: Connect an existing Kubernetes cluster to Azure Arc – Azure Arc | Microsoft Docs https://github.com/microsoft/azure_arc

Advertisement