Post

Azure Arc-enabled Kubernetes-hez csatlakozás távolról

Azure Arc-enabled Kubernetes Cluster-t már létrehoztunk itt, ezt a szolgáltatást szeretném egy kicsit kibővíteni, távoli csatlakozási lehetőséggel.

Gyakorlatban ez annyit jelent, hogy VPN vagy hasonló eszköz segítsége nélkül, távolról AzureAD (lehet token-el is, de na :) ) authentikáció segítségével kubectl parancsokat tudok használni, úgy hogy az Azure Arc proxy ként működik.

Azure Arc - Kubernetes összekapcsolása

Most a rövid verzíót írom le, előzőben ott a részletesebb Service Principal-os.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#Telepítsük az "az" bővítményt 
curl -sL https://aka.ms/InstallAzureCLIDeb | sudo bash
#Ezután jelentkezzünk be a telepítő felhasználónkkal.
az login
#Jelenlegi előfizetés ellenőrzése:
az show account
#Elérhető előfizetések listázása:
az account list
#Előfizetés váltása, ha kell
az account set --subscription "előfizetésneve"
#Engedélyeznünk kell pár szolgáltatást az előfizetésben:
az provider register --namespace Microsoft.Kubernetes
az provider register --namespace Microsoft.KubernetesConfiguration
az provider register --namespace Microsoft.ExtendedLocation
#Kell egy resource group
az group create -l westeurope -n <resource group neve>
#Kapcsoljuk össze az Azure Arc-al
az connectedk8s connect --name <Kubeclusterneve> --resource-group <resource group neve> --location westeurope

Ezzel ez a Kubernetes is Azure Arc-enabled lett, most jöhet a proxy

Proxy funkció bekapcsolása

1
az connectedk8s enable-features --features cluster-connect -n <Kubeclusterneve> -g <resource group neve>

Azure Arc oldalról meg is vagyunk, most kell jogosultságot biztosítanunk annak a személynek, aki csatlakozni fog:

1
kubectl create clusterrolebinding admin-binding --clusterrole cluster-admin --user=<userem>@<tenantom.onmicrosoft.com>

Kubernetes oldalon kész. Jöhet a kliens, ahonnan csatlakozni szeretnénk.

Csatalkozás

Szerencsére nagyon egyszerű a csatlakozás, csupán 2 dolog kell hozzá.

  • az
  • kubectl

Mind a kettő megoldható Linux/windows világban, szóval Én maradok a windows oldalon.
A legfrissebb Azure Cli verzióban, ami most 2.32.0, sajnos épp eltörték ezen részét, de még preview a cucc, így megbocsájtható

Szóval töltsük le és telepítsük a Cli-t: https://github.com/Azure/azure-cli/releases
A 2.29.2 verziót ajánlom, amíg ki nem javítják :)

Ezután kell kubectl, windows verzió: https://dl.k8s.io/release/v1.23.0/bin/windows/amd64/kubectl.exe

A környezet készen áll, csatlakozzunk.

1
2
3
4
5
6
7
8
9
10
#Ezután jelentkezzünk be azzal a felhasználóval, akinek jogot adtunk.
az login
#Jelenlegi előfizetés ellenőrzése:
az show account
#Elérhető előfizetések listázása:
az account list
#Előfizetés váltása, ha kell
az account set --subscription "előfizetésneve"
#Csatlakozás
az connectedk8s proxy -n <Kubeclusterneve> -g <resource group neve>

Ezt az ablakot hagyjuk nyitva, kell egy másik konzol ablak, ahonnan kitallózzuk a letöltött kubectl-et és próbáljuk is ki.

1
.\kubectl.exe get pods --all-namespaces

Valóságban valahogy így néz ki:

img-description

This post is licensed under CC BY 4.0 by the author.