Připojení clusteru Azure Kubernetes Service ke službě Azure Arc

Platí pro: AKS ve Službě Azure Stack HCI 22H2, AKS na Windows Serveru

Když je cluster Azure Kubernetes Service (AKS) připojený ke službě Azure Arc, získá reprezentaci azure Resource Manager. Clustery jsou připojené ke standardním předplatným Azure, nacházejí se ve skupině prostředků a můžou přijímat značky stejně jako jakýkoli jiný prostředek Azure. Reprezentace Kubernetes také umožňuje rozšířit do clusteru Kubernetes následující možnosti:

  • Služby pro správu: konfigurace (GitOps), Azure Monitor pro kontejnery Azure Policy (Gatekeeper).
  • Datové služby: SQL Managed Instance, PostgreSQL Hyperscale.
  • Aplikační služby: App Service, Functions, Event Grid, Logic Apps API Management.

Pokud chcete připojit cluster Kubernetes k Azure, musí správce clusteru nasadit agenty. Tito agenti běží v oboru názvů Kubernetes s názvem azure-arc a představují standardní nasazení Kubernetes. Agenti zodpovídají za připojení k Azure, shromažďování protokolů a metrik Azure Arc a povolení výše uvedených scénářů v clusteru.

AKS podporuje standardní ssl pro zabezpečení přenášených dat. Zašifrovaná neaktivní uložená data se také ukládají v databázi Azure Cosmos DB, aby byla zajištěna důvěrnost dat.

Následující postup popisuje, jak připojit clustery AKS ke službě Azure Arc v AKS s povolenou službou Arc. Pokud jste cluster Kubernetes už připojili ke službě Azure Arc pomocí Windows Admin Center, můžete tyto kroky přeskočit.

Než začnete

Ověřte, že máte následující požadavky:

  • Cluster AKS s alespoň jedním linuxovým pracovním uzlem, který je v provozu.
  • Nainstalujte modul PowerShellu AksHci.
  • Následující úroveň přístupu k vašemu předplatnému Azure:
    • Uživatelský účet s předdefinovanou rolí vlastníka . Úroveň přístupu můžete zkontrolovat tak, že přejdete do svého předplatného, vyberete "Řízení přístupu (IAM) na levé straně Azure Portal a pak kliknete na Zobrazit můj přístup.
    • Instanční objekt s předdefinovanou rolí vlastníka.
  • Příkazy v tomto článku spusťte v okně pro správu PowerShellu.
  • Ujistěte se, že splňujete požadavky na síť AKS.

Krok 1: Přihlášení k Azure

Pokud se chcete přihlásit k Azure, spusťte příkaz PowerShellu Connect-AzAccount :

Connect-AzAccount $tenantId

Pokud chcete přepnout na jiné předplatné, spusťte příkaz PowerShellu Set-AzContext :

Set-AzContext -Subscription $subscriptionId

Krok 2: Registrace dvou zprostředkovatelů pro AKS

Pokud jste už ve svém předplatném zaregistrovali dva poskytovatele pro AKS, můžete tento krok přeskočit. Registrace je asynchronní proces a pro každé předplatné se musí provést jednou. Registrace může trvat přibližně 10 minut:

Register-AzResourceProvider -ProviderNamespace Microsoft.Kubernetes
Register-AzResourceProvider -ProviderNamespace Microsoft.KubernetesConfiguration
Register-AzResourceProvider -ProviderNamespace Microsoft.ExtendedLocation

Pomocí následujících příkazů můžete zkontrolovat, jestli jste zaregistrovaní:

Get-AzResourceProvider -ProviderNamespace Microsoft.Kubernetes
Get-AzResourceProvider -ProviderNamespace Microsoft.KubernetesConfiguration
Get-AzResourceProvider -ProviderNamespace Microsoft.ExtendedLocation

Krok 3: Připojení ke službě Azure Arc pomocí modulu Aks-Hci PowerShellu

Připojte cluster AKS ke Kubernetes pomocí příkazu PowerShellu Enable-AksHciArcConnection . Tento krok nasadí agenty Azure Arc pro Kubernetes do azure-arc oboru názvů:

Enable-AksHciArcConnection -name $clusterName 

Připojení clusteru AKS ke službě Azure Arc pomocí instančního objektu

Pokud nemáte přístup k předplatnému, jehož jste vlastníkem, můžete cluster AKS připojit ke službě Azure Arc pomocí instančního objektu.

První příkaz zobrazí výzvu k zadání přihlašovacích údajů instančního objektu a uloží je do credential proměnné. Zadejte ID aplikace pro uživatelské jméno a po zobrazení výzvy jako heslo použijte tajný klíč instančního objektu. Ujistěte se, že jste tyto hodnoty získali od správce předplatného. Druhý příkaz připojí cluster ke službě Azure Arc pomocí přihlašovacích údajů instančního objektu uložených credential v proměnné:

$Credential = Get-Credential
Enable-AksHciArcConnection -name $clusterName -subscriptionId $subscriptionId -resourceGroup $resourceGroup -credential $Credential -tenantId $tenantId -location $location

Ujistěte se, že instanční objekt použitý ve výše uvedeném příkazu má přiřazenou roli Vlastník a že má obor nad ID předplatného použitého v příkazu. Další informace o instančních objektech najdete v tématu Vytvoření instančního objektu pomocí Azure PowerShell.

Připojení clusteru AKS ke službě Azure Arc a povolení vlastních umístění

Pokud chcete povolit vlastní umístění ve vašem clusteru společně se službou Azure Arc, spuštěním následujícího příkazu získejte ID objektu aplikace vlastního umístění a pak se připojte ke službě Azure Arc pomocí instančního objektu:

$objectID = (Get-AzADServicePrincipal -ApplicationId "bc313c14-388c-4e7d-a58e-70017303ee3b").Id
Enable-AksHciArcConnection -name $clusterName -subscriptionId $subscriptionId -resourceGroup $resourceGroup -credential $Credential -tenantId $tenantId -location -customLocationsOid $objectID

Ověření připojeného clusteru

Prostředek clusteru Kubernetes můžete zobrazit na Azure Portal. Po otevření portálu v prohlížeči přejděte na skupinu prostředků a prostředek AKS, který je založený na vstupech názvu prostředku a názvu skupiny prostředků použitých v příkazu powershellu enable-akshciarcconnection .

Poznámka

Po připojení clusteru může trvat maximálně pět až deset minut, než se metadata clusteru (verze clusteru, verze agenta, počet uzlů) zobrazí na stránce přehledu prostředku AKS v Azure Portal.

Agenti Azure Arc pro Kubernetes

AKS nasadí do azure-arc oboru názvů několik operátorů. Tato nasazení a pody můžete zobrazit pomocí kubectlpříkazu , jak je znázorněno v následujícím příkladu:

kubectl -n azure-arc get deployments,pods

AKS se skládá z několika agentů (operátorů), kteří běží ve vašem clusteru nasazeného azure-arc do oboru názvů. Další informace o těchto agentech najdete v tomto přehledu.

Odpojení clusteru AKS od služby Azure Arc

Pokud chcete cluster odpojit od AKS, spusťte příkaz PowerShellu Disable-AksHciArcConnection . Před spuštěním příkazu se ujistěte, že se přihlásíte k Azure:

Disable-AksHciArcConnection -Name $clusterName

Další kroky