Configuración y scripts adicionales para AKS Edge Essentials
En este artículo se proporcionan formas alternativas de conectarse a Azure Arc, que se pueden aplicar a los clústeres que están conectados a través de un proxy.
Conexión de un clúster de AKS Edge Essentials a Arc mediante un proxy
Requisitos previos
- Una suscripción de Azure con el rol Propietario o una combinación de roles de colaborador y administrador de acceso de usuario. 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, seleccione Ver mi acceso. Lea la documentación de Azure Resource Manager para más información sobre la administración de grupos de recursos.
- Habilite todos los proveedores de recursos necesarios en la suscripción de Azure, como Microsoft.HybridCompute, Microsoft.GuestConfiguration, Microsoft.HybridConnectivity, Microsoft.Kubernetes y Microsoft.KubernetesConfiguration.
- Cree y compruebe un grupo de recursos para los recursos de Azure de AKS Edge Essentials.
Nota:
Debe tener el rol Colaborador para poder eliminar los recursos del grupo de recursos. Se producirá un error en los comandos para desconectar de Arc sin esta asignación de roles.
Paso 1: configuración del clúster para la conectividad de Azure
Descargue el repositorio de GitHub de Azure/AKS-Edge, si no lo ha hecho anteriormente. Vaya a la pestaña Código y haga clic en el botón Descargar archivo Zip para descargar el repositorio como un archivo .zip . Extraiga el archivo .zip en una carpeta local.
Proporcione detalles de la suscripción de Azure en el archivo aide-userconfig.json en la
Azure
sección tal como se describe en la tabla siguiente. Para conectarse correctamente a Azure mediante Kubernetes habilitado para Azure Arc, necesita una entidad de servicio que proporcione acceso basado en rol a los recursos de Azure. Si ya tiene el identificador y la contraseña de la entidad de servicio, puede actualizar todos los campos del archivo aide-userconfig.json . Si no tiene una entidad de servicio, puede proporcionar un nombre y el script en el paso siguiente crea uno y rellena laAuth
sección automáticamente.Attribute Tipo de valor Descripción Azure.ClusterName
string Proporcione un nombre para el clúster. De forma predeterminada, hostname_cluster
es el nombre usado.Azure.Location
string Ubicación del grupo de recursos. Elija la ubicación más cercana a la implementación. Azure.SubscriptionName
string El nombre de su suscripción. Azure.SubscriptionId
GUID El identificador de suscripción. En Azure Portal, seleccione la suscripción que usa y, a continuación, copie o pegue la cadena de identificador de suscripción en el JSON. Azure.TenantId
GUID El identificador de inquilino. En Azure Portal, busque "Azure Active Directory", que le llevará a la página Directorio predeterminado. Desde aquí, puede copiar o pegar la cadena de identificador de inquilino en el archivo JSON. Azure.ResourceGroupName
string Nombre del grupo de recursos de Azure para hospedar los recursos de Azure para AKS Edge Essentials. Puede usar un grupo de recursos existente o, si agrega un nuevo nombre, el sistema crea uno automáticamente. Azure.ServicePrincipalName
string Nombre de entidad de seguridad de servicio de Azure. Azure.Auth.ServicePrincipalId
GUID AppID de la entidad de servicio de Azure que se va a usar como credenciales. AKS Edge Essentials usa esta entidad de servicio para conectar el clúster a Arc. Puede usar una entidad de servicio existente o, si agrega un nuevo nombre, el sistema crea uno automáticamente en el paso siguiente. Azure.Auth.Password
string Contraseña (en texto no cifrado) para que la entidad de servicio de Azure la use como credenciales. AksEdgeConfigFile
string Nombre de archivo para la configuración de AKS Edge Essentials ( aksedge-config.json
). ElAksEdgeAzureSetup.ps1
script actualiza laArc
sección de este archivo JSON con la información necesaria.Nota:
Este procedimiento solo se debe realizar una vez por suscripción de Azure y no es necesario repetirlo para cada clúster de Kubernetes.
Ejecute o haga doble clic en el archivo AksEdgePrompt.cmd para abrir una ventana de PowerShell con privilegios elevados con los módulos necesarios cargados. Se muestra una visión general de la información del equipo y las versiones de software instaladas.
Ejecute el script AksEdgeAzureSetup.ps1 en la carpeta tools\scripts\AksEdgeAzureSetup . Este script le pide que inicie sesión con sus credenciales para configurar la suscripción de Azure:
# prompts for interactive login for service principal creation with Contributor role at resource group level ..\tools\scripts\AksEdgeAzureSetup\AksEdgeAzureSetup.ps1 .\aide-userconfig.json -spContributorRole # (or) alternative option # Prompts for interactive login for service principal creation with minimal privileges ..\tools\scripts\AksEdgeAzureSetup\AksEdgeAzureSetup.ps1 .\aide-userconfig.json
Asegúrese de que las credenciales son válidas mediante el script AksEdgeAzureSetup-Test.ps1 . Este script inicia sesión en Azure con las nuevas credenciales de la entidad de servicio y comprueba el estado de los recursos de Azure:
# Test the credentials ..\tools\scripts\AksEdgeAzureSetup\AksEdgeAzureSetup-Test.ps1 .\aide-userconfig.json
Paso 2: Conexión del clúster a Azure
Cargue la configuración json en AksEdgeShell mediante
Read-AideUserConfig
y compruebe que los valores se actualizan medianteGet-AideUserConfig
. Como alternativa, puede volver a abrir AksEdgePrompt.cmd para usar la configuración JSON actualizada:Read-AideUserConfig Get-AideUserConfig
Importante
Cada vez que modifique aide-userconfig.json, ejecute
Read-AideUserConfig
para volver a cargar o cerrar y volver a abrir AksEdgePrompt.cmd.Ejecute
Initialize-AideArc
. Esto instala la CLI de Azure (si aún no está instalada), inicia sesión en Azure con las credenciales especificadas y valida la configuración de Azure (proveedores de recursos y estado del grupo de recursos):Initialize-AideArc
Ejecute
Connect-AideArc
para instalar y conectar la máquina host al servidor habilitado para Arc y para conectar el clúster existente a Kubernetes habilitado para Arc:# Connect Arc-enabled server and Arc-enabled Kubernetes Connect-AideArc
Como alternativa, puede conectarlos individualmente mediante
Connect-AideArcServer
para servidores habilitados para Arc yConnect-AideArcKubernetes
para Kubernetes habilitado para Arc:# Connect Arc-enabled server Connect-AideArcServer # Connect Arc-enabled Kubernetes Connect-AideArcKubernetes
Nota:
Este paso puede tardar hasta 10 minutos y PowerShell podría estar bloqueado en "Establecer Kubernetes conectado a Azure para
your cluster name
". El comando de PowerShell generaTrue
y vuelve al símbolo del sistema cuando se completa el proceso. Un token de portador se guarda en servicetoken.txt en la carpeta tools .
Paso 3: visualización del clúster en Azure
En el panel izquierdo, seleccione la hoja Espacios de nombres en Recursos de Kubernetes (versión preliminar):
Para ver los recursos de Kubernetes, necesita un token de portador:
En la ventana de PowerShell, ejecute
Get-AksEdgeManagedServiceToken
, copie la cadena completa y péguela en Azure Portal:Ahora puede ver los recursos en el clúster. En la imagen siguiente se muestra la hoja Cargas de trabajo, que muestra lo mismo que
kubectl get pods --all-namespaces
:
Desconecte el clúster de AKS Edge Essentials de Arc al usar un proxy
Ejecute Disconnect-AideArc
para desconectarse del servidor habilitado para Arc y Kubernetes habilitado para Arc:
# Disconnect Arc-enabled server and Arc-enabled Kubernetes
Disconnect-AideArc
Como alternativa, puede desconectarlos individualmente mediante Connect-AideArcServer
para servidores habilitados para Arc y Connect-AideArcKubernetes
para Kubernetes habilitado para Arc:
# Disconnect Arc-enabled server
Disconnect-AideArcServer
# Disconnect Arc-enabled Kubernetes
Disconnect-AideArcKubernetes
Conexión de la máquina host a Arc
Puede conectar la máquina host mediante
Connect-AideArcServer
para servidores habilitados para Arc:# Connect Arc-enabled server Connect-AideArcServer
Para desconectar la máquina host de Arc, use
Disconnect-AideArcServer
para servidores habilitados para Arc:# Disconnect Arc-enabled server Disconnect-AideArcServer
También puede desinstalar el agente de Arc for Server siguiendo estos pasos. Para una limpieza completa a través de Azure Portal, elimine la entidad de servicio y el grupo de recursos que creó para este ejemplo.