Autorisierte Netzwerke in Cloud Composer konfigurieren

Cloud Composer 1 Cloud Composer 2

Auf dieser Seite wird erläutert, wie Sie autorisierte Netzwerke für Ihre Umgebung konfigurieren.

Autorisierte Netzwerke in Cloud Composer

Mit autorisierten Netzwerken können Sie CIDR-Bereiche angeben, die über HTTPS auf die Cluster-Steuerungsebene Ihrer Umgebung zugreifen können.

Beispielsweise ist ein solcher Zugriff auf den Cluster Ihrer Umgebung in privaten IP-Umgebungen erforderlich, um Befehle der Airflow-Befehlszeile auszuführen (gcloud composer environments run). Netzwerke, von denen solche Anfragen stammen, müssen für den Zugriff auf die Steuerungsebene des Clusters Ihrer Umgebung autorisiert sein.

Autorisierte Netzwerke in privaten und öffentlichen IP-Umgebungen

Sie können autorisierte Netzwerke sowohl für öffentliche IP-Umgebungen als auch für private IP-Umgebungen angeben.

  • In privaten IP-Umgebungen können Sie autorisierte Netzwerke konfigurieren, um einem bestimmten Bereich von IP-Adressen Zugriff auf die Steuerungsebene des Clusters Ihrer Umgebung zu gewähren. So können Sie beispielsweise festlegen, dass bestimmte IP-Bereiche Befehle der Airflow-Befehlszeile ausführen können. Standardmäßig können Sie in privaten IP-Umgebungen Befehle der Airflow-Befehlszeile nur von einer VM im VPC-Subnetzwerk der privaten IP-Umgebung ausführen.

  • In öffentlichen IP-Umgebungen können Sie autorisierte Netzwerke konfigurieren, um den Bereich der IP-Adressen einzuschränken, die auf die Steuerungsebene des Clusters Ihrer Umgebung zugreifen können. Standardmäßig gibt es in öffentlichen IP-Umgebungen keine Einschränkungen für IP-Bereiche, die Befehle der Airflow-Befehlszeile ausführen können.

Hinweis

Umgebungen mit autorisierten Netzwerken erstellen

gcloud

Verwenden Sie beim Erstellen einer Umgebung das Argument --enable-master-authorized-networks, um eine Umgebung mit autorisierten Netzwerken zu erstellen. Geben Sie dann eine durch Kommas getrennte Liste von CIDR-Bereichen im Argument --master-authorized-networks an.

So geben Sie autorisierte Netzwerke für eine private IP-Umgebung an:

gcloud beta composer environments create ENVIRONMENT_NAME \
    --location LOCATION \
    --enable-ip-alias \
    --enable-private-environment \
    --enable-master-authorized-networks \
    --master-authorized-networks AUTHORIZED_NETWORKS_IP_RANGES

Ersetzen Sie:

  • ENVIRONMENT_NAME durch den Namen der Umgebung.
  • LOCATION durch die Region, in der sich die Umgebung befindet.
  • AUTHORIZED_NETWORKS_IP_RANGES durch eine durch Kommas getrennte Liste von IP-Adressbereichen in der CIDR-Notation. Diese Bereiche werden als autorisierte Netzwerke für den Cluster Ihrer Umgebung hinzugefügt.

Beispiel (private IP-Umgebung):

gcloud beta composer environments create example-environment \
    --location us-central1 \
    --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

Erstellen Sie eine API-Anfrage environments.create. Geben Sie in der Umgebungsressource die Konfigurationsparameter für eine Umgebung mit autorisierten Netzwerken an.

So geben Sie autorisierte Netzwerke für eine private IP-Umgebung an:

// POST https://composer.googleapis.com/v1beta1/{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"
        }
      ]
    }
  }
}

Ersetzen Sie:

  • ENVIRONMENT_NAME durch den Namen der Umgebung.
  • AUTHORIZED_NETWORK_NAME durch den Namen des autorisierten Netzwerk-IP-Bereichs. Mit diesem Namen identifizieren Sie den Block. Dieses Feld ist optional.
  • AUTHORIZED_NETWORK_RANGE durch einen IP-Adressbereich in der CIDR-Notation. Dieser Bereich wird als autorisierte Netzwerke für den Cluster Ihrer Umgebung hinzugefügt.
  • Wenn Sie mehrere IP-Bereiche verwenden möchten, fügen Sie zusätzliche Bereiche zu cidrBlocks hinzu.

Beispiel (private IP-Umgebung):

// POST https://composer.googleapis.comv1beta1/{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

In der Vorschau ist es nicht möglich, autorisierte Netzwerke mit Terraform anzugeben.

Autorisierte Netzwerke für eine vorhandene Umgebung angeben

Sie können autorisierte Netzwerke für eine vorhandene Umgebung angeben.

gcloud

Verwenden Sie das Argument --enable-master-authorized-networks, um autorisierte Netzwerke anzugeben. Geben Sie dann eine durch Kommas getrennte Liste von CIDR-Bereichen im Argument --master-authorized-networks an.

gcloud beta composer environments update ENVIRONMENT_NAME \
  --location LOCATION \
  --enable-master-authorized-networks \
  --master-authorized-networks AUTHORIZED_NETWORKS_IP_RANGES

Ersetzen Sie:

  • ENVIRONMENT_NAME durch den Namen der Umgebung.
  • LOCATION durch die Region, in der sich die Umgebung befindet.
  • AUTHORIZED_NETWORKS_IP_RANGES durch eine durch Kommas getrennte Liste von IP-Adressbereichen in der CIDR-Notation. Diese Bereiche werden als autorisierte Netzwerke für den Cluster Ihrer Umgebung hinzugefügt.

Beispiel:

gcloud beta 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

  1. Erstellen Sie eine environments.patch-API-Anfrage.

  2. In dieser Anfrage:

    1. Geben Sie im updateMask-Parameter die config.softwareConfig.masterAuthorizedNetworksConfig-Maske an.

    2. Geben Sie im Anfragetext CIDR-Bereiche für autorisierte Netzwerke an.

"config": {

  "masterAuthorizedNetworksConfig": {
    "enabled": true,
    "cidrBlocks": [
      {
        "displayName": "AUTHORIZED_NETWORK_NAME",
        "cidrBlock": "AUTHORIZED_NETWORK_RANGE"
      }
    ]
  }
}

Ersetzen Sie:

  • AUTHORIZED_NETWORK_NAME durch den Namen des autorisierten Netzwerk-IP-Bereichs. Mit diesem Namen identifizieren Sie den Block. Dieses Feld ist optional.
  • AUTHORIZED_NETWORK_RANGE durch einen IP-Adressbereich in der CIDR-Notation. Dieser Bereich wird als autorisiertes Netzwerk für den Cluster Ihrer Umgebung hinzugefügt.
  • Wenn Sie mehrere IP-Bereiche verwenden möchten, fügen Sie zusätzliche Bereiche zu cidrBlocks hinzu.

Beispiel:

// PATCH https://composer.googleapis.com/v1beta1/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

In der Vorschau ist es nicht möglich, autorisierte Netzwerke mit Terraform anzugeben.

Autorisiertes Netzwerk deaktivieren

Sie können autorisierte Netzwerke für eine vorhandene Umgebung deaktivieren:

  • Bei Umgebungen mit privaten IP-Adressen wird der Zugriff für Bereiche entfernt, die zuvor als autorisiertes Netzwerk hinzugefügt wurden.
  • Bei öffentlichen IP-Umgebungen werden zuvor konfigurierte Einschränkungen aufgehoben.

gcloud

Verwenden Sie das Argument --disable-master-authorized-networks, um autorisierte Netzwerke zu deaktivieren.

gcloud beta composer environments update ENVIRONMENT_NAME \
  --location LOCATION \
  --disable-master-authorized-networks

Ersetzen Sie:

  • ENVIRONMENT_NAME durch den Namen der Umgebung.
  • LOCATION durch die Region, in der sich die Umgebung befindet.

Beispiel:

gcloud beta composer environments update example-environment \
  --location us-central1 \
  --disable-master-authorized-networks

API

  1. Erstellen Sie eine environments.patch-API-Anfrage.

  2. In dieser Anfrage:

    1. Geben Sie im updateMask-Parameter die config.softwareConfig.masterAuthorizedNetworksConfig-Maske an.

    2. Geben Sie im Anfragetext false im Feld enabled an.

"config": {

  "masterAuthorizedNetworksConfig": {
    "enabled": false
  }
}

Beispiel:

// PATCH https://composer.googleapis.com/v1beta1/projects/example-project/
// locations/us-central1/environments/example-environment?updateMask=
// config.softwareConfig.masterAuthorizedNetworksConfig

"config": {
  "masterAuthorizedNetworksConfig": {
    "enabled": false,
  }
}

Terraform

In der Vorschau ist es nicht möglich, autorisierte Netzwerke mit Terraform anzugeben.

Weitere Informationen