📼
Cloud Composer は最新イメージのバージョンだけではなく古いイメージのバージョンでも新規作成できる
Cloud Console 上からは最新のイメージしか指定できない
Cloud Composer のドキュメントには以下の記載があり、
When you create a new environment or upgrade an existing one, only the latest versions of Cloud Composer images are available as choices.
実際「環境の作成」画面では、最新のバージョンのみが選択肢として表示されます。
「環境の作成」画面で指定できるイメージのバージョン
Cloud Console からは古いイメージのバージョンの Cloud Composer は新規作成することができません。
API 経由であれば古いイメージのバージョンが指定可能
しかし、コマンドから作成を実行すると……
$ gcloud composer environments create old-version \
--project example-project --location asia-northeast1 --image-version composer-1.10.2-airflow-1.10.6
Waiting for [projects/example-project/locations/asia-northeast1/environments/old-version] to be created with [projects/example-project/locations/asia-northeast1/operations/xxx60xxx-axx9-xxfe-aexx-xxxx281xxxxx]...done.
普通に作成ができてしまいました。
どうやら API 経由であれば、最新イメージのバージョンだけではなく古いイメージのバージョンでも新規作成できるようです(なので、Terraform などからも作成可能)。
ただし、全てのバージョンで作成ができるわけではなく、一定程度古くなったバージョンは作成できなくなってしまうようです。Cloud Composer の API のイメージバージョンの一覧を取得する API があり、その中の項目として creationDisabled
があります。この項目が無ければ新規作成ができるようです。
creationDisabled
booleanWhether it is impossible to create an environment with the image version.
{
...,
{
"imageVersionId": "composer-1.9.1-airflow-1.10.1",
"supportedPythonVersions": [
"2",
"3"
],
"releaseDate": {
"year": 2020,
"month": 2,
"day": 25
}
},
{
"imageVersionId": "composer-1.9.0-airflow-1.10.6",
"supportedPythonVersions": [
"2",
"3"
],
"releaseDate": {
"year": 2020,
"month": 2,
"day": 13
},
"creationDisabled": true
},
...
}
Discussion