Compartir a través de


Conexión de un clúster de Azure Kubernetes Service a Azure Arc

Se aplica a: AKS en Azure Stack HCI 22H2, AKS en Windows Server

Cuando se adjunta un clúster de Azure Kubernetes Service (AKS) a Azure Arc, obtiene una representación de Azure Resource Manager. Los clústeres se asocian a suscripciones estándar de Azure, viven en un grupo de recursos y pueden recibir etiquetas como cualquier otro recurso de Azure. Además, la representación de Kubernetes permite ampliar las siguientes funcionalidades en el clúster de Kubernetes:

  • Servicios de administración: configuraciones (GitOps), Azure Monitor para contenedores, Azure Policy (Gatekeeper).
  • Servicios de datos: SQL Instancia administrada, Hiperescala de PostgreSQL.
  • Servicios de aplicación: App Service, Functions, Event Grid, Logic Apps, API Management.

Para conectar un clúster de Kubernetes a Azure, el administrador del clúster debe implementar agentes. Estos agentes se ejecutan en un espacio de nombres de Kubernetes denominado azure-arc y son implementaciones estándar de Kubernetes. Los agentes son responsables de la conectividad con Azure, recopilando métricas y registros de Azure Arc y habilitando los escenarios mencionados anteriormente en el clúster.

AKS admite SSL estándar del sector para proteger los datos en tránsito. Además, los datos se almacenan cifrados en reposo en una base de datos de Azure Cosmos DB para garantizar la confidencialidad de los datos.

En los pasos siguientes se describe cómo conectar clústeres de AKS a Azure Arc en AKS habilitados por Arc. Puede omitir estos pasos si ya ha conectado el clúster de Kubernetes a Azure Arc mediante Windows Admin Center.

Antes de empezar

Compruebe que tiene los requisitos siguientes:

  • Un clúster de AKS con al menos un nodo de trabajo de Linux que esté en funcionamiento.
  • Instale el módulo de PowerShell aksHci.
  • El siguiente nivel de acceso en la suscripción de Azure:
    • Una cuenta de usuario con el rol Propietario integrado. Para comprobar el nivel de acceso, vaya a la suscripción, seleccione "Control de acceso (IAM)" en el lado izquierdo de Azure Portal y, a continuación, haga clic en Ver mi acceso.
    • Una entidad de servicio con el rol de propietario integrado.
  • Ejecute los comandos de este artículo en una ventana administrativa de PowerShell.
  • Asegúrese de cumplir los requisitos de red de AKS.

Paso 1: Inicio de sesión en Azure

Para iniciar sesión en Azure, ejecute el comando Connect-AzAccount de PowerShell:

Connect-AzAccount $tenantId

Si quiere cambiar a otra suscripción, ejecute el comando Set-AzContext de PowerShell:

Set-AzContext -Subscription $subscriptionId

Paso 2: Registrar los dos proveedores para AKS

Puede omitir este paso si ya registró los dos proveedores para AKS en su suscripción. El registro es un proceso asincrónico y se debe realizar una vez por cada suscripción. El registro puede tardar aproximadamente 10 minutos:

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

Puede comprobar que está registrado con los siguientes comandos:

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

Paso 3: Conexión a Azure Arc mediante el módulo Aks-Hci de PowerShell

Conecte el clúster de AKS a Kubernetes mediante el comando Enable-AksHciArcConnection de PowerShell. En este paso se implementan agentes de Azure Arc para Kubernetes en el azure-arc espacio de nombres :

Enable-AksHciArcConnection -name $clusterName 

Conexión del clúster de AKS a Azure Arc mediante una entidad de servicio

Si no tiene acceso a una suscripción en la que es propietario, puede conectar el clúster de AKS a Azure Arc mediante una entidad de servicio.

El primer comando solicita las credenciales de la entidad de servicio y las almacena en la variable $Credential. Cuando se le solicite, escriba el identificador de la aplicación para el nombre de usuario y, a continuación, use el secreto de la entidad de servicio como contraseña. Asegúrese de obtener estos valores del administrador de la suscripción. El segundo comando conecta el clúster a Azure Arc mediante las credenciales de la entidad de servicio almacenadas en la $Credential variable :

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

Asegúrese de que la entidad de servicio usada en este comando tiene asignado el rol Propietario y que tiene ámbito sobre el identificador de suscripción usado en el comando . Para más información sobre las entidades de servicio, consulte Creación de una entidad de servicio con Azure PowerShell.

Conexión del clúster de AKS a Azure Arc y habilitación de ubicaciones personalizadas

Si desea habilitar ubicaciones personalizadas en el clúster junto con Azure Arc, ejecute el siguiente comando para obtener el identificador de objeto de la aplicación de ubicación personalizada y, a continuación, conectarse a Azure Arc mediante una entidad de servicio:

$objectID = (Get-AzADServicePrincipal -ApplicationId "00001111-aaaa-2222-bbbb-3333cccc4444").Id
Enable-AksHciArcConnection -name $clusterName -subscriptionId $subscriptionId -resourceGroup $resourceGroup -credential $Credential -tenantId $tenantId -location -customLocationsOid $objectID

Comprobación del clúster conectado

Puede ver el recurso de clúster de Kubernetes en Azure Portal. Una vez que abra el portal en el explorador, vaya al grupo de recursos y al recurso de AKS que se basa en el nombre del recurso y las entradas de nombre del grupo de recursos que se usan en el comando enable-akshciarcconnection de PowerShell.

Nota:

Después de conectar el clúster, los metadatos del clúster (versión del clúster, versión del agente, número de nodos) pueden tardar aproximadamente cinco a diez minutos en mostrarse en la página de información general del recurso de AKS en Azure Portal.

Agentes de Azure Arc para Kubernetes

AKS implementa algunos operadores en el azure-arc espacio de nombres. Puede ver estas implementaciones y pods con kubectl, como se muestra en el ejemplo siguiente:

kubectl -n azure-arc get deployments,pods

AKS consta de algunos agentes (operadores) que se ejecutan en el clúster implementado en el azure-arc espacio de nombres. Para obtener más información sobre estos agentes, consulte esta introducción.

Desconexión del clúster de AKS de Azure Arc

Si desea desconectar el clúster de AKS, ejecute el comando Disable-AksHciArcConnection de PowerShell. Asegúrese de iniciar sesión en Azure antes de ejecutar el comando:

Disable-AksHciArcConnection -Name $clusterName

Pasos siguientes