Puesta en marcha del clúster de AKS
Las instancias de Packet Core del servicio Azure Private 5G Core se ejecutan en un clúster de Azure Kubernetes Service (AKS) habilitado para Arc en un dispositivo Azure Stack Edge (ASE). En esta guía paso a paso se muestra cómo poner en marcha el clúster de AKS en ASE con el fin de que esté listo para implementar una instancia de Packet Core.
Importante
Este procedimiento solo se debe usar con Azure Private 5G Core. Otros servicios no admiten AKS en ASE.
Requisitos previos
- Finalización de las tareas previas necesarias para implementar una red móvil privada.
- Necesitará el permiso de propietario en el grupo de recursos al que pertenece el recurso Azure Stack Edge.
Nota:
Anote el grupo de recursos de Azure Stack Edge. El clúster de AKS y la ubicación personalizada, creados en este procedimiento, deben pertenecer a este grupo de recursos.
- Revise el tamaño de la máquina virtual de Azure Stack Edge para asegurarse de que el ASE tenga suficiente espacio disponible para poner en marcha el clúster.
Configuración de Kubernetes para el proceso perimetral de acceso múltiple (MEC) privado de Azure en el dispositivo Azure Stack Edge
Estos pasos modifican el clúster de Kubernetes en el dispositivo de Azure Stack Edge para optimizarlo para cargas de trabajo de proceso perimetral de acceso múltiple (MEC) de Azure.
- En la interfaz de usuario local, seleccione Kubernetes en el menú de la izquierda.
- En Elija la opción que mejor describa su escenario, seleccione una solución MEC de privado de Azure en su entorno.
- En el menú emergente Confirmación de carga de trabajo, seleccione Confirmo que estoy ejecutando MEC privado de Azure en mi entorno y haga clic en Aplicar para cerrar el menú.
- Haga clic en Aplicar para guardar los cambios.
Debería ver una opción actualizada en la interfaz de usuario local donde Kubernetes se convierte en Kubernetes (versión preliminar) tal como se muestra en la imagen siguiente.
Si va a Azure Portal y se desplaza hasta el recurso Azure Stack Edge, debería ver una opción Azure Kubernetes Service. Configurará Azure Kubernetes Service en Inicio del clúster y configuración de Arc.
Configuración de redes avanzadas
Ahora debe configurar conmutadores virtuales y redes virtuales en esos conmutadores. Para realizar esta tarea, usará la sección Redes avanzadas de la interfaz de usuario local de Azure Stack Edge para realizar esta tarea.
Puede especificar todos los valores de esta página antes de seleccionar Aplicar en la parte inferior para aplicarlos todos a la vez.
Configure tres conmutadores virtuales. Debe haber un conmutador virtual asociado a cada puerto antes del paso siguiente. Es posible que los conmutadores virtuales ya estén presentes si tiene otras funciones de red virtual (VNFs) configuradas. Seleccione Agregar conmutador virtual y rellene el panel lateral adecuadamente para cada conmutador antes de seleccionar Modificar para guardar esa configuración.
- Cree un conmutador virtual en el puerto que debe tener habilitado el proceso (el puerto de administración). Se recomienda usar el formato vswitch-portX, donde X es el número del puerto. Por ejemplo, cree vswitch-port2 en el puerto 2.
- Cree un conmutador virtual en el puerto 3 con el nombre vswitch-port3.
- Cree un conmutador virtual en el puerto 4 con el nombre vswitch-port4.
Debería ver algo parecido a la imagen siguiente:
Configure tres conmutadores virtuales. Debe haber un conmutador virtual asociado a cada puerto antes del paso siguiente. Es posible que los conmutadores virtuales ya estén presentes si tiene otras funciones de red virtual (VNFs) configuradas. Seleccione Agregar conmutador virtual y rellene el panel lateral adecuadamente para cada conmutador antes de seleccionar Modificar para guardar esa configuración.
- Cree un conmutador virtual en el puerto que debe tener habilitado el proceso (el puerto de administración). Se recomienda usar el formato vswitch-portX, donde X es el número del puerto. Por ejemplo, cree vswitch-port3 en el puerto 3.
- Cree un conmutador virtual en el puerto 5 con el nombre vswitch-port5.
- Cree un conmutador virtual en el puerto 6 con el nombre vswitch-port6.
Debería ver algo parecido a la imagen siguiente:
Cree redes virtuales que representen las siguientes interfaces (a las que asignó subredes y direcciones IP en Asignación de subredes y direcciones IP):
- Interfaz de acceso del plano de control
- Interfaz de acceso del plano de usuario
- Interfaces de datos del plano de usuario
Puede asignar un nombre a estas redes, pero el nombre debe coincidir con lo que configure en Azure Portal al implementar Azure Private 5G Core. Si usa el enlace troncal de VLAN (necesario para las implementaciones de alta disponibilidad), tiene una única red virtual N6 sin información de IP. La información de VLAN y IP se realiza al configurar la red móvil. Con esta configuración, puede usar los nombres N2, N3 y N6.
En Acceso a VLAN o modo que no es VLAN, hay una red virtual N6 para cada red de datos conectada. Puede usar los nombres N2, N3 y hasta 10 N6-DNX(donde X es el número de red de datos (DN) 1-10 en una implementación de varias DN; o simplemente N6 para una sola implementación de DN). Opcionalmente, puede configurar cada red virtual con un identificador de red de área local virtual (id. de VLAN) para permitir la separación del tráfico de nivel 2. El ejemplo siguiente es para una implementación de varios DN 5G sin redes VLAN.
- Si usa el enlace troncal de VLAN (necesario para las implementaciones de alta disponibilidad), lleve a cabo el procedimiento siguiente tres veces:
- Seleccione Agregar red virtual y rellene el panel lateral:
- Conmutador virtual: seleccione vswitch-port3 para N2 y N3. Seleccione vswitch-port4 para N6.
- Nombre: N2, N3o N6.
- Tipo VLAN: VLAN de tronco
- Intervalo de identificadores de VLAN permitidos: rellene el conjunto de identificadores de VLAN que desea configurar.
- Seleccione Modificar para guardar la configuración de esta red virtual.
- Seleccione Aplicar en la parte inferior de la página y espere a que la notificación (un icono de campana) confirme que se ha aplicado la configuración. La aplicación de la configuración tarda aproximadamente 8 minutos.
- Seleccione Agregar red virtual y rellene el panel lateral:
- Si usa VLAN de acceso o un modo que no es VLAN, lleve a cabo el siguiente procedimiento tres veces, más una por cada una de las redes de datos complementarias (12 veces en total si tiene el máximo de 10 redes de datos):
Importante
Si usa el puerto 3 para las redes de datos, se recomienda usarlo para la carga esperada más baja.
- Seleccione Agregar red virtual y rellene el panel lateral:
- Conmutador virtual: seleccione vswitch-port3 para N2, N3 y hasta cuatro DN y seleccione vswitch-port4 para hasta seis DN.
- Nombre: N2, N3 o N6-DNX (donde X es el número de DN del 1al 10).
- VLAN: identificador de VLAN o 0 si no usan redes VLAN.
- Red y Puerta de enlace: use la subred y la puerta de enlace correctas para la dirección IP configurada en el puerto de ASE (aunque la puerta de enlace no esté establecida en el propio puerto de ASE).
- Por ejemplo, 10.232.44.0/24 y 10.232.44.1a.
- Si la subred no tiene una puerta de enlace predeterminada, use otra dirección IP en la subred que responderá a las solicitudes del Protocolo de resolución de direcciones (ARP), como una de las direcciones IP de RAN. Si hay más de un gNB conectado a través de un conmutador, elija una de las direcciones IP de la puerta de enlace.
- El servidor DNS y el sufijo DNS deben dejarse en blanco.
- Seleccione Modificar para guardar la configuración de esta red virtual.
- Seleccione Aplicar en la parte inferior de la página y espere a que la notificación (un icono de campana) confirme que se ha aplicado la configuración. La aplicación de la configuración tarda aproximadamente 8 minutos. La página debe parecerse ahora a la imagen siguiente:
- Seleccione Agregar red virtual y rellene el panel lateral:
- Si usa el enlace troncal de VLAN (necesario para las implementaciones de alta disponibilidad), lleve a cabo el procedimiento siguiente tres veces:
- Seleccione Agregar red virtual y rellene el panel lateral:
- Conmutador virtual: seleccione vswitch-port5 para N2 y N3. Seleccione vswitch-port6 para N6.
- Nombre: N2, N3o N6.
- Tipo VLAN: VLAN de tronco
- Intervalo de identificadores de VLAN permitidos: rellene el conjunto de identificadores de VLAN que desea configurar.
- Seleccione Modificar para guardar la configuración de esta red virtual.
- Seleccione Aplicar en la parte inferior de la página y espere a que la notificación (un icono de campana) confirme que se ha aplicado la configuración. La aplicación de la configuración tarda aproximadamente 8 minutos.
- Seleccione Agregar red virtual y rellene el panel lateral:
- Si usa el modo VLAN de acceso o un modo que no es VLAN, lleve a cabo el siguiente procedimiento tres veces, más una vez para cada una de las redes de datos complementarias (doce veces en total si tiene el máximo de diez redes de datos):
Importante
Si usa el puerto 5 para las redes de datos, se recomienda usarlo para la carga esperada más baja.
- Seleccione Agregar red virtual y rellene el panel lateral:
- Conmutador virtual: seleccione vswitch-port5 para N2, N3 y hasta cuatro DN y seleccione vswitch-port6 para hasta seis DN.
- Nombre: N2, N3 o N6-DNX (donde X es el número de DN del 1al 10).
- Tipo de VLAN: seleccione según corresponda.
- VLAN: identificador de VLAN o 0 si no usan redes VLAN.
- Red y Puerta de enlace: use la subred y la puerta de enlace correctas para la dirección IP configurada en el puerto de ASE (aunque la puerta de enlace no esté establecida en el propio puerto de ASE).
- Por ejemplo, 10.232.44.0/24 y 10.232.44.1a.
- Si la subred no tiene una puerta de enlace predeterminada, use otra dirección IP en la subred que responderá a las solicitudes del Protocolo de resolución de direcciones (ARP), como una de las direcciones IP de RAN. Si hay más de un gNB conectado a través de un conmutador, elija una de las direcciones IP de la puerta de enlace.
- El servidor DNS y el sufijo DNS deben dejarse en blanco.
- Seleccione Modificar para guardar la configuración de esta red virtual.
- Seleccione Aplicar en la parte inferior de la página y espere a que la notificación (un icono de campana) confirme que se ha aplicado la configuración. La aplicación de la configuración tarda aproximadamente 8 minutos.
- Seleccione Agregar red virtual y rellene el panel lateral:
La página debe parecerse ahora a la imagen siguiente:
Adición de direcciones IP y proceso
En la interfaz de usuario local de Azure Stack Edge, vaya a la página Kubernetes (versión preliminar). Realizará toda la configuración y la aplicará una vez, como hizo en Configuración de redes avanzadas.
- En Conmutador virtual de proceso, seleccione Modificar.
- Seleccione el vswitch con intención de proceso (por ejemplo, vswitch-port2).
- Escriba seis direcciones IP en un intervalo para las direcciones IP del nodo de la red de administración.
- Escriba una dirección IP en un intervalo para la dirección IP de servicio, también en la red de administración. Esto se usa para acceder a las herramientas de supervisión local para la instancia de núcleo del paquete.
- Seleccione Modificar en la parte inferior del panel para guardar la configuración.
Importante
Si usa el enlace troncal de VLAN (necesario para las implementaciones de alta disponibilidad), no se realiza ninguna configuración de IP para las redes virtuales en este momento. La configuración de IP se realiza al configurar la red móvil.
- En Red virtual, seleccione una red virtual. En el modo de enlace troncal de VLAN, será N2, N3 y N6. De lo contrario, elija entre N2, N3, N6-DNX (donde X es el número DN 1-10). En el panel lateral:
- Habilite la red virtual para Kubernetes y agregue un grupo de direcciones IP. Si NO es en el modo troncal de VLAN, agregue también un grupo de direcciones IP:
- Si es una implementación estándar, agregue un intervalo de una dirección IP para la dirección adecuada (N2, N3 o N6-DNX como se haya recopilado anteriormente). Por ejemplo, 10.10.10.20-10.10.10.20.
- Si es una implementación de alta disponibilidad, agregue un intervalo de dos direcciones IP para cada red virtual, donde las direcciones IP del pod N2 y N3 se encuentran en la subred de acceso local y las direcciones IP del pod N6 se encuentran en la subred de datos local adecuada.
- Repita este paso para cada una de las redes virtuales N2, N3 y N6-DNX.
- Seleccione Modificar en la parte inferior del panel para guardar la configuración.
- Seleccione Aplicar en la parte inferior de la página y espere a que se aplique la configuración. La aplicación de la configuración tardará aproximadamente 5 minutos.
La página debería tener ahora un aspecto similar al de la imagen siguiente (en modo troncal de VLAN):
Habilitación de la administración de máquinas virtuales en el App Service Environment
- Acceda a Azure Portal y vaya al recurso Azure Stack Edge creado en Azure Portal.
- Seleccione Servicios perimetrales.
- Seleccione Máquinas virtuales.
- Seleccione Habilitar.
Inicio del clúster y configuración de Arc
Si ejecuta otras máquinas virtuales (VM) en Azure Stack Edge, se recomienda detenerlas ahora y volver a iniciarlas una vez implementado el clúster. El clúster requiere acceso a recursos específicos de CPU que ejecuten las máquinas virtuales que ya estén en uso.
Acceda a Azure Portal y vaya al recurso Azure Stack Edge creado en Azure Portal.
Para implementar el clúster, seleccione la opción Kubernetes y, a continuación, seleccione el botón Agregar para configurar el clúster.
En Tamaño del nodo, seleccione Standard_F16s_HPN.
Asegúrese de que la casilla Kubernetes habilitado para Arc esté activada.
Seleccione el vínculo Cambiar y escriba el identificador de objeto de aplicación (OID) de Microsoft Entra para la ubicación personalizada que obtuvo en Recuperación del identificador de objeto (OID).
El servicio Kubernetes habilitado para Arc se crea automáticamente en el mismo grupo de recursos que el recurso Azure Stack Edge. Si el grupo de recursos de Azure Stack Edge no está en una región que admita Azure Private 5G Core, debe cambiar la región.
Haga clic en Configurar para aplicar la configuración.
Compruebe que los campos Región e Id. de objeto de aplicación de Microsoft Entra (OID) muestran los valores adecuados y, a continuación, haga clic en Crear.
Siga las indicaciones para configurar el servicio.
La creación del clúster de Kubernetes tarda aproximadamente 20 minutos. Durante la creación, puede haber una alarma crítica que se muestre en el recurso Azure Stack Edge. Esta alarma está prevista y debería desaparecer al cabo de unos minutos.
Una vez implementado, el portal debe mostrar en la página de información general que el servicio Kubernetes se está ejecutando.
Configuración del acceso kubectl
Necesitará acceso mediante kubectl para comprobar que el clúster se ha implementado correctamente. Para obtener acceso de solo lectura al clúster mediante kubectl, puede descargar un archivo kubeconfig desde la interfaz de usuario local de ASE. En Dispositivo, seleccione Descargar configuración.
El archivo descargado se denomina config.json. Este archivo tiene permiso para describir pods y ver registros, pero no para acceder a pods con kubectl exec.
Configuración del acceso al portal
Abra el recurso Azure Stack Edge en Azure Portal. Vaya al panel Azure Kubernetes Service (que se muestra en Inicio del clúster y configuración de Arc) y seleccione el vínculo Administrar para abrir el panel Arc.
Explore el clúster mediante las opciones del menú Recursos de Kubernetes (versión preliminar)::
Inicialmente se le presentará un cuadro de solicitud de inicio de sesión. El token que se va a usar para iniciar sesión se obtiene del archivo kubeconfig recuperado de la interfaz de usuario local en Configuración del acceso mediante kubectl. Hay una cadena que lleva delante el token : cerca del final del archivo kubeconfig. Copie esta cadena en el cuadro del portal (asegúrese de que no tiene caracteres de salto de línea copiados) y seleccione Iniciar sesión.
Ahora puede ver información sobre lo que se ejecuta en el clúster: a continuación se muestra un ejemplo del panel Cargas de trabajo:
Comprobar la configuración del clúster
Debe comprobar que el clúster de AKS está configurado correctamente mediante la ejecución de los siguientes comandos kubectl usando el archivo kubeconfig descargado de la interfaz de usuario en Configuración del acceso mediante kubectl:
kubectl get nodes
Este comando debe devolver dos nodos, uno denominado nodepool-aaa-bbb y otro denominado target-cluster-control-plane-ccc.
Para ver todos los pods en ejecución, ejecute:
kubectl get pods -A
Además, el clúster de AKS ahora debería estar visible desde el recurso Azure Stack Edge en el portal.
Recopilación de variables para las extensiones de Kubernetes
Recopile cada uno de los valores de la tabla siguiente.
Valor | Nombre de la variable |
---|---|
Identificador de la suscripción de Azure en la que se van a implementar los recursos de Azure. | SUBSCRIPTION_ID |
Nombre del grupo de recursos en el que se implementa el clúster de AKS. Se puede encontrar mediante el botón Administrar en el panel Azure Kubernetes Service de Azure Portal. | RESOURCE_GROUP_NAME |
Nombre del recurso de clúster de AKS. Se puede encontrar mediante el botón Administrar en el panel Azure Kubernetes Service de Azure Portal. | RESOURCE_NAME |
Región en la que se implementan los recursos de Azure. Debe coincidir con la región en la que se implementará la red móvil, que debe ser una de las regiones compatibles con AP5GC. Este valor debe ser el nombre de código de la región. |
LOCATION |
Nombre del recurso Ubicación personalizada que se va a crear para el clúster de AKS. Este valor debe empezar y terminar con caracteres alfanuméricos y contener solo caracteres alfanuméricos, - o . . |
CUSTOM_LOCATION |
Instalación de extensiones de Kubernetes
La red móvil privada de Azure Private 5G Core requiere una ubicación personalizada y extensiones específicas de Kubernetes que debe configurar mediante la CLI de Azure en Azure Cloud Shell.
Inicie sesión en la CLI de Azure mediante Azure Cloud Shell y seleccione Bash en el menú desplegable.
Establezca las siguientes variables de entorno usando los valores necesarios para la implementación:
SUBSCRIPTION_ID=<subscription ID> RESOURCE_GROUP_NAME=<resource group name> LOCATION=<deployment region, for example eastus> CUSTOM_LOCATION=<custom location for the AKS cluster> ARC_CLUSTER_RESOURCE_NAME=<resource name> TEMP_FILE=./tmpfile
Prepare su entorno de shell:
az account set --subscription "$SUBSCRIPTION_ID" az extension add --upgrade --name k8s-extension az extension add --upgrade --name customlocation
Cree la extensión de Kubernetes del operador de funciones de red:
cat > $TEMP_FILE <<EOF { "helm.versions": "v3", "Microsoft.CustomLocation.ServiceAccount": "azurehybridnetwork-networkfunction-operator", "meta.helm.sh/release-name": "networkfunction-operator", "meta.helm.sh/release-namespace": "azurehybridnetwork", "app.kubernetes.io/managed-by": "helm", "helm.release-name": "networkfunction-operator", "helm.release-namespace": "azurehybridnetwork", "managed-by": "helm" } EOF
az k8s-extension create \ --name networkfunction-operator \ --cluster-name "$ARC_CLUSTER_RESOURCE_NAME" \ --resource-group "$RESOURCE_GROUP_NAME" \ --cluster-type connectedClusters \ --extension-type "Microsoft.Azure.HybridNetwork" \ --auto-upgrade-minor-version "true" \ --scope cluster \ --release-namespace azurehybridnetwork \ --release-train preview \ --config-settings-file $TEMP_FILE
Cree la extensión de Kubernetes del monitor de Packet Core:
az k8s-extension create \ --name packet-core-monitor \ --cluster-name "$ARC_CLUSTER_RESOURCE_NAME" \ --resource-group "$RESOURCE_GROUP_NAME" \ --cluster-type connectedClusters \ --extension-type "Microsoft.Azure.MobileNetwork.PacketCoreMonitor" \ --release-train stable \ --auto-upgrade true
Cree la ubicación personalizada:
az customlocation create \ -n "$CUSTOM_LOCATION" \ -g "$RESOURCE_GROUP_NAME" \ --location "$LOCATION" \ --namespace azurehybridnetwork \ --host-resource-id "/subscriptions/$SUBSCRIPTION_ID/resourceGroups/$RESOURCE_GROUP_NAME/providers/Microsoft.Kubernetes/connectedClusters/$ARC_CLUSTER_RESOURCE_NAME" \ --cluster-extension-ids "/subscriptions/$SUBSCRIPTION_ID/resourceGroups/$RESOURCE_GROUP_NAME/providers/Microsoft.Kubernetes/connectedClusters/$ARC_CLUSTER_RESOURCE_NAME/providers/Microsoft.KubernetesConfiguration/extensions/networkfunction-operator"
Debería ver que la nueva ubicación personalizada aparece como un recurso en Azure Portal dentro del grupo de recursos especificado. El uso del comando kubectl get pods -A
(con acceso al archivo kubeconfig) también debe mostrar nuevos pods correspondientes a las extensiones que se han instalado. Debería haber un pod en el espacio de nombres azurehybridnetwork y otro en el espacio de nombres packet-core-monitor.
Reversión
Si ha cometido un error en la configuración de Azure Stack Edge, puede usar el portal para quitar el clúster de AKS (consulte Implementación de Azure Kubernetes Service en Azure Stack Edge). A continuación, puede modificar la configuración a través de la interfaz de usuario local.
Como alternativa, puede realizar un restablecimiento completo mediante la hoja Restablecimiento del dispositivo de la interfaz de usuario local (consulte Restablecimiento y reactivación de dispositivos de Azure Stack Edge) y, a continuación, reiniciar este procedimiento. En este caso, también debe eliminar los recursos asociados que quedan en Azure Portal después de completar el restablecimiento de Azure Stack Edge. Esto incluirá algunos o todos los siguientes, dependiendo de lo lejos que haya llegado en el proceso:
- Un recurso Azure Stack Edge.
- La instancia de KeyVault generada automáticamente asociada al recurso Azure Stack Edge.
- La instancia de StorageAccount generada automáticamente asociada al recurso Azure Stack Edge.
- El clúster de Azure Kubernetes (si se ha creado correctamente)
- Ubicación personalizada (si se creó correctamente)
Cambio de la configuración de ASE después de la implementación
Es posible que tenga que actualizar la configuración de ASE después de implementar Packet Core, por ejemplo, para agregar o quitar una red de datos adjunta o cambiar una dirección IP. Para cambiar la configuración de ASE, destruya los recursos Ubicación personalizada y Azure Kubernetes Service, realice los cambios de configuración de ASE y vuelva a crear esos recursos. Esto le permite desconectar temporalmente Packet Core en lugar de destruirlo y volver a crearlo, lo que minimiza la reconfiguración necesaria. También es posible que tenga que realizar cambios equivalentes en la configuración de Packet Core.
Precaución
Su instancia de Packet Core no estará disponible durante este procedimiento. Si realiza cambios en una instancia de Packet Core en buen estado, se recomienda ejecutar este proceso durante una ventana de mantenimiento para minimizar el impacto en el servicio.
- Vaya a la información general del grupo de recursos en Azure Portal (el grupo de recursos que contiene la instancia de Packet Core). Seleccione el recurso Plano de control de Packet Core y seleccione Modificar Packet Core. Establezca Ubicación personalizada de Azure Arc en Ninguna y seleccione Modificar.
- Vaya al grupo de recursos que contiene el recurso Ubicación personalizada. Seleccione la casilla de verificación del recurso Ubicación personalizada y seleccione Eliminar. Confirme la eliminación.
- Vaya al recurso Azure Stack Edge y quite toda la configuración de Azure Kubernetes Service.
- Acceda a la interfaz de usuario local de ASE y actualice la configuración según sea necesario.
- Vuelva a crear el clúster de Kubernetes. Consulte Inicio del clúster y configuración de Arc.
- Vuelva a crear el recurso de ubicación personalizada. Seleccione el recurso Plano de control de Packet Core y seleccione Configurar una ubicación personalizada.
La instancia de Packet Core debería estar ahora en servicio con la configuración actualizada de ASE. Para actualizar la configuración de Packet Core, consulte Modificación de una instancia de Packet Core.
Pasos siguientes
El dispositivo Azure Stack Edge ya está listo para Azure Private 5G Core. Para una implementación de alta disponibilidad, también tendrá que configurar los enrutadores. En caso contrario, el siguiente paso es recopilar la información que necesitará para implementar la red privada.