Airflow Summit 2023
Airflow について理解を深め、専門知識を共有するための Airflow サミット 2023 カンファレンス(9 月 19~21 日)で、Airflow コミュニティにご参加ください。提案書募集開始

サポート対象の Python バージョン

Cloud Composer 1 | Cloud Composer 2

Cloud Composer 1 は Python 2 と Python 3 をサポートしています。

特定の Cloud Composer イメージで使用されている Python の major.minor.patch バージョンを確認するには、Cloud Composer のバージョン リストをご覧ください。

Python のバージョニングの仕組み

同じ Google Cloud プロジェクトで Python 2 と Python 3 に基づく環境を作成できます。1 つの環境で使用できる Python メジャー バージョンは 1 つだけです(Python 2 または Python 3)。

新しい Cloud Composer 環境を作成する際に、メジャー Python バージョンを指定できます。

環境を作成した後に、環境のメジャー Python バージョンを変更することはできません。さらに、既存の環境を別のマイナー バージョンに切り替えることはできません。

Python 2 のサポートについて

Cloud Composer 1 は Python 2 をサポートしており、Airflow のサポートが終了するまで継続します。ただし、Python 2 は 2020 年 1 月 1 日にサポートが終了したため、Python 2 環境のサポート制限が生じる可能性があります。

新しい Airflow オペレータ、センサー、フックは Python 3 でのみ開発されているため、Python 2 環境では接続オプションが古くなっている可能性があります。したがって、DAG を Python 3 環境に移行し、Python 3 を使用してすべての新しい環境を作成することを強くおすすめします。

Python バージョンが DAG と依存関係に与える影響

Python Package Index から Python の依存関係をインストールすると、環境の Python バージョンによってパッケージをインストールする pip が決まります。 たとえば、Python 3 は pip3 を使用します。また、pip コマンドは pip3 を指定します。

Python 3 パッケージには Python 2 が含まれているため、どの Python インタープリタを使用するかという問題が発生します(PEP 394)。Python 3 環境では、python コマンドが python3 を指定します。

Python 2 はサポート終了の予定のため、BashOperatorPythonOperators などの演算子で、python2 または python3 を明示的に使用することをおすすめします。

次のステップ