Я использую GCP Composer для оркестровки ETL…
Когда я создал экземпляр, я установил версию Python на Python 3
Одна из задач с использованием DataFlowPythonOperator, которая отлично работает, если запускается из нашего локального экземпляра dev-docker (Airflow v1.10.1 + Python 3.6.9)
он использует Apache Beam Python 3.6 SDK 2.16.0, если я запускаю его из образа Docker, который запускает Airflow v1.10.1
Всякий раз, когда мы выполняем развертывание на composer-1.7.9-airflow-1.10.1, задача выполняется с Python 2.7…
Он также всегда запускает задание Dataflow с помощью SDK Google Cloud Dataflow для Python 2.5.0, если оно инициировано из Composer.
Composer по умолчанию рассматривает Python версии 2.7, и это приводит к сбою многих преобразований ...
Я не могу найти способ настроить Composer для использования Python 3.x для создания и выполнения задания Dataflow…
Команда:
$ gcloud composer environments describe etl --location us-central1
результат:
softwareConfig:
imageVersion: composer-1.7.9-airflow-1.10.1
pythonVersion: '3'