Cloud Composer 1 | Cloud Composer 2 | Cloud Composer 3
In questa pagina viene spiegato come configurare le reti autorizzate per il tuo ambiente.
Informazioni sulle reti autorizzate in Cloud Composer
Le reti autorizzate ti consentono di specificare Intervalli CIDR che possono accedere al piano di controllo del cluster dell'ambiente utilizzando HTTPS.
Ad esempio, in Cloud Composer 1, l'accesso al cluster del tuo ambiente
negli ambienti IP privati,
esegui i comandi dell'interfaccia a riga di comando di Airflow(gcloud composer environments run
).
Le reti da cui provengono queste richieste devono essere autorizzate ad accedere
il piano di controllo del cluster dell'ambiente.
Reti autorizzate in ambienti IP pubblici e privati
Puoi specificare le reti autorizzate sia per l'IP pubblico che Ambienti IP privati.
Negli ambienti IP privati puoi configurare le reti autorizzate per consentire di un determinato intervallo di indirizzi IP per accedere al piano di controllo nel cluster dell'ambiente di lavoro. Ad esempio, per consentire a determinati intervalli IP esegui i comandi
kubectl
e l'interfaccia a riga di comando di Airflow. Di per impostazione predefinita, negli ambienti IP privati puoi eseguire questi comandi solo da un VM nella subnet VPC dell'ambiente IP privato.Negli ambienti IP pubblico, puoi configurare le reti autorizzate per limitare l'intervallo di indirizzi IP che possono accedere al piano di controllo nel cluster dell'ambiente di lavoro. Per impostazione predefinita, negli ambienti IP pubblici non sono Limitazioni sugli intervalli IP che possono eseguire
kubectl
e i comandi dell'interfaccia a riga di comando di Airflow.
Prima di iniziare
Puoi specificare le reti autorizzate solo utilizzando
gcloud
, Terraform e l'API REST.Puoi specificare le reti autorizzate crea un ambiente oppure per un ambiente esistente.
Crea ambienti con reti autorizzate
gcloud
Per creare un ambiente con reti autorizzate, utilizza
--enable-master-authorized-networks
quando crei un
completamente gestito di Google Cloud. Quindi, fornisci un elenco separato da virgole di intervalli CIDR in
l'argomento --master-authorized-networks
.
Per specificare le reti autorizzate per un ambiente IP privato:
gcloud composer environments create ENVIRONMENT_NAME \
--location LOCATION \
--image-version composer-1.20.12-airflow-1.10.15 \
--enable-ip-alias \
--enable-private-environment \
--enable-master-authorized-networks \
--master-authorized-networks AUTHORIZED_NETWORKS_IP_RANGES
Sostituisci:
ENVIRONMENT_NAME
con il nome dell'ambiente.LOCATION
con la regione in cui si trova l'ambiente individuarlo.AUTHORIZED_NETWORKS_IP_RANGES
con un elenco di indirizzi IP separati da virgole nella notazione CIDR. Questi intervalli vengono aggiunti come autorizzati per il cluster del tuo ambiente.
Esempio (ambiente IP privato):
gcloud composer environments create example-environment \
--location us-central1 \
--image-version composer-1.20.12-airflow-1.10.15 \
--enable-ip-alias \
--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
Costruire
una richiesta API environments.create
. Nella
risorsa Ambiente, specifica
per un ambiente con reti autorizzate.
Per specificare le reti autorizzate per un ambiente IP privato:
// POST https://composer.googleapis.com/v1/{parent=projects/*/locations/*}/environments
{
"name": "ENVIRONMENT_NAME",
"config": {
"nodeConfig": {
"ipAllocationPolicy": {
"useIpAliases": true,
}
},
"privateEnvironmentConfig": {
"enablePrivateEnvironment": true,
},
"masterAuthorizedNetworksConfig": {
"enabled": true,
"cidrBlocks": [
{
"displayName": "AUTHORIZED_NETWORK_NAME",
"cidrBlock": "AUTHORIZED_NETWORK_RANGE"
}
]
}
}
}
Sostituisci:
ENVIRONMENT_NAME
con il nome dell'ambiente.AUTHORIZED_NETWORK_NAME
con il nome dell'IP della rete autorizzata intervallo. Devi utilizzare questo nome per identificare il blocco. Questo campo è facoltativo.AUTHORIZED_NETWORK_RANGE
con un indirizzo IP nella notazione CIDR. Questo intervallo è stato aggiunto come per il cluster del tuo ambiente.- Se vuoi utilizzare più intervalli IP, aggiungi altri intervalli a
cidrBlocks
.
Esempio (ambiente IP privato):
// POST https://composer.googleapis.com/v1/{parent=projects/*/locations/*}/environments
{
"name": "example-environment",
"config": {
"nodeConfig": {
"ipAllocationPolicy": {
"useIpAliases": true,
}
},
"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
Quando crei un ambiente, il master_authorized_networks_config
blocco nel blocco config
controlla le reti autorizzate per il tuo
completamente gestito di Google Cloud.
Per specificare le reti autorizzate per un ambiente IP privato:
resource "google_composer_environment" "example_environment" {
provider = google-beta
name = "ENVIRONMENT_NAME"
region = "LOCATION"
config {
node_config {
ip_allocation_policy = [{
use_ip_aliases = true
}]
}
private_environment_config {
// Private environment parameters
}
master_authorized_networks_config {
enabled = true
cidr_blocks {
cidr_block = "AUTHORIZED_NETWORK_RANGE"
display_name = "AUTHORIZED_NETWORK_NAME"
}
}
}
}
Sostituisci:
ENVIRONMENT_NAME
con il nome dell'ambiente.LOCATION
con la regione in cui si trova l'ambiente individuarlo.AUTHORIZED_NETWORK_RANGE
con un indirizzo IP nella notazione CIDR. Questo intervallo è stato aggiunto come per il cluster del tuo ambiente.AUTHORIZED_NETWORK_NAME
con il nome dell'IP della rete autorizzata intervallo. Devi utilizzare questo nome per identificare il blocco.- Se vuoi utilizzare diversi intervalli IP, aggiungi altri blocchi
cidr_blocks
a amaster_authorized_networks_config
.
Esempio (ambiente IP privato):
resource "google_composer_environment" "example_environment" {
provider = google-beta
name = "example-environment"
region = "us-central1"
config {
node_config {
// Specify your network and subnetwork
network = google_compute_network.example_network.id
subnetwork = google_compute_subnetwork.example_subnet.id
ip_allocation_policy = [{
use_ip_aliases = true
}]
}
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"
}
}
}
}
Specifica le reti autorizzate per un ambiente esistente
Puoi specificare le reti autorizzate per un ambiente esistente.
gcloud
Per specificare le reti autorizzate, utilizza --enable-master-authorized-networks
. Quindi, fornisci un elenco separato da virgole di intervalli CIDR in
l'argomento --master-authorized-networks
.
gcloud composer environments update ENVIRONMENT_NAME \
--location LOCATION \
--enable-master-authorized-networks \
--master-authorized-networks AUTHORIZED_NETWORKS_IP_RANGES
Sostituisci:
ENVIRONMENT_NAME
con il nome dell'ambiente.LOCATION
con la regione in cui si trova l'ambiente individuarlo.AUTHORIZED_NETWORKS_IP_RANGES
con un elenco di indirizzi IP separati da virgole nella notazione CIDR. Questi intervalli vengono aggiunti come autorizzati per il cluster del tuo ambiente.
Esempio:
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
Creare una richiesta API
environments.patch
.In questa richiesta:
Nel parametro
updateMask
, specifica la mascheraconfig.softwareConfig.masterAuthorizedNetworksConfig
.Nel corpo della richiesta, specifica gli intervalli CIDR per le reti autorizzate.
"config": {
"masterAuthorizedNetworksConfig": {
"enabled": true,
"cidrBlocks": [
{
"displayName": "AUTHORIZED_NETWORK_NAME",
"cidrBlock": "AUTHORIZED_NETWORK_RANGE"
}
]
}
}
Sostituisci:
AUTHORIZED_NETWORK_NAME
con il nome dell'IP della rete autorizzata intervallo. Devi utilizzare questo nome per identificare il blocco. Questo campo è facoltativo.AUTHORIZED_NETWORK_RANGE
con un indirizzo IP nella notazione CIDR. Questo intervallo è stato aggiunto come per il cluster dell'ambiente.- Se vuoi utilizzare più intervalli IP, aggiungi altri intervalli a
cidrBlocks
.
Esempio:
// 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
Il blocco master_authorized_networks_config
nei controlli del blocco config
autorizzate per il tuo ambiente.
Per aggiungere reti autorizzate per un ambiente IP privato, aggiungi questo blocco a definizione dell'ambiente:
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"
}
}
}
}
Sostituisci:
AUTHORIZED_NETWORK_RANGE
con un indirizzo IP nella notazione CIDR. Questo intervallo è stato aggiunto come per il cluster del tuo ambiente.AUTHORIZED_NETWORK_NAME
con il nome dell'IP della rete autorizzata intervallo. Devi utilizzare questo nome per identificare il blocco.- Se vuoi utilizzare diversi intervalli IP, aggiungi altri blocchi
cidr_blocks
a amaster_authorized_networks_config
.
Esempio:
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"
}
}
}
}
Disabilita reti autorizzate
Puoi disabilitare le reti autorizzate per un ambiente esistente:
- Per gli ambienti IP privati, rimuove l'accesso per gli intervalli che erano aggiunta in precedenza come rete autorizzata.
Per gli ambienti IP pubblici, vengono rimosse le limitazioni configurate in precedenza.
gcloud
Per disabilitare le reti autorizzate, utilizza --disable-master-authorized-networks
.
gcloud composer environments update ENVIRONMENT_NAME \
--location LOCATION \
--disable-master-authorized-networks
Sostituisci:
ENVIRONMENT_NAME
con il nome dell'ambiente.LOCATION
con la regione in cui si trova l'ambiente individuarlo.
Esempio:
gcloud composer environments update example-environment \
--location us-central1 \
--disable-master-authorized-networks
API
Creare una richiesta API
environments.patch
.In questa richiesta:
Nel parametro
updateMask
, specifica la mascheraconfig.softwareConfig.masterAuthorizedNetworksConfig
.Nel corpo della richiesta, specifica
false
nel campoenabled
.
"config": {
"masterAuthorizedNetworksConfig": {
"enabled": false
}
}
Esempio:
// PATCH https://composer.googleapis.com/v1/projects/example-project/
// locations/us-central1/environments/example-environment?updateMask=
// config.softwareConfig.masterAuthorizedNetworksConfig
"config": {
"masterAuthorizedNetworksConfig": {
"enabled": false,
}
}
Terraform
Il blocco master_authorized_networks_config
nei controlli del blocco config
autorizzate per il tuo ambiente.
Per disabilitare le reti autorizzate, imposta il campo enabled
il blocco master_authorized_networks_config
per false
.
Esempio:
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
}
}
}