Share via


Implementar redes definidas por software de Microsoft (SDN)

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

En este artículo se describe cómo implementar máquinas virtuales de carga de trabajo e infraestructura de AKS en una Virtual Network sdn mediante el software sdn Load Balancer para todos los escenarios de equilibrio de carga de AKS Arc. AKS habilitado por Azure Arc ofrece una plataforma de contenedor totalmente compatible que puede ejecutar aplicaciones nativas en la nube en la plataforma de orquestación de contenedores de Kubernetes. La arquitectura admite la ejecución de cargas de trabajo virtualizadas de Windows y Linux.

Limitaciones

Las siguientes características están fuera del ámbito y no se admiten en esta versión de disponibilidad general:

  • Conexión de pods y contenedores a una red virtual de SDN.
    • Los pods usan Flannel o Calico (valor predeterminado) como proveedor de red.
  • Aplicación de directivas de red mediante la Grupos de seguridad de red de SDN.
    • El Grupos de seguridad de red de SDN todavía se puede configurar fuera de AKS Arc mediante herramientas de SDN (REST/PowerShell/Windows Admin Center/SCVMM), pero los objetos NetworkPolicy de Kubernetes no los configuran.
  • Conexión de NIC de máquina virtual de AKS Arc a redes lógicas de SDN.
  • Instalación mediante Windows Admin Center.
  • Conectividad de host físico a máquina virtual de AKS Arc: las NIC de máquina virtual están unidas a una red virtual de SDN y, por tanto, no son accesibles desde el host de forma predeterminada. Por ahora, puede habilitar esta conectividad manualmente mediante la asociación de una dirección IP pública directamente a la máquina virtual mediante el Load Balancer de software sdn.

Requisitos previos

Para implementar AKS habilitado por Arc con SDN, asegúrese de que el entorno cumpla los criterios de implementación de AKS Arc y SDN.

Nota

La integración de SDN con AKS Arc solo requiere controladora de red y software Load Balancer. Las máquinas virtuales de puerta de enlace son opcionales.

Instalación y preparación de SDN para AKS Arc

El primer paso es instalar SDN. Para instalar SDN, se recomiendan SDN Express o Windows Admin Center. Puede encontrar un archivo de configuración de referencia que implemente todos los componentes de infraestructura de SDN necesarios aquí: Software Load Balancer.psd1.

Una vez completada la implementación de SDN Express, debe haber una pantalla que notifique el estado como correcto.

Si algo salió mal o se está notificando como incorrecto, consulte Solución de problemas de SDN.

Es importante que SDN tenga un estado correcto antes de continuar. Si implementa SDN en un nuevo entorno, también se recomienda crear máquinas virtuales de prueba y comprobar la conectividad con las VIP del equilibrador de carga. Consulte cómo crear y conectar máquinas virtuales a una red virtual de SDN mediante Windows Admin Center.

Pasos para instalar AKS

Inicialice y prepare todas las máquinas host físicas para AKS Arc. Consulte Implementación de un host de AKS para obtener las instrucciones más actualizadas.

Instalación del módulo de PowerShell de AKS-HCI

Consulte Instalación del módulo aksHci de PowerShell para obtener información sobre cómo instalar el módulo de PowerShell de AKS-HCI.

Nota

Después de completar este paso, actualice o vuelva a cargar las sesiones de PowerShell abiertas para volver a cargar los módulos.

Registre el proveedor de recursos en la suscripción.

Para obtener información sobre cómo registrar el proveedor de recursos en su suscripción, consulte Instalación del módulo de PowerShell de AksHci.

Preparar las máquinas para la implementación

Para obtener información sobre cómo preparar las máquinas para la implementación, consulte Preparación de las máquinas para la implementación.

Configuración de AKS para la instalación

Elija uno de los servidores de Azure Stack HCI para impulsar la creación de AKS Arc. Hay tres pasos que deben realizarse antes de la instalación:

  1. Configure las opciones de red de AKS para SDN; por ejemplo, mediante:

    1. Red virtual de SDN "10.20.0.0/24" (10.20.0.0 – 10.20.0.255). Una red virtualizada y puede usar cualquier subred IP. Esta subred no necesita existir en la red física.
    2. Nombre de vSwitch "External". VSwitch externo en los servidores de Azure Stack HCI. Asegúrese de usar el mismo vSwitch que se usó para la implementación de SDN.
    3. Puerta de enlace "10.20.0.1". Esta dirección es la puerta de enlace de la red virtual.
    4. Servidor DNS "10.127.130.7". El servidor DNS de la red virtual.
    $vnet = New-AksHciNetworkSetting –name "myvnet" –vswitchName "External" -k8sNodeIpPoolStart "10.20.0.2" -k8sNodeIpPoolEnd "10.20.0.255"
    -ipAddressPrefix "10.20.0.0/24" -gateway "10.20.0.1" -dnsServers "10.127.130.7"
    
    Parámetro Descripción
    -name Nombre de la red virtual en AKS habilitado por Arc (debe estar en minúsculas).
    -vswitchName Nombre de vSwitch externo en los servidores de Azure Stack HCI. Use el mismo vSwitch que se usó para la implementación de SDN.
    -k8sNodeIpPoolStart
    -k8sNodeIpPoolEnd
    Intervalo de inicio y finalización ip de la red virtual sdn.
    -ipAddressPrefix Subred de red virtual en notación CIDR.
    -gateway
    -dnsServers
    Puerta de enlace y servidor DNS de la red virtual de SDN.

    Para obtener más información sobre estos parámetros, vea New-AksHciNetworkSetting.

  2. En la misma ventana de PowerShell que usó en el paso 1, cree un grupo de VIP para informar a AKS de nuestras direcciones IP que se pueden usar desde nuestra red lógica de equilibrio de carga de SDN:

    $VipPool = New-AksHciVipPoolSetting -name "publicvip" -vipPoolStart "10.127.132.16" -vipPoolEnd "10.127.132.23
    
    Parámetro Descripción
    -name La red lógica "PublicVIP" que proporcionó al configurar equilibradores de carga de SDN. Dentro del cmdlet , este nombre debe estar en minúsculas.
    -vipPoolStart Intervalo de inicio ip de la red lógica que se usa para el grupo de VIP del equilibrador de carga público. Debe usar un intervalo de direcciones de la red lógica SDN "PublicVIP".
    -vipPoolEnd Intervalo de extremos IP de la red lógica que se usa para el grupo de VIP del equilibrador de carga público. Debe usar un intervalo de direcciones de la red lógica SDN "PublicVIP".
  3. En la misma ventana de PowerShell que se usa en el paso 2, cree la configuración de AKS para SDN proporcionando referencias a las redes SDN de destino y proporcione la configuración de red ($vnet, $vipPool) que definimos anteriormente:

    Set-AksHciConfig 
    –imageDir "C:\ClusterStorage\Volume1\ImageStore" 
    –workingDir "C:\ClusterStorage\Volume1\WorkDir"
    –cloudConfigLocation "C:\ClusterStorage\Volume1\Config" 
    –vnet $vnet –useNetworkController
    –NetworkControllerFqdnOrIpAddress "nc.contoso.com" 
    –networkControllerLbSubnetRef "/logicalnetworks/PublicVIP/subnets/my_vip_subnet" 
    –networkControllerLnetRef "/logicalnetworks/HNVPA" 
    -vipPool $vipPool
    

    La red lógica HNVPA se usa como proveedor subyacente para la red virtual de AKS Arc.

    Si usa una asignación de direcciones IP estáticas para los nodos del clúster de Azure Stack HCI, también debe proporcionar el CloudServiceCidr parámetro . Este parámetro es la dirección IP del servicio en la nube MOC y debe estar en la misma subred que los nodos de clúster de Azure Stack HCI. Para obtener más información, consulte Servicio en la nube local de Microsoft.

    Parámetro Descripción
    –imageDir Ruta de acceso a donde AKS Arc almacena sus imágenes de VHD. Esta ruta de acceso debe ser una ruta de acceso de almacenamiento compartida o un recurso compartido SMB.
    –workingDir Ruta de acceso a donde se almacenan los archivos pequeños del módulo. Esta ruta de acceso debe ser una ruta de acceso de almacenamiento compartida o un recurso compartido SMB.
    -cloudConfigLocation Ruta de acceso al directorio donde se almacena la configuración del agente en la nube. Esta ruta de acceso debe ser una ruta de acceso de almacenamiento compartida o un recurso compartido SMB.
    -vnet Nombre de la AksHciNetworkSetting variable creada en el paso anterior
    -useNetworkController Habilite la integración con SDN.
    -networkControllerFqdnOrIpAddress FQDN de la controladora de red. Para obtener el FQDN, ejecute Get-NetworkController en la máquina virtual de controladora de red y use el RestName parámetro .
    -networkControllerLbSubnetRef Referencia a la subred de red lógica de VIP pública configurada en la controladora de red. Para obtener esta subred, ejecute el Get-NetworkControllerLogicalSubnet cmdlet . Al usar este cmdlet, use PublicVIP como LogicalNetworkId. Los VipPoolStart parámetros y vipPoolEnd del New-AksHciVipPoolSetting cmdlet deben formar parte de la subred a la que se hace referencia aquí.
    -networkControllerLnetRef Normalmente, este valor es "/logicalnetworks/HNVPA".
    -vipPool Grupo de VIP que se usa como direcciones IP de front-end para el equilibrio de carga.

    Para obtener más información sobre estos parámetros, vea Set-AksHciConfig.

Inicio de sesión en Azure y configuración de las opciones de registro

Siga las instrucciones que se indican aquí para configurar las opciones de registro.

Nota

Si no tiene permisos de propietario, se recomienda usar una entidad de servicio de Azure.

Instalación de AKS

Una vez completada la configuración de AKS, está listo para instalar AKS en Azure Stack HCI.

Install-AksHci

Una vez que la instalación se realiza correctamente, se crea una máquina virtual del plano de control (clúster de administración) y su vmNIC se conecta a la red SDN.

Recopilación de registros de un ENTORNO de SDN y AKS en HCI

Con SDN y AKS en HCI, obtenemos aislamiento de los nodos de AKS en redes virtuales. Dado que están aislados, debemos importar un nuevo script de recopilación de registros de AKS-HCI de SDN y ejecutar un comando modificado que use el equilibrador de carga para recuperar registros de los nodos:

Install-Module -Name AksHciSdnLogCollector -Repository PSGallery
Get-AksHciLogsSdn

Comentarios o problemas

Consulte los recursos de autoayuda aquí para SDN y aquí para AKS-HCI.

Pasos siguientes

A continuación, puede crear clústeres de cargas de trabajo e implementar las aplicaciones. Todas las NIC de máquina virtual de AKS en AKS habilitadas por Arc están conectadas sin problemas a la red virtual de SDN que se proporcionó durante la instalación. El equilibrador de carga de SOFTWARE de SDN también se usa como equilibrador de carga externo para todos los servicios de Kubernetes y actúa como equilibrador de carga para el servidor de API en planos de control de Kubernetes.