¿Cómo puedo acceder a la interfaz de usuario de Apache Airflow utilizando el modo de acceso de red privada en mi entorno de Amazon MWAA?

Última actualización: 23-02-2022

Al intentar abrir la interfaz de usuario de Apache Airflow en mi entorno de Amazon Managed Workflows for Apache Airflow (Amazon MWAA), aparece el error “Tiempo de espera de conexión agotado”.

Descripción corta

El entorno de Amazon MWAA proporciona modos de acceso públicos y privados para la interfaz de usuario de Apache Airflow. Con el modo de acceso público, el servidor web Apache Airflow queda abierto a Internet y se puede acceder a él sin ninguna configuración adicional. Sin embargo, no puede controlar el acceso a la red del servidor web Apache Airflow mediante un grupo de seguridad. Por lo tanto, esta opción se considera menos segura en comparación con el modo de acceso privado. Con el modo de acceso privado, el servidor web Apache Airflow queda expuesto únicamente dentro de Amazon Virtual Private cloud (Amazon VPC) en el entorno. Amazon MWAA crea un punto de conexión de VPC en la VPC para cada entorno. Por lo tanto, el acceso a la VPC es necesario para acceder a la interfaz de usuario de Apache Airflow. El modo de acceso a la red privada requiere una configuración de red adicional.

Resolución

Puede acceder al servidor web Apache Airflow en modo de acceso a la red privada utilizando uno de los siguientes métodos.

AWS Direct Connect o VPN

Si dispone de una conexión AWS Direct Connect o VPN para conectar su red local a Amazon VPC, consulte con su equipo de redes para configurar el acceso a la dirección del servidor web de Amazon MWAA. Después de establecer la ruta de red, revise los grupos de seguridad asociados al entorno para asegurarse de que el servidor web de Amazon MWAA permite el tráfico HTTPS (TCP 443) desde la IP o subred de origen. También puede utilizar una AWS Client VPN para configurar el acceso a la red privada.

Si sigues teniendo problemas, prueba lo siguiente:

  • Verifique la resolución de DNS utilizando una herramienta, como nslookup o dig (dig<airflow-web-server-address>).
  • Verifique la conectividad a nivel de puerto utilizando una herramienta, como telnet (telnet<airflow-web-server-address-443>).

Si el problema persiste, compruebe si el navegador tiene configurado un proxy web. En ese caso, intente deshabilitar el proxy para realizar pruebas o solucione el problema en la configuración del proxy.

Host bastión de Linux

Se puede utilizar un host bastión como intermediario entre Internet y la subred privada. El host suele ser una máquina Linux con un servidor SSH en ejecución. Puede establecer un túnel SSH al host bastión para acceder a los recursos de su Amazon VPC. A continuación, puede usar un proxy de navegador, como FoxyProxy, para abrir la interfaz de usuario de Apache Airflow a través del túnel SSH. Para configurar un host bastión Linux, consulte el tutorial: Configuración del acceso a redes privadas mediante un host bastión Linux.

Si dispone de una instancia de Amazon Elastic Compute Cloud (Amazon EC2) con una interfaz gráfica de usuario (GUI), como una máquina Windows, puede utilizar esta instancia para acceder a la interfaz de usuario de Apache Airflow.

Equilibrador de carga

También puede utilizar un equilibrador de carga como intermediario entre Internet y la subred privada. A diferencia del host bastión, puede acceder directamente a la dirección del equilibrador de carga sin ninguna configuración adicional.

Para configurar el equilibrador de carga, haga lo siguiente:

  1. Identifique las direcciones IP privadas del servidor web de MWAA. Para obtener estas direcciones IP, realice una búsqueda de DNS en la dirección de la interfaz de usuario de Apache Airflow (dig +short <airflow-web-server-address>).
  2. Cree un grupo de destino para las direcciones IP privadas del servidor web de Amazon MWAA.
  3. Configure los ajustes de comprobación de estado para que el grupo de destino incluya 200 y 302 para Matcher.
    Nota: Sin esta configuración, los destinos podrían marcarse como incorrectos cuando el servidor web Apache Airflow responde con un redireccionamiento 302.
  4. Cree un Application Load Balancer con un agente de escucha HTTPS y el grupo de destino creado.
    Nota: Debe tener un certificado SSL antes de crear un agente de escucha HTTPS. Puede crear un certificado SSL con AWS Certificate Manager (ACM) iniciando sesión en el dominio o subdominio de su elección.
  5. Pruebe el acceso a la interfaz de usuario de Apache Airflow utilizando la dirección del Application Load Balancer que ha creado.

Nota: Amazon MWAA requiere un token de inicio de sesión web para acceder a la interfaz de usuario de Apache Airflow. Por lo tanto, es necesario que cree el token de inicio de sesión en la web y pase este token como una cadena de consulta al acceder a la interfaz de usuario de Apache Airflow mediante el Application Load Balancer. Para automatizar la creación de este token, consulte Acceso a un entorno privado de Amazon MWAA mediante identidades federadas.


¿Le resultó útil este artículo?


¿Necesita asistencia técnica o con la facturación?