Mencantumkan cluster Connect Anda

Managed Service untuk Apache Kafka memungkinkan Anda melihat status operasional, alokasi resource, dan detail konfigurasi untuk semua cluster Connect Anda. Tampilan gabungan ini membantu Anda mengelola cluster Connect di satu tempat.

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

Peran dan izin yang diperlukan untuk mencantumkan cluster Connect Anda

Untuk mendapatkan izin yang diperlukan guna mencantumkan cluster Connect, 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 mencantumkan cluster Connect Anda. Untuk melihat izin yang benar-benar diperlukan, perluas bagian Izin yang diperlukan:

Izin yang diperlukan

Izin berikut diperlukan untuk mencantumkan cluster Connect Anda:

  • Berikan izin list clusters di lokasi yang ditentukan: managedkafka.connectClusters.list
  • Berikan izin mendapatkan detail cluster di lokasi yang ditentukan: managedkafka.connectClusters.get

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

Melihat cluster Connect Anda

Konsol

  1. Di konsol Google Cloud , buka halaman Connect Clusters.

    Buka Connect Clusters

  2. Cluster yang Anda buat dalam project akan dicantumkan. Halaman ini memungkinkan Anda melihat properti cluster berikut:

    • Name: ID unik untuk cluster Connect Anda. Anda dapat menggunakannya untuk mereferensikan cluster Connect dalam berbagai operasi.
    • State: Menunjukkan status operasional cluster Connect saat ini, seperti Active.
    • Lokasi: Lokasi geografis tempat cluster Connect Anda dihosting.
    • Waktu update: Waktu terakhir cluster Connect diupdate.
    • vCPUs: Jumlah vCPU yang ditetapkan ke cluster Connect.
    • Memori: Jumlah total memori yang dialokasikan ke cluster Connect.
    • Cluster Kafka utama: Cluster Managed Service untuk Apache Kafka yang terkait dengan cluster Connect.
    • Label: Pasangan nilai kunci yang dapat Anda lampirkan ke cluster Connect untuk tujuan pengorganisasian, pemfilteran, dan otomatisasi.

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 prompt 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. Gunakan perintah gcloud managed-kafka connect-clusters list untuk mencantumkan cluster Connect:

    gcloud managed-kafka connect-clusters list \
        --location=LOCATION
    
  3. Untuk lebih menyaring daftar cluster Connect, Anda dapat menggunakan flag tambahan:

    gcloud managed-kafka connect-clusters list \
        --location=LOCATION \
        [--filter=EXPRESSION] \
        [--limit=LIMIT] \
        [--page-size=PAGE_SIZE] \
        [--sort-by=SORT_BY]
    

    Ganti kode berikut:

    • LOCATION: Wajib diisi. Lokasi cluster Connect yang ingin Anda cantumkan.

    • EXPRESSION: (Opsional) Ekspresi filter boolean yang akan diterapkan ke daftar. Jika ekspresi bernilai True, item akan disertakan dalam daftar. Untuk mengetahui detail dan contoh selengkapnya, jalankan gcloud topic filters.

    • LIMIT: (Opsional) Jumlah maksimum cluster Connect yang akan ditampilkan. Jika tidak ditentukan, semua cluster Connect akan dicantumkan.

    • PAGE_SIZE: (Opsional) Jumlah hasil yang akan ditampilkan per halaman. Jika tidak ditentukan, layanan akan menentukan ukuran halaman yang sesuai.

    • SORT_BY: (Opsional) Daftar kolom yang dipisahkan koma untuk diurutkan. Tata urutan default-nya adalah menaik. Untuk mengurutkan dalam urutan menurun, beri awalan ~ pada kolom.

Contoh output:

NAME                   VCPU  MEMORY_BYTES  STATE   NETWORK
connect-cluster-alpha  3     3221225472    ACTIVE
connect-cluster-beta   3     3221225472    ACTIVE

Go

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

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/iterator"
	"google.golang.org/api/option"

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

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

	locationPath := fmt.Sprintf("projects/%s/locations/%s", projectID, region)
	req := &managedkafkapb.ListConnectClustersRequest{
		Parent: locationPath,
	}
	clusterIter := client.ListConnectClusters(ctx, req)
	for {
		res, err := clusterIter.Next()
		if err == iterator.Done {
			break
		}
		if err != nil {
			return fmt.Errorf("clusterIter.Next() got err: %w", err)
		}
		fmt.Fprintf(w, "Got connect cluster: %v", res)
	}
	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.ConnectCluster;
import com.google.cloud.managedkafka.v1.LocationName;
import com.google.cloud.managedkafka.v1.ManagedKafkaConnectClient;
import java.io.IOException;

public class ListConnectClusters {

  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
    listConnectClusters(projectId, region);
  }

  public static void listConnectClusters(String projectId, String region) throws Exception {
    try (ManagedKafkaConnectClient managedKafkaConnectClient = 
        ManagedKafkaConnectClient.create()) {
      LocationName locationName = LocationName.of(projectId, region);
      // This operation is being handled synchronously.
      for (ConnectCluster connectCluster : managedKafkaConnectClient
          .listConnectClusters(locationName).iterateAll()) {
        System.out.println(connectCluster.getAllFields());
      }
    } catch (IOException | ApiException e) {
      System.err.printf("managedKafkaConnectClient.listConnectClusters got err: %s\n", 
          e.getMessage());
    }
  }
}

Python

Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Python di Menginstal library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi Python API 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.

from google.cloud import managedkafka_v1
from google.cloud.managedkafka_v1.services.managed_kafka_connect import (
    ManagedKafkaConnectClient,
)
from google.api_core.exceptions import GoogleAPICallError

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

connect_client = ManagedKafkaConnectClient()

request = managedkafka_v1.ListConnectClustersRequest(
    parent=connect_client.common_location_path(project_id, region),
)

response = connect_client.list_connect_clusters(request=request)
for cluster in response:
    try:
        print("Got Connect cluster:", cluster)
    except GoogleAPICallError as e:
        print(f"Failed to list Connect clusters with error: {e}")

Apa langkah selanjutnya?

Apache Kafka® adalah merek dagang terdaftar dari Apache Software Foundation atau afiliasinya di Amerika Serikat dan/atau negara lainnya.