Mengonfigurasi Private Service Connect di Cloud Composer

Cloud Composer 1 | Cloud Composer 2

Halaman ini menjelaskan cara membuat lingkungan Private IP yang menggunakan Private Service Connect, bukan peering VPC.

Untuk mengetahui informasi umum tentang cara membuat lingkungan IP Pribadi, lihat Mengonfigurasi lingkungan IP pribadi.

Tentang Private Service Connect di Cloud Composer

Komponen lingkungan Anda didistribusikan antara tenant dan project pelanggan. Dalam lingkungan IP Pribadi, komponen yang terletak di kedua project ini terhubung menggunakan peering VPC. Peering VPC memiliki beberapa batasan, termasuk batas jumlah maksimum peering dalam VPC. Batas ini dapat lebih jelas jika Anda menggunakan jaringan berskala besar dengan lingkungan Cloud Composer.

Dengan dukungan Private Service Connect di Cloud Composer, lingkungan IP pribadi Anda dapat berkomunikasi secara internal tanpa menggunakan peering VPC. Lingkungan tersebut menggunakan arsitektur IP Pribadi dengan PSC.

Sebelum memulai

  • Dukungan Private Service Connect hanya tersedia di Cloud Composer 2.

  • Anda hanya dapat mengaktifkan Private Service Connect saat membuat lingkungan baru. Anda tidak dapat beralih lingkungan yang ada untuk menggunakan Private Service Connect.

  • Lingkungan Anda harus berupa lingkungan IP Pribadi. Karena peering VPC tidak digunakan, Anda tidak perlu menentukan rentang CIDR untuk instance Cloud SQL dan jaringan Cloud Composer internal.

  • Jika batasan kebijakan organisasi Nonaktifkan Private Service Connect for Consumers menolak endpoint SERVICE_PRODUCER, Anda tidak dapat membuat lingkungan dengan Private Service Connect. Kebijakan ini tidak memengaruhi lingkungan Cloud Composer yang ada dengan PSC. Lingkungan tersebut dapat beroperasi jika kebijakan ini diaktifkan.

Mengaktifkan Private Service Connect saat Anda membuat lingkungan

Konsol

Untuk membuat lingkungan dengan Private Service Connect, pilih jenis konektivitas Private Service Connect saat Anda membuat lingkungan IP Pribadi. Kemudian, tentukan subnetwork untuk koneksi Private Service Connect.

Saat Anda membuat lingkungan IP Pribadi:

  1. Di bagian Network configuration, luaskan item Show network configuration.

  2. Di bagian Networking type, pilih opsi Private IP environment untuk membuat lingkungan IP Pribadi.

  3. Di bagian ComposerConnectivity, pilih Private Service Connect.

  4. Di menu drop-down Composer connection subnetwork, pilih subnetwork untuk endpoint Private Service Connect.

    Anda dapat menggunakan subnetwork lingkungan Anda.

    Sebagai alternatif, Anda dapat menentukan subnetwork yang berbeda. Tindakan ini akan memberi Anda kontrol lebih besar atas rentang CIDR tempat alamat IP untuk endpoint PSC dipilih.Rentang ini dapat digunakan bersama oleh beberapa lingkungan Cloud Composer. Setiap lingkungan memerlukan satu alamat IP.

  5. Tentukan parameter lain untuk lingkungan IP Pribadi Anda.

gcloud

Untuk membuat lingkungan dengan Private Service Connect, gunakan argumen --connection-subnetwork saat Anda membuat lingkungan IP Pribadi. Kemudian, tentukan subnetwork untuk koneksi Private Service Connect.

gcloud composer environments create ENVIRONMENT_NAME \
    --location LOCATION \
    --image-version composer-2.6.6-airflow-2.6.3 \
    --enable-private-environment \
    --web-server-allow-all \
    --connection-subnetwork ENVIRONMENT_PSC_SUBNETWORK

Ganti:

  • ENVIRONMENT_NAME dengan nama lingkungan.
  • LOCATION dengan region tempat lingkungan berada.
  • ENVIRONMENT_PSC_SUBNETWORK dengan URI subnetwork untuk endpoint Private Service Connect.

    Anda dapat menggunakan subnetwork lingkungan Anda.

    Sebagai alternatif, Anda dapat menentukan subnetwork yang berbeda. Tindakan ini akan memberi Anda kontrol lebih besar atas rentang CIDR tempat alamat IP untuk endpoint PSC dipilih. Rentang ini dapat digunakan bersama oleh beberapa lingkungan Cloud Composer. Setiap lingkungan memerlukan satu alamat IP.

Contoh:

gcloud composer environments create example-environment \
    --location us-central1 \
    --image-version composer-2.6.6-airflow-2.6.3 \
    --enable-private-environment \
    --web-server-allow-all \
    --connection-subnetwork "projects/example-project/regions/us-central1/subnetworks/default"

API

Buat permintaan API environments.create. Di resource Environment, tentukan parameter konfigurasi untuk koneksi Private Service Connect.

// POST https://composer.googleapis.com/v1/{parent=projects/*/locations/*}/environments

{
  "name": "ENVIRONMENT_NAME",

  "config": {
    "softwareConfig": {
      "imageVersion": "composer-2.6.6-airflow-2.6.3"
    },
    "nodeConfig": {
      "network": "ENVIRONMENT_NETWORK",
      "subnetwork": "ENVIRONMENT_SUBNETWORK"
    },
    "privateEnvironmentConfig": {
      "enablePrivateEnvironment": true,
      "privateClusterConfig": {
        "enablePrivateEndpoint": false
      },
      "cloudComposerConnectionSubnetwork": "ENVIRONMENT_PSC_SUBNETWORK"
    }
    "webServerNetworkAccessControl": {
      "allowedIpRanges": [
        {
          "value": "0.0.0.0/0",
          "description": "Allows access from all IPv4 addresses"
        },
        {
          "value": "::0/0",
          "description": "Allows access from all IPv6 addresses"
        }
      ]
    }
  }
}

Ganti:

  • ENVIRONMENT_NAME dengan nama lingkungan.
  • ENVIRONMENT_NETWORK dengan URI jaringan lingkungan Anda.
  • ENVIRONMENT_SUBNETWORK dengan URI subnetwork lingkungan Anda.
  • ENVIRONMENT_PSC_SUBNETWORK dengan URI subnetwork untuk endpoint PSC.

    Anda dapat menggunakan subnetwork lingkungan Anda.

    Sebagai alternatif, Anda dapat menentukan subnetwork yang berbeda. Tindakan ini akan memberi Anda kontrol lebih besar atas rentang CIDR tempat alamat IP untuk endpoint PSC dipilih. Rentang ini dapat digunakan bersama oleh beberapa lingkungan Cloud Composer. Setiap lingkungan memerlukan satu alamat IP.

Contoh:

// POST https://composer.googleapis.com/v1/{parent=projects/*/locations/*}/environments

{
  "name": "example-environment",
  "config": {

    "softwareConfig": {
      "imageVersion": "composer-2.6.6-airflow-2.6.3"
    },
    "nodeConfig": {
      "network": "projects/example-project/global/networks/default",
      "subnetwork": "projects/example-project/regions/us-central1/subnetworks/default"
    },
    "privateEnvironmentConfig": {
      "enablePrivateEnvironment": true,
      "privateClusterConfig": {
        "enablePrivateEndpoint": false
      },
      "cloudComposerConnectionSubnetwork": "projects/example-project/regions/us-central1/subnetworks/default"
    }
    "webServerNetworkAccessControl": {
      "allowedIpRanges": [
        {
          "value": "0.0.0.0/0",
          "description": "Allows access from all IPv4 addresses"
        },
        {
          "value": "::0/0",
          "description": "Allows access from all IPv6 addresses"
        }
      ]
    }
  }
}

Terraform

Saat Anda membuat lingkungan, kolom cloud_composer_connection_subnetwork di blok private_environment_config akan mengaktifkan Private Service Connect.

resource "google_composer_environment" "example_environment" {
  provider = google-beta
  name = "ENVIRONMENT_NAME"
  region = "LOCATION"

  config {

    software_config {
      image_version = "composer-2.6.6-airflow-2.6.3"
    }

    node_config {
      network = "ENVIRONMENT_NETWORK"
      subnetwork = "ENVIRONMENT_SUBNETWORK"

    }

    private_environment_config {
      // Other private IP environment parameters
      cloud_composer_connection_subnetwork = "ENVIRONMENT_PSC_SUBNETWORK"
    }

    web_server_network_access_control  {
      allowed_ip_range {
        value = "0.0.0.0/0"
        description = "Allows access from all IPv4 addresses"
      }

      allowed_ip_range {
        value = "::0/0"
        description = "Allows access from all IPv6 addresses"
      }
    }
  }
}

Ganti:

  • ENVIRONMENT_NAME dengan nama lingkungan.
  • ENVIRONMENT_NETWORK dengan URI jaringan lingkungan Anda.
  • ENVIRONMENT_SUBNETWORK dengan URI subnetwork lingkungan Anda.
  • ENVIRONMENT_PSC_SUBNETWORK dengan URI subnetwork untuk endpoint PSC.

    Anda dapat menggunakan subnetwork lingkungan Anda.

    Sebagai alternatif, Anda dapat menentukan subnetwork yang berbeda. Tindakan ini akan memberi Anda kontrol lebih besar atas rentang CIDR tempat alamat IP untuk endpoint PSC dipilih. Rentang ini dapat digunakan bersama oleh beberapa lingkungan Cloud Composer. Setiap lingkungan memerlukan satu alamat IP.

Contoh:

resource "google_composer_environment" "example" {
  provider = google-beta
  name = "example-environment"
  region = "us-central1"

  config {
    environment_size = "ENVIRONMENT_SIZE_SMALL"

    software_config {
      image_version = "composer-2.6.6-airflow-2.6.3"
    }

    node_config {
      network = "projects/example-project/global/networks/default"
      subnetwork = "projects/example-project/regions/us-central1/subnetworks/default"
    }

    private_environment_config {
      // Other private IP environment parameters
      enable_private_endpoint = "true"
      cloud_composer_connection_subnetwork = "projects/example-project/regions/us-central1/subnetworks/default"
    }

    web_server_network_access_control  {
      allowed_ip_range {
        value = "0.0.0.0/0"
        description = "Allows access from all IPv4 addresses"
      }

      allowed_ip_range {
        value = "::0/0"
        description = "Allows access from all IPv6 addresses"
      }
    }
 }
}

Langkah selanjutnya