Cloud Composer 1 | Cloud Composer 2 | Cloud Composer 3
本页介绍了 Cloud Composer 3 中专用 IP 环境网络类型和公共 IP 环境网络类型之间的区别,并提供了关于切换环境网络类型的说明。
如果您想仅在安装 PyPI 软件包时停用或启用互联网访问权限,请参阅在安装 PyPI 软件包时配置互联网访问权限。
如果您想允许从环境访问 VPC 网络,请参阅将环境连接到 VPC 网络。
环境网络类型简介
Cloud Composer 3 使用两种环境网络类型:
公共 IP 网络:环境的 Airflow 组件可以访问 。这是默认的网络类型。
专用 IP 网络:
- 该环境的 Airflow 组件无权访问 互联网。
专用 IP 环境通过
private.googleapis.com
范围,允许访问 此范围支持的 Google API、服务和网域。如需了解详情以及可用的服务和网域列表 直到
private.googleapis.com
,请参见 网络配置 。
除了两种网络类型之外,您还可以为任何类型的环境启用或停用对自定义 VPC 网络的访问权限。根据您配置 VPC 网络的方式,专用 IP 环境可以通过 VPC 网络访问互联网。
Cloud Composer 2 网络与 Cloud Composer 3 网络对比
在 Cloud Composer 3 中,专用 IP 环境无需配置。
以下 Cloud Composer 2 网络功能在 Cloud Composer 3 中已不再适用:
配置专用 IP 网络。您无需指定 IP 地址范围、网络,也不需要配置连接性和防火墙规则。
配置 Private Service Connect。 您无需为 Private Service Connect 设置范围 。
使用以非公开方式使用的公共 IP 范围。此功能提供了一个选项来扩展可用 IP 范围,但在 Cloud Composer 3 中不需要此选项。
使用 IP 伪装代理。您无需进行配置 Cloud Composer 3 中的集群连接。
配置已获授权的网络。不是 访问环境的集群。
更改环境网络类型
控制台
在 Google Cloud 控制台中,前往环境页面。
在环境列表中,点击您的环境名称。环境详情页面会打开。
转到环境配置标签页。
在网络配置部分中,找到网络类型项,然后点击修改。
在 Networking type 对话框中,选择:
- 公共 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
字段中:- 指定
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
:true
表示专用 IP,false
表示公共 IP
示例(专用 IP):
resource "google_composer_environment" "example" {
provider = google-beta
name = "example-environment"
region = "us-central1"
config {
enable_private_environment = true
... other configuration parameters
}
}