Cloud Composer 3 | Cloud Composer 2 | Cloud Composer 1
このページでは、Cloud Composer 3 のプライベート IP 環境のネットワーキング タイプとパブリック IP 環境のネットワーキング タイプの違いについて説明し、環境のネットワーキング タイプを切り替える手順を示します。
PyPI パッケージのインストール時にのみインターネット アクセスを無効または有効にする場合は、PyPI パッケージのインストール時にインターネット アクセスを構成するをご覧ください。
環境から VPC ネットワークへのアクセスを有効にする場合は、環境を VPC ネットワークに接続するをご覧ください。
環境ネットワーキング タイプについて
Cloud Composer 3 では、次の 2 つの環境ネットワーキング タイプが使用されます。
パブリック IP ネットワーキング:
環境の Airflow コンポーネントはインターネットにアクセスできます。これはデフォルトのネットワーク タイプです。
-
パブリック IP 環境の Airflow コンポーネントは、自動的に割り振られたパブリック IP アドレスとポートからアウトバウンド接続を確立します。パブリック IP 環境で事前定義された IP アドレスとポートを使用する場合は、環境に VPC ネットワークを接続し、プライベート IP に切り替えることでこれを行えます。この場合、Cloud Composer は Google サービスへのトラフィックを除くすべてのトラフィックをこのネットワーク経由で転送します。
プライベート IP ネットワーキング
環境の Airflow コンポーネントはインターネットにアクセスできません。
プライベート IP 環境では、
private.googleapis.com
範囲を介したプライベート Google アクセスを構成します。これにより、この範囲でサポートされている Google API、サービス、ドメインにアクセスできるようになります。詳細と、
private.googleapis.com
で使用可能なサービスとドメインの一覧については、Virtual Private Cloud ドキュメントのネットワーク構成をご覧ください。VPC Service Controls を使用したプライベート IP 環境では、
restricted.googleapis.com
範囲を介したプライベート Google アクセスを構成します。この範囲でサポートされている Google API、サービス、ドメインにアクセスできるようになります。詳細と、
resrticted.googleapis.com
で使用可能なサービスとドメインの一覧については、Virtual Private Cloud ドキュメントのネットワーク構成をご覧ください。
2 つのネットワーキング タイプに加えて、任意のタイプの環境でカスタム VPC ネットワークへのアクセスを有効または無効にできます。プライベート IP 環境で、VPC ネットワークの構成方法に応じた、VPC ネットワークを介したインターネット アクセスが可能になります。
Cloud Composer 2 ネットワーキングと Cloud Composer 3 ネットワーキングの比較
Cloud Composer 3 では、プライベート IP 環境の構成は必要ありません。
次の Cloud Composer 2 ネットワーキング機能は、Cloud Composer 3 で無効になりました。
プライベート IP ネットワークの構成。IP 範囲やネットワークを指定する必要も、接続やファイアウォール ルールを構成する必要もありません。
Private Service Connect の構成。Cloud Composer 3 では、Private Service Connect の範囲を設定する必要はありません。
プライベートで使用されるパブリック IP 範囲の使用。この機能は、使用可能な IP 範囲を拡張するために提供されていましたが、これは Cloud Composer 3 では不要です。
IP マスカレード エージェントの使用。Cloud Composer 3 では、クラスタ接続を構成する必要はありません。
承認済みネットワークの構成。Cloud Composer 3 では、環境のクラスタにアクセスできません。
環境のネットワーキング タイプを変更する
コンソール
Google Cloud Console で [環境] ページに移動します。
環境のリストで、ご利用の環境の名前をクリックします。[環境の詳細] ページが開きます。
[環境の設定] タブに移動します。
[ネットワーク構成] セクションで、[ネットワーキング タイプ] の項目を探して [編集] をクリックします。
[ネットワーキング タイプ] ダイアログで、次の項目を選択します。
- パブリック IP ネットワーキングの [パブリック IP 環境(デフォルト)]。
- プライベート IP ネットワーキングの [プライベート IP 環境]。
[保存] をクリックします。
gcloud
環境のネットワーキング タイプを変更するには、次の Google Cloud CLI 引数を使用します。
--enable-private-environment
: プライベート IP ネットワーキングに変更します。--disable-private-environment
: パブリック IP ネットワーキングに変更します(デフォルト)。
プライベート IP ネットワーキングに変更します。
gcloud beta composer environments update ENVIRONMENT_NAME \
--location LOCATION \
--enable-private-environment
パブリック IP ネットワーキングに変更します。
gcloud beta composer environments update ENVIRONMENT_NAME \
--location LOCATION \
--disable-private-environment
以下を置き換えます。
ENVIRONMENT_NAME
: 環境の名前。LOCATION
: 環境が配置されているリージョン。
例(プライベート IP):
gcloud beta composer environments update example-environment \
--location us-central1 \
--enable-private-environment
例(パブリック IP):
gcloud beta composer environments update example-environment \
--location us-central1 \
--disable-private-environment
API
environments.patch
API リクエストを作成します。このリクエストで次のように操作します。
updateMask
パラメータで、config.private_environment_config.enable_private_environment
マスクを指定します。リクエスト本文の
enablePrivateEnvironment
フィールドに、次を指定します。- プライベート IP ネットワーキングに変更するには、
true
を指定します。 - パブリック IP ネットワーキングに変更するには、
false
を指定します(デフォルト)。
- プライベート IP ネットワーキングに変更するには、
例(プライベート IP):
// PATCH https://composer.googleapis.com/v1beta1/projects/example-project/
// locations/us-central1/environments/example-environment?updateMask=
// config.private_environment_config.enable_private_environment
"config": {
"privateEnvironmentConfig": {
"enablePrivateEnvironment": true
}
}
Terraform
config
ブロックの enable_private_environment
フィールドは、環境のネットワーキング タイプを指定します。
true
: プライベート IP ネットワーキング。false
または省略: パブリック IP ネットワーキング(デフォルト)。
resource "google_composer_environment" "example" {
provider = google-beta
name = "ENVIRONMENT_NAME"
region = "LOCATION"
config {
enable_private_environment = PRIVATE_IP_STATUS
}
}
以下を置き換えます。
ENVIRONMENT_NAME
: 環境の名前。LOCATION
: 環境が配置されているリージョン。PRIVATE_IP_STATUS
: プライベート IP の場合はtrue
、パブリック IP の場合はfalse
例(プライベート IP):
resource "google_composer_environment" "example" {
provider = google-beta
name = "example-environment"
region = "us-central1"
config {
enable_private_environment = true
... other configuration parameters
}
}