Apache Airflow 웹 사용자 인터페이스에 액세스

Cloud Composer 1 | Cloud Composer 2

Apache Airflow에는 워크플로(DAG)와 Airflow 환경을 관리하고 관리 작업을 수행하는 데 사용할 수 있는 웹 사용자 인터페이스(UI)가 포함되어 있습니다. 예를 들어 웹 인터페이스를 사용하여 DAG의 진행 상태를 검토하거나, 새 데이터 연결을 설정하거나, 이전 DAG 실행의 로그를 살펴볼 수 있습니다.

Airflow 웹 서버

각 Cloud Composer 환경에는 Airflow 웹 인터페이스를 실행하는 웹 서버가 있습니다. 웹 서버는 Cloud Composer 환경 아키텍처의 일부입니다.

시작하기 전에

  • Cloud Composer 환경을 볼 수 있는 역할이 있어야 합니다. 자세한 내용은 액세스 제어를 참조하세요.

  • 환경 생성 중에 Cloud Composer는 Airflow 웹 인터페이스를 실행하는 웹 서버의 URL을 구성합니다. 이 URL을 맞춤설정할 수 없습니다.

  • Cloud Composer 2는 Airflow 웹 인터페이스에 대해 Airflow UI 액세스 제어(Airflow 역할 기반 액세스 제어) 기능을 지원합니다.

  • API 컨트롤 > 구성되지 않은 서드 파티 앱 > 사용자의 서드 파티 앱에 액세스를 허용하지 않음 옵션이 Google Workspace에 사용 설정되어 있고 Cloud Composer 앱의 Apache Airflow가 명시적으로 허용되지 않은 경우 사용자가 명시적으로 애플리케이션을 허용하지 않으면 Airflow UI에 액세스할 수 없습니다. 액세스를 허용하려면 Google Workspace에서 Airflow UI에 대한 액세스 허용의 단계를 수행합니다.

Airflow 웹 인터페이스에 액세스

Airflow 웹 서버는 사용자 환경의 클러스터에서 워크로드로 실행됩니다. 웹 서버는 composer.googleusercontent.com 도메인에 배포되며 Airflow 웹 인터페이스에 대한 액세스를 제공합니다.

Cloud Composer 2는 사용자에 대해 정의된 사용자 ID 및 IAM 정책 바인딩을 기반으로 인터페이스에 대해 액세스 권한을 제공합니다. Cloud Composer 1과 비교해서 Cloud Composer 2는 IAP(Identity-Aware Proxy)에 의존하지 않는 다른 메커니즘을 사용합니다.

Google Cloud 콘솔을 통해 웹 인터페이스에 액세스

Google Cloud Console에서 Airflow 웹 인터페이스에 액세스하려면 다음 안내를 따르세요.

  1. Google Cloud Console에서 환경 페이지로 이동합니다.

    환경으로 이동

  2. Airflow 웹 서버 열에서 해당 환경의 Airflow 링크를 따릅니다.

Airflow 웹 서버에 대한 액세스 제한

Composer 환경을 사용하면 Airflow 웹 서버에 대한 액세스를 제한할 수 있습니다.

  • 모든 액세스를 차단하거나 특정 IPv4 또는 IPv6 외부 IP 범위로부터의 액세스를 허용할 수 있습니다.
  • 비공개 IP 주소를 사용하여 허용되는 IP 범위를 구성할 수 없습니다.

gcloud 명령줄 도구를 통해 웹 인터페이스 URL 검색

모든 웹브라우저에서 Airflow 웹 인터페이스에 액세스할 수 있습니다. 웹 인터페이스의 URL을 가져오려면 다음 gcloud 명령어를 입력합니다.

gcloud composer environments describe ENVIRONMENT_NAME \
  --location LOCATION

다음을 바꿉니다.

  • ENVIRONMENT_NAME: 환경의 이름
  • LOCATION: 환경이 위치한 리전

gcloud 명령어는 웹 인터페이스의 URL을 비롯해 Cloud Composer 환경의 속성을 보여줍니다. URL은 airflowUriairflowByoidUri으로 나열됩니다.

  • airflowUri URL 주소는 Google 계정에서 사용됩니다.
  • airflowByoidUri URL 주소는 프로젝트에서 직원 ID 제휴를 구성하는 경우 외부 ID에 사용됩니다.
config:
  airflowUri: https://example-dot-us-central1.composer.googleusercontent.com
  airflowByoidUri: https://example-dot-us-central1.composer.byoid.googleusercontent.com

웹 서버 다시 시작

Cloud Composer 환경 디버깅 또는 문제 해결 시 일부 문제는 Airflow 웹 서버를 다시 시작하여 해결할 수 있습니다. restartWebServer API 또는 restart-web-server gcloud 명령어를 사용하여 웹 서버를 다시 시작할 수 있습니다.

gcloud beta composer environments restart-web-server ENVIRONMENT_NAME \
  --location=LOCATION