기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
Apache Airflow 액세스 모드
Amazon Managed Workflows for Apache Airflow 콘솔에는 환경의 Apache Airflow 웹 서버에 대한 프라이빗, 퍼블릭 또는 퍼블릭 및 프라이빗 라우팅을 모두 구성하는 기본 옵션이 포함되어 있습니다. 이 가이드에서는 Amazon Managed Workflows for Apache Airflow 환경에서 Apache Airflow 웹 서버에 사용할 수 있는 액세스 모드와, 프라이빗 네트워크 옵션을 선택할 경우 Amazon VPC에서 구성해야 하는 추가 리소스에 대해 설명합니다.
목차
Apache Airflow 액세스 모드
Apache Airflow 웹 서버에 대해 프라이빗, 퍼블릭 또는 퍼블릭 및 프라이빗 라우팅을 모두 선택할 수 있습니다. 프라이빗 라우팅을 활성화하려면 프라이빗 네트워크를 선택합니다. 이렇게 하면 Amazon VPC 내에서 Apache Airflow 웹 서버에 대한 사용자 액세스가 제한됩니다. 퍼블릭 라우팅을 활성화하려면 퍼블릭 네트워크를 선택합니다. 이를 통해 사용자는 인터넷을 통해 Apache Airflow 웹서버에 액세스할 수 있습니다. 퍼블릭 및 프라이빗 라우팅을 모두 활성화하려면 퍼블릭 및 프라이빗 네트워크 액세스를 모두 선택합니다. 이를 통해 사용자는 인터넷을 통해 Apache Airflow 웹 서버에 액세스할 수 있고 작업자는 프라이빗 VPC 엔드포인트를 통해 웹 서버와 통신할 수 있습니다.
퍼블릭 네트워크
다음 아키텍처 다이어그램은 퍼블릭 웹 서버가 있는 Amazon MWAA 환경을 보여줍니다.
퍼블릭 네트워크 액세스 모드를 사용하면 사용자 환경의 IAM 정책에 대한 액세스 권한이 부여된 사용자가 인터넷을 통해 Apache Airflow UI에 액세스할 수 있습니다.
중요
환경에서 퍼블릭 네트워크 액세스 모드와 함께 Apache Airflow 버전 3 이상을 사용하는 경우 작업자가 인터넷을 통해 웹 서버에 연결하여 작업 상태를 전달할 수 있어야 합니다. 작업자를 호스팅하는 서브넷에 인터넷 액세스 권한이 없는 경우(예: NAT 게이트웨이가 없는 프라이빗 서브넷) DAG 작업이 실패합니다. 이 문제를 해결하려면 Apache Airflow 버전 3.2.1 이상으로 업그레이드하고 프라이빗 VPC 엔드포인트를 통해 작업자 통신을 라우팅하는 퍼블릭 및 프라이빗 네트워크 액세스 모드로 전환합니다.
다음 이미지는 Amazon MWAA 콘솔에서 퍼블릭 네트워크 옵션을 찾을 수 있는 위치를 보여줍니다.
프라이빗 네트워크
다음 아키텍처 다이어그램은 프라이빗 웹 서버가 있는 Amazon MWAA 환경을 보여줍니다.
프라이빗 네트워크 액세스 모드를 사용하면 Amazon VPC 내에서 사용자 환경의 IAM 정책에 대한 액세스 권한을 부여 받은 사용자만 Apache Airflow UI에 액세스할 수 있도록 제한됩니다.
프라이빗 웹 서버 액세스가 가능한 환경을 만들 때는 모든 종속성을 Python 휠 아카이브(.whl)에서 패키징한 다음 requirements.txt에서 .whl을 참조해야 합니다. 휠을 사용하여 종속성을 패키징하고 설치하는 방법에 대한 지침은 Python 휠을 이용한 종속성 관리를 참조하세요.
다음 이미지는 Amazon MWAA 콘솔에서 프라이빗 네트워크 옵션을 찾을 수 있는 위치를 보여줍니다.
퍼블릭 및 프라이빗 네트워크 액세스
Apache Airflow 버전 3.2.1 이상에서 사용할 수 있습니다. Apache Airflow 버전 3 이상에서 작업자는 작업 API를 통해 작업 상태를 웹 서버에 전달합니다. Amazon VPC에 인터넷 액세스가 없는 경우 작업자가 퍼블릭 웹 서버에 연결할 수 없어 DAG 작업이 실패합니다. 이 모드는 Apache Airflow UI에 대한 브라우저 액세스를 위한 퍼블릭 네트워크 로드 밸런서와 worker-to-webserver 통신을 위한 프라이빗 VPC 엔드포인트를 모두 생성하여 작업자가 인터넷 액세스 없이 웹 서버에 연결할 수 있도록 합니다. 각 구성 요소에 대한 위의 퍼블릭 네트워크 및 프라이빗 네트워크 아키텍처 다이어그램을 참조하세요.
참고
이 모드를 사용하면 Apache Airflow UI에 대한 브라우저 액세스가 퍼블릭 URL을 통과합니다. 프라이빗 VPC 엔드포인트는 내부 통신에 작업자가 사용하며 브라우저 액세스를 위한 것이 아닙니다.
액세스 모드 개요
이 섹션에서는 퍼블릭 네트워크, 프라이빗 네트워크 또는 퍼블릭 및 프라이빗 네트워크 액세스 모드를 모두 선택할 때 Amazon VPC에서 생성된 VPC 엔드포인트(AWS PrivateLink)에 대해 설명합니다.
퍼블릭 네트워크 액세스 모드
Apache Airflow 웹 서버에 대해 퍼블릭 네트워크 액세스 모드를 선택한 경우, 네트워크 트래픽은 인터넷을 통해 공개적으로 라우팅됩니다.
-
Amazon MWAA는 Amazon Aurora PostgreSQL 메타데이터 데이터베이스를 위한 VPC 인터페이스 엔드포인트를 생성합니다. 엔드포인트는 프라이빗 서브넷에 매핑된 가용 영역에 생성되며 다른 AWS 계정와는 독립적입니다.
-
그러면 Amazon MWAA에서 프라이빗 서브넷의 IP 주소를 인터페이스 엔드포인트에 바인딩합니다. 이는 Amazon VPC의 각 가용 영역에서 단일 IP를 바인딩하는 모범 사례를 지원하도록 설계되었습니다.
프라이빗 네트워크 액세스 모드
Apache Airflow 웹 서버에 대해 프라이빗 네트워크 액세스 모드를 선택한 경우, 네트워크 트래픽은 Amazon VPC 내에서 프라이빗로 라우팅됩니다.
-
Amazon MWAA는 Apache Airflow 웹 서버를 위한 VPC 인터페이스 엔드포인트와, Amazon Aurora PostgreSQL 메타데이터 데이터베이스를 위한 인터페이스 엔드포인트를 생성합니다. 엔드포인트는 프라이빗 서브넷에 매핑된 가용 영역에 생성되며 다른 AWS 계정와는 독립적입니다.
-
그러면 Amazon MWAA에서 프라이빗 서브넷의 IP 주소를 인터페이스 엔드포인트에 바인딩합니다. 이는 Amazon VPC의 각 가용 영역에서 단일 IP를 바인딩하는 모범 사례를 지원하도록 설계되었습니다.
퍼블릭 및 프라이빗 네트워크 액세스 모드 모두
Apache Airflow 웹 서버에 대해 퍼블릭 및 프라이빗 네트워크 액세스 모드를 모두 선택한 경우 Apache Airflow UI로의 네트워크 트래픽은 인터넷을 통해 공개적으로 라우팅되는 반면, worker-to-webserver 통신은 Amazon VPC 내에서 비공개로 라우팅됩니다.
-
Amazon MWAA는 Apache Airflow 웹 서버에 대한 VPC 인터페이스 엔드포인트(작업자 연결용)와 Amazon Aurora PostgreSQL 메타데이터 데이터베이스에 대한 인터페이스 엔드포인트를 생성합니다. 엔드포인트는 프라이빗 서브넷에 매핑된 가용 영역에서 생성되며 다른 가용 영역과 독립적입니다 AWS 계정.
-
그러면 Amazon MWAA에서 프라이빗 서브넷의 IP 주소를 인터페이스 엔드포인트에 바인딩합니다. 이는 Amazon VPC의 각 가용 영역에서 단일 IP를 바인딩하는 모범 사례를 지원하도록 설계되었습니다.
-
Apache Airflow UI는 퍼블릭 네트워크 로드 밸런서를 통해 인터넷을 통해 액세스할 수 있습니다. 사용자는 퍼블릭 네트워크 액세스 모드와 동일한 방식으로 UI에 액세스합니다.
자세한 내용은 Amazon VPC 및 Apache Airflow 액세스 모드의 사용 사례 예시 섹션을 참조하세요.
액세스 모드 설정
다음 섹션에서는 환경에 맞게 선택한 Apache Airflow 액세스 모드에 따라 필요한 추가 설정 및 구성을 설명합니다.
퍼블릭 네트워크 설정
Apache Airflow 웹 서버의 퍼블릭 네트워크 옵션을 선택하면, 환경을 생성한 후 Apache Airflow UI 사용을 시작할 수 있습니다.
사용자에 대한 액세스와 환경에서 다른 AWS 서비스를 사용할 수 있는 권한을 구성하려면 다음 단계를 수행해야 합니다.
-
권한 추가 Amazon MWAA에는 다른 AWS 서비스를 사용할 수 있는 권한이 필요합니다. 환경을 생성하면, Amazon MWAA에서 Amazon Elastic Container Registry(Amazon ECR), CloudWatch Log 및 Amazon EC2에 대한 특정 IAM 작업을 사용할 수 있도록 해주는 서비스 연결 역할을 생성합니다.
이러한 서비스에 대해 추가 작업을 사용하거나 실행 역할에 권한을 추가하여 다른 AWS 서비스를 사용할 수 있는 권한을 추가할 수 있습니다. 자세한 내용은 Amazon MWAA 실행 역할 섹션을 참조하세요.
-
사용자 정책 생성. 사용자가 환경 및 Apache Airflow UI에 대한 액세스를 구성하려면 여러 IAM 정책을 생성해야 할 수 있습니다. 자세한 내용은 Amazon MWAA 환경 액세스 섹션을 참조하세요.
프라이빗 네트워크 설정
Apache Airflow 웹 서버에 프라이빗 네트워크 옵션을 선택하는 경우 사용자에 대한 액세스, 환경에서 다른 AWS 서비스를 사용할 수 있는 권한을 구성하고 컴퓨터에서 Amazon VPC의 리소스에 액세스하는 메커니즘을 생성해야 합니다.
-
권한 추가 Amazon MWAA에는 다른 AWS 서비스를 사용할 수 있는 권한이 필요합니다. 환경을 생성하면, Amazon MWAA에서 Amazon Elastic Container Registry(Amazon ECR), CloudWatch Log 및 Amazon EC2에 대한 특정 IAM 작업을 사용할 수 있도록 해주는 서비스 연결 역할을 생성합니다.
이러한 서비스에 대해 추가 작업을 사용하거나 실행 역할에 권한을 추가하여 다른 AWS 서비스를 사용할 수 있는 권한을 추가할 수 있습니다. 자세한 내용은 Amazon MWAA 실행 역할 섹션을 참조하세요.
-
사용자 정책 생성. 사용자가 환경 및 Apache Airflow UI에 대한 액세스를 구성하려면 여러 IAM 정책을 생성해야 할 수 있습니다. 자세한 내용은 Amazon MWAA 환경 액세스 섹션을 참조하세요.
-
네트워크 액세스 활성화 Apache Airflow 웹 서버의 VPC 엔드포인트(AWS PrivateLink)에 연결하려면 Amazon VPC에서 메커니즘을 생성해야 합니다. 예를 들면, AWS Client VPN를 사용하여 컴퓨터에서 VPN 터널을 만들 수 있습니다.
퍼블릭 및 프라이빗 네트워크 액세스 모두에 대한 설정
Apache Airflow 웹 서버에 대해 퍼블릭 및 프라이빗 네트워크 액세스 옵션을 모두 선택하는 경우 환경을 생성한 후 Apache Airflow UI 사용을 시작할 수 있습니다. 브라우저 액세스에는 VPN 또는 VPC 엔드포인트 액세스 메커니즘이 필요하지 않습니다. Apache Airflow UI는 인터넷을 통해 액세스할 수 있습니다. 작업자는 프라이빗 VPC 엔드포인트를 통해 자동으로 웹 서버에 연결합니다.
사용자에 대한 액세스와 환경에서 다른 AWS 서비스를 사용할 수 있는 권한을 구성하려면 다음 단계를 수행해야 합니다.
-
권한 추가 Amazon MWAA에는 다른 AWS 서비스를 사용할 수 있는 권한이 필요합니다. 환경을 생성하면, Amazon MWAA에서 Amazon Elastic Container Registry(Amazon ECR), CloudWatch Log 및 Amazon EC2에 대한 특정 IAM 작업을 사용할 수 있도록 해주는 서비스 연결 역할을 생성합니다.
이러한 서비스에 대해 추가 작업을 사용하거나 실행 역할에 권한을 추가하여 다른 AWS 서비스를 사용할 수 있는 권한을 추가할 수 있습니다. 자세한 내용은 Amazon MWAA 실행 역할 섹션을 참조하세요.
-
사용자 정책 생성. 사용자가 환경 및 Apache Airflow UI에 대한 액세스를 구성하려면 여러 IAM 정책을 생성해야 할 수 있습니다. 자세한 내용은 Amazon MWAA 환경 액세스 섹션을 참조하세요.
Apache Airflow 웹 서버의 VPC 엔드포인트 액세스(프라이빗 네트워크 액세스)
프라이빗 네트워크 옵션을 선택한 경우, Amazon VPC에서 Apache Airflow 웹 서버의 VPC 엔드포인트(AWS PrivateLink)에 액세스할 수 있는 메커니즘을 생성해야 합니다. 이러한 리소스에는 Amazon MWAA 환경과 동일한 Amazon VPC, VPC 보안 그룹 및 프라이빗 서브넷을 사용하는 것이 좋습니다.
퍼블릭 및 프라이빗 네트워크 액세스를 모두 선택한 경우 Apache Airflow UI에 액세스하는 메커니즘을 생성할 필요가 없습니다. 인터넷을 통해 액세스할 수 있습니다. 프라이빗 VPC 엔드포인트는 내부 통신을 위해 작업자가 자동으로 사용합니다.
자세한 내용은 VPC 엔드포인트의 액세스 관리를 참조하세요.