Melihat cluster Google Cloud Managed Service for Apache Kafka

Untuk melihat cluster, Anda dapat menggunakan Google Cloud konsol, Google Cloud CLI, library klien, atau Managed Kafka API. Anda tidak dapat menggunakan Apache Kafka API open source untuk melihat cluster.

Peran dan izin yang diperlukan untuk melihat cluster

Untuk mendapatkan izin yang diperlukan untuk melihat cluster, minta administrator untuk memberi Anda peran IAM Managed Kafka Viewer (roles/managedkafka.viewer) di project Anda. Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.

Peran bawaan ini berisi izin yang diperlukan untuk melihat cluster. Untuk melihat izin yang benar-benar diperlukan, perluas bagian Izin yang diperlukan:

Izin yang diperlukan

Izin berikut diperlukan untuk melihat cluster:

  • Mencantumkan cluster: managedkafka.clusters.list
  • Dapatkan detail cluster: managedkafka.clusters.get

Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaan lainnya.

Melihat cluster

Untuk melihat cluster, ikuti langkah-langkah berikut:

Konsol

  1. Di konsol Google Cloud , buka halaman Clusters.

    Buka Cluster

    Cluster yang Anda buat dalam project akan dicantumkan.

  2. Untuk melihat cluster tertentu, klik nama cluster.

  3. Halaman detail cluster akan terbuka. Halaman ini memiliki tab berikut:

    • Resources: Menampilkan daftar topik dan grup konsumen yang terkait dengan cluster.
    • Kontrol akses: Menampilkan entri ACL untuk cluster.
    • Konfigurasi: Menampilkan konfigurasi cluster, termasuk daftar subnet yang terkait dengan cluster.
    • Monitoring: Menampilkan pemberitahuan pemantauan yang terkait dengan cluster.
    • Log: Menampilkan log terkait cluster dari Logs Explorer.
    • Sumber: Menyediakan pintasan untuk membuat konektor sumber Kafka Connect atau menghasilkan data pengujian sintetis.
    • Sink: Menyediakan pintasan untuk membuat konektor sink Kafka Connect.

gcloud

  1. Di konsol Google Cloud , aktifkan Cloud Shell.

    Aktifkan Cloud Shell

    Di bagian bawah konsol Google Cloud , sesi Cloud Shell akan dimulai dan menampilkan perintah command line. Cloud Shell adalah lingkungan shell dengan Google Cloud CLI yang sudah terinstal, dan dengan nilai yang sudah ditetapkan untuk project Anda saat ini. Diperlukan waktu beberapa detik untuk melakukan inisialisasi pada sesi.

  2. Sebelum menggunakan salah satu data perintah di bawah, lakukan penggantian berikut:

    • PROJECT_ID: project ID.
    • LOCATION: lokasi cluster.
    • CLUSTER_ID: ID cluster.

    Jalankan perintah berikut:

    Linux, macOS, atau Cloud Shell

    gcloud managed-kafka clusters describe CLUSTER_ID \
        --location=LOCATION \
        --project=PROJECT_ID

    Windows (PowerShell)

    gcloud managed-kafka clusters describe CLUSTER_ID `
        --location=LOCATION `
        --project=PROJECT_ID

    Windows (cmd.exe)

    gcloud managed-kafka clusters describe CLUSTER_ID ^
        --location=LOCATION ^
        --project=PROJECT_ID

    Anda akan melihat respons seperti berikut:

    bootstrapAddress: bootstrap.CLUSTER_ID.LOCATION.managedkafka.PROJECT_ID.cloud.goog:9092
    bootstrapAddressMTLS: bootstrap.CLUSTER_ID.LOCATION.managedkafka.PROJECT_ID.cloud.goog:9192
    brokerCapacityConfig: {}
    capacityConfig:
      memoryBytes: 'MEMORY'
      vcpuCount: 'CPU_COUNT'
    createTime: 'CREATE_TIME'
    gcpConfig:
      accessConfig:
        networkConfigs:
        - subnet: projects/PROJECT_ID/regions/LOCATION/subnetworks/SUBNET_ID
        publicClusterConfig:
          allowedSourceIpRanges:
          - 203.0.113.5/32
    labels:
      goog-terraform-provisioned: 'true'
    name: projects/PROJECT_ID/locations/LOCATION/clusters/CLUSTER_ID
    publicClusterDetails:
      discoveryDnsRecords:
      - discovery-1.CLUSTER_ID.LOCATION.managedkafka.PROJECT_ID.cloud.goog
      externalIpAddresses:
      - 203.0.113.1
      - 203.0.113.2
      - 203.0.113.3
      - 203.0.113.4
    rebalanceConfig:
      mode: AUTO_REBALANCE_ON_SCALE_UP
    satisfiesPzi: false
    satisfiesPzs: false
    state: ACTIVE
    tlsConfig:
      trustConfig: {}
    updateOptions: {}
    updateTime: 'UPDATE_TIME'
    

REST

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • PROJECT_ID: Project ID Google Cloud Anda
  • LOCATION: lokasi cluster.
  • CLUSTER_ID: ID cluster.
  • CLUSTER_VIEW: jumlah metadata yang akan ditampilkan. Tentukan salah satu nilai berikut:

    • CLUSTER_VIEW_BASIC: Menampilkan metadata dasar untuk cluster.
    • CLUSTER_VIEW_FULL: Menampilkan semua metadata untuk cluster, termasuk informasi tentang broker cluster dan nomor versi Kafka yang dijalankan cluster.

    Jika tidak ditentukan, metode defaultnya adalah CLUSTER_VIEW_BASIC.

Metode HTTP dan URL:

GET https://managedkafka.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/clusters/CLUSTER_ID?view=CLUSTER_VIEW

Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:

Anda akan melihat respons JSON seperti berikut:

{
  "name": "projects/PROJECT_ID/locations/LOCATION/clusters/CLUSTER_ID",
  "createTime": "CREATE_TIME",
  "updateTime": "UPDATE_TIME",
  "capacityConfig": {
    "vcpuCount": "CPU_COUNT",
    "memoryBytes": "MEMORY"
  },
  "rebalanceConfig": {},
  "gcpConfig": {
    "accessConfig": {
      "networkConfigs": [
        {
          "subnet": "projects/PROJECT_ID/locations/LOCATION/subnetworks/SUBNET_ID"
        }
      ],
      "publicClusterConfig": {
        "allowedSourceIpRanges": [
          "203.0.113.5/32"
        ]
      }
    }
  },
  "state": "ACTIVE",
  "satisfiesPzi": false,
  "satisfiesPzs": false,
  "tlsConfig": {
    "trustConfig": {}
  },
  "updateOptions": {},
  "publicClusterDetails": {
    "discoveryDnsRecords": [
      "discovery-1.CLUSTER_ID.LOCATION.managedkafka.PROJECT_ID.cloud.goog"
    ],
    "externalIpAddresses": [
      "203.0.113.1",
      "203.0.113.2",
      "203.0.113.3",
      "203.0.113.4"
    ]
  }
}

Go

Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Go di Menginstal library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API Managed Service untuk Apache Kafka Go.

Untuk melakukan autentikasi ke Managed Service untuk Apache Kafka, siapkan Kredensial Default Aplikasi(ADC). Untuk mengetahui informasi selengkapnya, lihat Menyiapkan ADC untuk lingkungan pengembangan lokal.

import (
	"context"
	"fmt"
	"io"

	"cloud.google.com/go/managedkafka/apiv1/managedkafkapb"
	"google.golang.org/api/option"

	managedkafka "cloud.google.com/go/managedkafka/apiv1"
)

func getCluster(w io.Writer, projectID, region, clusterID string, opts ...option.ClientOption) error {
	// projectID := "my-project-id"
	// region := "us-central1"
	// clusterID := "my-cluster"
	ctx := context.Background()
	client, err := managedkafka.NewClient(ctx, opts...)
	if err != nil {
		return fmt.Errorf("managedkafka.NewClient got err: %w", err)
	}
	defer client.Close()

	clusterPath := fmt.Sprintf("projects/%s/locations/%s/clusters/%s", projectID, region, clusterID)
	req := &managedkafkapb.GetClusterRequest{
		Name: clusterPath,
	}
	cluster, err := client.GetCluster(ctx, req)
	if err != nil {
		return fmt.Errorf("client.GetCluster got err: %w", err)
	}
	fmt.Fprintf(w, "Got cluster: %#v\n", cluster)
	return nil
}

Java

Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Java di Menginstal library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API Java Managed Service untuk Apache Kafka.

Untuk melakukan autentikasi ke Managed Service untuk Apache Kafka, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan ADC untuk lingkungan pengembangan lokal.

import com.google.api.gax.rpc.ApiException;
import com.google.cloud.managedkafka.v1.Cluster;
import com.google.cloud.managedkafka.v1.ClusterName;
import com.google.cloud.managedkafka.v1.ManagedKafkaClient;
import java.io.IOException;

public class GetCluster {

  public static void main(String[] args) throws Exception {
    // TODO(developer): Replace these variables before running the example.
    String projectId = "my-project-id";
    String region = "my-region"; // e.g. us-east1
    String clusterId = "my-cluster";
    getCluster(projectId, region, clusterId);
  }

  public static void getCluster(String projectId, String region, String clusterId)
      throws Exception {
    try (ManagedKafkaClient managedKafkaClient = ManagedKafkaClient.create()) {
      // This operation is being handled synchronously.
      Cluster cluster = managedKafkaClient.getCluster(ClusterName.of(projectId, region, clusterId));
      System.out.println(cluster.getAllFields());
    } catch (IOException | ApiException e) {
      System.err.printf("managedKafkaClient.getCluster got err: %s", e.getMessage());
    }
  }
}

Python

Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Python di Menginstal library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi Managed Service for Apache Kafka Python API.

Untuk melakukan autentikasi ke Managed Service untuk Apache Kafka, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan ADC untuk lingkungan pengembangan lokal.

from google.api_core.exceptions import NotFound
from google.cloud import managedkafka_v1

# TODO(developer)
# project_id = "my-project-id"
# region = "us-central1"
# cluster_id = "my-cluster"

client = managedkafka_v1.ManagedKafkaClient()

cluster_path = client.cluster_path(project_id, region, cluster_id)
request = managedkafka_v1.GetClusterRequest(
    name=cluster_path,
)

try:
    cluster = client.get_cluster(request=request)
    print("Got cluster:", cluster)
except NotFound as e:
    print(f"Failed to get cluster {cluster_id} with error: {e.message}")

Melihat properti dan resource cluster

Bagian berikut menjelaskan cara mendapatkan detail tentang berbagai properti dan resource yang terkait dengan cluster Google Cloud Managed Service untuk Apache Kafka.

Alamat bootstrap

Klien Kafka menggunakan alamat bootstrap cluster untuk membuat koneksi dengan cluster. Alamat bootstrap ditetapkan selama masa aktif cluster, tetapi format URL bootstrap dapat berbeda di antara cluster.

Jika cluster Anda mengaktifkan akses publik, alamat bootstrap akan otomatis di-resolve ke alamat IP publik atau pribadi, bergantung pada tempat klien terhubung (menggunakan DNS split-horizon). Klien internal dan eksternal harus menggunakan alamat bootstrap yang sama ini untuk terhubung ke cluster. Jangan mengonfigurasi klien Kafka untuk terhubung ke data DNS penemuan, yang dicadangkan hanya untuk mengonfigurasi firewall keluar eksternal.

Untuk mendapatkan alamat bootstrap, lakukan langkah-langkah berikut:

Konsol

  1. Buka halaman Managed Service untuk Apache Kafka > Clusters.

    Buka Cluster

  2. Klik nama cluster.

  3. Pilih tab Configurations.

  4. Jika Anda menggunakan SASL untuk mengautentikasi, URL bootstrap tercantum di bagian Bootstrap URL.

    Jika Anda menggunakan TLS bersama (mTLS) untuk mengautentikasi, URL bootstrap dicantumkan di bagian URL Bootstrap mTLS.

    Klik Salin untuk menyalin nilai.

gcloud

Untuk mendapatkan URL bootstrap, gunakan perintah managed-kafka clusters describe.

Jika Anda menggunakan SASL untuk mengautentikasi, jalankan perintah berikut:

gcloud managed-kafka clusters describe CLUSTER_ID \
    --location=LOCATION \
    --format="value(bootstrapAddress)"

Jika Anda menggunakan TLS timbal balik (mTLS) untuk mengautentikasi, jalankan perintah berikut:

gcloud managed-kafka clusters describe CLUSTER_ID \
    --location=LOCATION \
    --format="value(bootstrapAddressMTLS)"

Ganti kode berikut:

  • CLUSTER_ID: ID atau nama cluster.
  • LOCATION: Lokasi cluster.

Untuk mengetahui informasi selengkapnya tentang autentikasi SASL dan mTLS, lihat Jenis autentikasi untuk broker Kafka.

Broker

Untuk melihat broker di cluster Anda, lihat Melihat broker di cluster Managed Service untuk Apache Kafka.

Grup konsumen

Grup konsumen adalah sekumpulan konsumen yang bekerja sama untuk menggunakan data dari berbagai topik. Untuk melihat grup konsumen untuk cluster, lihat halaman berikut:

Subnetwork

Untuk melihat subnetwork yang terhubung ke cluster Anda, lakukan langkah-langkah berikut:

Konsol

  1. Di konsol Google Cloud , buka halaman Clusters.

    Buka Cluster

  2. Klik nama cluster.

  3. Di halaman detail cluster, klik tab Configurations. Subnetwork yang terhubung tercantum di bagian Subnetworks.

gcloud

  1. Jalankan perintah gcloud managed-kafka clusters describe:

    gcloud managed-kafka clusters describe CLUSTER_ID \
        --location=LOCATION \
        --format="yaml(gcpConfig.accessConfig.networkConfigs)"
    

    Ganti kode berikut:

    • CLUSTER_ID: ID atau nama cluster.
    • LOCATION: Lokasi cluster.

Untuk mengetahui informasi selengkapnya, lihat Mengonfigurasi jaringan untuk Managed Service untuk Apache Kafka.

Rentang IP sumber yang diizinkan

Untuk melihat rentang IP sumber yang diizinkan untuk cluster publik, lakukan langkah-langkah berikut:

Konsol

  1. Di konsol Google Cloud , buka halaman Clusters.

    Buka Cluster

  2. Klik nama cluster.

  3. Klik tab Configurations. Rentang IP sumber yang diizinkan tercantum dalam tabel Allowed source IP ranges di kolom IP range.

gcloud

  1. Untuk melihat rentang IP sumber yang diizinkan menggunakan gcloud, periksa kolom gcpConfig.accessConfig.publicClusterConfig.allowedSourceIpRanges dalam respons perintah gcloud managed-kafka clusters describe:

    gcloud managed-kafka clusters describe CLUSTER_ID \
        --location=LOCATION \
        --format="yaml(gcpConfig.accessConfig.publicClusterConfig.allowedSourceIpRanges)"
    

    Ganti kode berikut:

    • CLUSTER_ID: ID atau nama cluster.
    • LOCATION: Lokasi cluster.

REST

Untuk melihat rentang IP sumber yang diizinkan menggunakan REST API, periksa kolom gcpConfig.accessConfig.publicClusterConfig.allowedSourceIpRanges dalam respons permintaan GET:

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • PROJECT_ID: Project ID Google Cloud Anda
  • LOCATION: lokasi cluster.
  • CLUSTER_ID: ID cluster.
  • CLUSTER_VIEW: jumlah metadata yang akan ditampilkan. Tentukan salah satu nilai berikut:

    • CLUSTER_VIEW_BASIC: Menampilkan metadata dasar untuk cluster.
    • CLUSTER_VIEW_FULL: Menampilkan semua metadata untuk cluster, termasuk informasi tentang broker cluster dan nomor versi Kafka yang dijalankan cluster.

    Jika tidak ditentukan, metode defaultnya adalah CLUSTER_VIEW_BASIC.

Metode HTTP dan URL:

GET https://managedkafka.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/clusters/CLUSTER_ID?view=CLUSTER_VIEW

Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:

Anda akan melihat respons JSON seperti berikut:

{
  "name": "projects/PROJECT_ID/locations/LOCATION/clusters/CLUSTER_ID",
  "createTime": "CREATE_TIME",
  "updateTime": "UPDATE_TIME",
  "capacityConfig": {
    "vcpuCount": "CPU_COUNT",
    "memoryBytes": "MEMORY"
  },
  "rebalanceConfig": {},
  "gcpConfig": {
    "accessConfig": {
      "networkConfigs": [
        {
          "subnet": "projects/PROJECT_ID/locations/LOCATION/subnetworks/SUBNET_ID"
        }
      ],
      "publicClusterConfig": {
        "allowedSourceIpRanges": [
          "203.0.113.5/32"
        ]
      }
    }
  },
  "state": "ACTIVE",
  "satisfiesPzi": false,
  "satisfiesPzs": false,
  "tlsConfig": {
    "trustConfig": {}
  },
  "updateOptions": {},
  "publicClusterDetails": {
    "discoveryDnsRecords": [
      "discovery-1.CLUSTER_ID.LOCATION.managedkafka.PROJECT_ID.cloud.goog"
    ],
    "externalIpAddresses": [
      "203.0.113.1",
      "203.0.113.2",
      "203.0.113.3",
      "203.0.113.4"
    ]
  }
}

Untuk mengetahui informasi selengkapnya tentang rentang IP sumber yang diizinkan, lihat Cluster publik.

Detail cluster publik

Untuk melihat detail cluster publik, termasuk alamat IP eksternal dan data DNS penemuan, lakukan langkah-langkah berikut:

Konsol

  1. Di konsol Google Cloud , buka halaman Clusters.

    Buka Cluster

  2. Klik nama cluster.

  3. Klik tab Configurations. Alamat IP eksternal dan data DNS penemuan tercantum di kolom External IP Addresses dan DNS Discovery Records.

gcloud

  1. Jalankan perintah gcloud managed-kafka clusters describe:

    gcloud managed-kafka clusters describe CLUSTER_ID \
        --location=LOCATION \
        --format="yaml(publicClusterDetails)"
    

    Ganti kode berikut:

    • CLUSTER_ID: ID atau nama cluster.
    • LOCATION: Lokasi cluster.

REST

Untuk melihat detail cluster publik menggunakan REST API, periksa kolom publicClusterDetails dalam respons permintaan GET:

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • PROJECT_ID: Project ID Google Cloud Anda
  • LOCATION: lokasi cluster.
  • CLUSTER_ID: ID cluster.
  • CLUSTER_VIEW: jumlah metadata yang akan ditampilkan. Tentukan salah satu nilai berikut:

    • CLUSTER_VIEW_BASIC: Menampilkan metadata dasar untuk cluster.
    • CLUSTER_VIEW_FULL: Menampilkan semua metadata untuk cluster, termasuk informasi tentang broker cluster dan nomor versi Kafka yang dijalankan cluster.

    Jika tidak ditentukan, metode defaultnya adalah CLUSTER_VIEW_BASIC.

Metode HTTP dan URL:

GET https://managedkafka.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/clusters/CLUSTER_ID?view=CLUSTER_VIEW

Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:

Anda akan melihat respons JSON seperti berikut:

{
  "name": "projects/PROJECT_ID/locations/LOCATION/clusters/CLUSTER_ID",
  "createTime": "CREATE_TIME",
  "updateTime": "UPDATE_TIME",
  "capacityConfig": {
    "vcpuCount": "CPU_COUNT",
    "memoryBytes": "MEMORY"
  },
  "rebalanceConfig": {},
  "gcpConfig": {
    "accessConfig": {
      "networkConfigs": [
        {
          "subnet": "projects/PROJECT_ID/locations/LOCATION/subnetworks/SUBNET_ID"
        }
      ],
      "publicClusterConfig": {
        "allowedSourceIpRanges": [
          "203.0.113.5/32"
        ]
      }
    }
  },
  "state": "ACTIVE",
  "satisfiesPzi": false,
  "satisfiesPzs": false,
  "tlsConfig": {
    "trustConfig": {}
  },
  "updateOptions": {},
  "publicClusterDetails": {
    "discoveryDnsRecords": [
      "discovery-1.CLUSTER_ID.LOCATION.managedkafka.PROJECT_ID.cloud.goog"
    ],
    "externalIpAddresses": [
      "203.0.113.1",
      "203.0.113.2",
      "203.0.113.3",
      "203.0.113.4"
    ]
  }
}

Topik

Untuk melihat topik dalam cluster, lihat halaman berikut:

Apa langkah selanjutnya?

Apache Kafka® adalah merek dagang terdaftar milik The Apache Software Foundation atau afiliasinya di Amerika Serikat dan/atau negara lain.