Cloud Composer 3 | Cloud Composer 2 | Cloud Composer 1
En esta página se explica cómo configurar redes autorizadas en tu entorno.
Información sobre las redes autorizadas en Cloud Composer
Las redes autorizadas te permiten especificar intervalos CIDR que pueden acceder al plano de control del clúster de tu entorno mediante HTTPS.
Por ejemplo, en Cloud Composer 2, se requiere este acceso al clúster de tu entorno en los entornos de IP privada para ejecutar comandos kubectl
en el clúster de tu entorno. Las redes desde las que se originan estas solicitudes deben tener autorización para acceder al plano de control del clúster de su entorno.
Redes autorizadas en entornos de IP pública y privada
Puedes especificar redes autorizadas tanto para IP pública como para entornos de IP privada.
En los entornos de IP privada, puedes configurar redes autorizadas para permitir que un intervalo de direcciones IP acceda al plano de control del clúster de tu entorno. Por ejemplo, para permitir que determinados intervalos de IP ejecuten comandos
kubectl
. De forma predeterminada, en los entornos de IP privada, solo puedes ejecutar estos comandos desde una VM de la subred de VPC del entorno de IP privada.En entornos de IP pública, puede configurar redes autorizadas para restringir el intervalo de direcciones IP que pueden acceder al plano de control del clúster de su entorno. De forma predeterminada, en los entornos de IP pública no hay restricciones en los intervalos de IP que pueden ejecutar comandos
kubectl
.
Antes de empezar
Solo puedes especificar redes autorizadas mediante
gcloud
, Terraform y la API REST.Puede especificar redes autorizadas cuando cree un entorno o para un entorno que ya tenga.
Crear entornos con redes autorizadas
gcloud
Para crear un entorno con redes autorizadas, usa el argumento --enable-master-authorized-networks
al crear un entorno. A continuación, proporcione una lista separada por comas de intervalos CIDR en el argumento --master-authorized-networks
.
Para especificar redes autorizadas en un entorno de IP privada, sigue estos pasos:
gcloud composer environments create ENVIRONMENT_NAME \
--location LOCATION \
--image-version composer-2.13.9-airflow-2.10.5 \
--enable-private-environment \
--enable-master-authorized-networks \
--master-authorized-networks AUTHORIZED_NETWORKS_IP_RANGES
Sustituye:
ENVIRONMENT_NAME
con el nombre del entorno.LOCATION
por la región en la que se encuentra el entorno.AUTHORIZED_NETWORKS_IP_RANGES
con una lista de intervalos de direcciones IP separados por comas en notación CIDR. Estos intervalos se añaden como redes autorizadas al clúster de tu entorno.
Ejemplo (entorno de IP privada):
gcloud composer environments create example-environment \
--location us-central1 \
--image-version composer-2.13.9-airflow-2.10.5 \
--enable-private-environment \
--enable-privately-used-public-ips \
--enable-master-authorized-networks \
--master-authorized-networks 192.0.2.0/23,192.0.4.0/23
API
Crea una solicitud de la API environments.create
. En el recurso Environment, especifique los parámetros de configuración de un entorno con redes autorizadas.
Para especificar redes autorizadas en un entorno de IP privada, sigue estos pasos:
// POST https://composer.googleapis.com/v1/{parent=projects/*/locations/*}/environments
{
"name": "ENVIRONMENT_NAME",
"config": {
"privateEnvironmentConfig": {
"enablePrivateEnvironment": true,
},
"masterAuthorizedNetworksConfig": {
"enabled": true,
"cidrBlocks": [
{
"displayName": "AUTHORIZED_NETWORK_NAME",
"cidrBlock": "AUTHORIZED_NETWORK_RANGE"
}
]
}
}
}
Sustituye:
ENVIRONMENT_NAME
con el nombre del entorno.AUTHORIZED_NETWORK_NAME
con el nombre de la red autorizada intervalo de IPs. Este nombre te servirá para identificar el bloque. Este campo es opcional.AUTHORIZED_NETWORK_RANGE
con un intervalo de direcciones IP en notación CIDR. Este intervalo se añade como red autorizada al clúster de tu entorno.- Si quieres usar varios intervalos de IPs, añade intervalos adicionales a
cidrBlocks
.
Ejemplo (entorno de IP privada):
// POST https://composer.googleapis.com/v1/{parent=projects/*/locations/*}/environments
{
"name": "example-environment",
"config": {
"privateEnvironmentConfig": {
"enablePrivateEnvironment": true,
},
"masterAuthorizedNetworksConfig": {
"enabled": true,
"cidrBlocks": [
{
"displayName": "example_range_1",
"cidrBlock": "192.0.2.0/23"
},
{
"displayName": "example_range_2",
"cidrBlock": "192.0.4.0/23"
}
]
}
}
}
Terraform
Cuando creas un entorno, el bloque master_authorized_networks_config
del bloque config
controla las redes autorizadas de tu entorno.
Para especificar redes autorizadas en un entorno de IP privada, sigue estos pasos:
resource "google_composer_environment" "example_environment" {
provider = google-beta
name = "ENVIRONMENT_NAME"
region = "LOCATION"
config {
private_environment_config {
// Private environment parameters
}
master_authorized_networks_config {
enabled = true
cidr_blocks {
cidr_block = "AUTHORIZED_NETWORK_RANGE"
display_name = "AUTHORIZED_NETWORK_NAME"
}
}
}
}
Sustituye:
ENVIRONMENT_NAME
con el nombre del entorno.LOCATION
por la región en la que se encuentra el entorno.AUTHORIZED_NETWORK_RANGE
con un intervalo de direcciones IP en notación CIDR. Este intervalo se añade como red autorizada al clúster de tu entorno.AUTHORIZED_NETWORK_NAME
con el nombre de la red autorizada intervalo de IPs. Este nombre te servirá para identificar el bloque.- Si quieres usar varios intervalos de IP, añade bloques
cidr_blocks
adicionales amaster_authorized_networks_config
.
Ejemplo (entorno de IP privada):
resource "google_composer_environment" "example_environment" {
provider = google-beta
name = "example-environment"
region = "us-central1"
config {
private_environment_config {
// Private environment parameters
}
master_authorized_networks_config {
enabled = true
cidr_blocks {
cidr_block = "192.0.2.0/23"
display_name = "example_range_1"
}
cidr_blocks {
cidr_block = "192.0.4.0/23"
display_name = "example_range_2"
}
}
}
}
Especificar redes autorizadas en un entorno
Puedes especificar redes autorizadas para un entorno que ya tengas.
gcloud
Para especificar las redes autorizadas, usa el argumento --enable-master-authorized-networks
. A continuación, proporcione una lista separada por comas de intervalos CIDR en el argumento --master-authorized-networks
.
gcloud composer environments update ENVIRONMENT_NAME \
--location LOCATION \
--enable-master-authorized-networks \
--master-authorized-networks AUTHORIZED_NETWORKS_IP_RANGES
Sustituye:
ENVIRONMENT_NAME
con el nombre del entorno.LOCATION
por la región en la que se encuentra el entorno.AUTHORIZED_NETWORKS_IP_RANGES
con una lista de intervalos de direcciones IP separados por comas en notación CIDR. Estos intervalos se añaden como redes autorizadas al clúster de tu entorno.
Ejemplo:
gcloud composer environments update example-environment \
--location us-central1 \
--enable-master-authorized-networks \
--master-authorized-networks 192.0.2.0/23,192.0.4.0/23
API
Crea una solicitud de la API
environments.patch
.En esta solicitud:
En el parámetro
updateMask
, especifique la máscaraconfig.softwareConfig.masterAuthorizedNetworksConfig
.En el cuerpo de la solicitud, especifica los intervalos CIDR de las redes autorizadas.
"config": {
"masterAuthorizedNetworksConfig": {
"enabled": true,
"cidrBlocks": [
{
"displayName": "AUTHORIZED_NETWORK_NAME",
"cidrBlock": "AUTHORIZED_NETWORK_RANGE"
}
]
}
}
Sustituye:
AUTHORIZED_NETWORK_NAME
con el nombre de la red autorizada intervalo de IPs. Este nombre te servirá para identificar el bloque. Este campo es opcional.AUTHORIZED_NETWORK_RANGE
con un intervalo de direcciones IP en notación CIDR. Este intervalo se añade como red autorizada al clúster de tu entorno.- Si quieres usar varios intervalos de IPs, añade intervalos adicionales a
cidrBlocks
.
Ejemplo:
// PATCH https://composer.googleapis.com/v1/projects/example-project/
// locations/us-central1/environments/example-environment?updateMask=
// config.softwareConfig.masterAuthorizedNetworksConfig
"config": {
"masterAuthorizedNetworksConfig": {
"enabled": true,
"cidrBlocks": [
{
"displayName": "example_range_1",
"cidrBlock": "192.0.2.0/23"
},
{
"displayName": "example_range_2",
"cidrBlock": "192.0.4.0/23"
}
]
}
}
Terraform
El bloque master_authorized_networks_config
del bloque config
controla las redes autorizadas de tu entorno.
Para añadir redes autorizadas a un entorno de IP privada, añade este bloque a la definición del entorno:
resource "google_composer_environment" "example_environment" {
provider = google-beta
name = "example_environment"
region = "us-central1"
config {
// Other environment parameters
master_authorized_networks_config {
enabled = true
cidr_blocks {
cidr_block = "AUTHORIZED_NETWORK_RANGE"
display_name = "AUTHORIZED_NETWORK_NAME"
}
}
}
}
Sustituye:
AUTHORIZED_NETWORK_RANGE
con un intervalo de direcciones IP en notación CIDR. Este intervalo se añade como red autorizada al clúster de tu entorno.AUTHORIZED_NETWORK_NAME
con el nombre de la red autorizada intervalo de IPs. Este nombre te servirá para identificar el bloque.- Si quieres usar varios intervalos de IP, añade bloques
cidr_blocks
adicionales amaster_authorized_networks_config
.
Ejemplo:
resource "google_composer_environment" "example_environment" {
provider = google-beta
name = "example-environment"
region = "us-central1"
config {
// Other environment parameters
master_authorized_networks_config {
enabled = true
cidr_blocks {
cidr_block = "192.0.2.0/23"
display_name = "example_range_1"
}
cidr_blocks {
cidr_block = "192.0.4.0/23"
display_name = "example_range_2"
}
}
}
}
Inhabilitar redes autorizadas
Para inhabilitar las redes autorizadas de un entorno, sigue estos pasos:
- En los entornos de IP privada, se elimina el acceso a los intervalos que se habían añadido anteriormente como redes autorizadas.
En los entornos de IP pública, se eliminan las restricciones configuradas anteriormente.
gcloud
Para inhabilitar las redes autorizadas, usa el argumento --disable-master-authorized-networks
.
gcloud composer environments update ENVIRONMENT_NAME \
--location LOCATION \
--disable-master-authorized-networks
Sustituye:
ENVIRONMENT_NAME
con el nombre del entorno.LOCATION
por la región en la que se encuentra el entorno.
Ejemplo:
gcloud composer environments update example-environment \
--location us-central1 \
--disable-master-authorized-networks
API
Crea una solicitud de la API
environments.patch
.En esta solicitud:
En el parámetro
updateMask
, especifique la máscaraconfig.softwareConfig.masterAuthorizedNetworksConfig
.En el cuerpo de la solicitud, especifica
false
en el campoenabled
.
"config": {
"masterAuthorizedNetworksConfig": {
"enabled": false
}
}
Ejemplo:
// PATCH https://composer.googleapis.com/v1/projects/example-project/
// locations/us-central1/environments/example-environment?updateMask=
// config.softwareConfig.masterAuthorizedNetworksConfig
"config": {
"masterAuthorizedNetworksConfig": {
"enabled": false,
}
}
Terraform
El bloque master_authorized_networks_config
del bloque config
controla las redes autorizadas de tu entorno.
Para inhabilitar las redes autorizadas, asigna el valor false
al campo enabled
del bloque master_authorized_networks_config
.
Ejemplo:
resource "google_composer_environment" "example_environment" {
provider = google-beta
name = "example_environment"
region = "us-central1"
config {
// Other environment parameters
master_authorized_networks_config {
enabled = false
}
}
}