Visualizzare un cluster Google Cloud Managed Service per Apache Kafka

Per visualizzare un cluster, puoi utilizzare la console Google Cloud , Google Cloud CLI, la libreria client o l'API Managed Kafka. Non puoi utilizzare l'API Apache Kafka open source per visualizzare un cluster.

Ruoli e autorizzazioni richiesti per visualizzare un cluster

Per ottenere le autorizzazioni necessarie per visualizzare un cluster, chiedi all'amministratore di concederti il ruolo IAM Managed Kafka Viewer (roles/managedkafka.viewer) nel progetto. Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.

Questo ruolo predefinito contiene le autorizzazioni necessarie per visualizzare un cluster. Per vedere quali sono esattamente le autorizzazioni richieste, espandi la sezione Autorizzazioni obbligatorie:

Autorizzazioni obbligatorie

Per visualizzare un cluster sono necessarie le seguenti autorizzazioni:

  • Elenca i cluster: managedkafka.clusters.list
  • Recupera i dettagli del cluster: managedkafka.clusters.get

Potresti anche ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.

Visualizza un cluster

Per visualizzare un cluster, segui questi passaggi:

Console

  1. Nella console Google Cloud , vai alla pagina Cluster.

    Vai a Cluster

    Vengono elencati i cluster che hai creato in un progetto.

  2. Per visualizzare un cluster specifico, fai clic sul nome del cluster.

  3. Viene visualizzata la pagina dei dettagli del cluster. Questa pagina contiene le seguenti schede:

    • Risorse: mostra l'elenco di argomenti e gruppi di consumer associati al cluster.
    • Controllo degli accessi: mostra le voci ACL per il cluster.
    • Configurazioni: mostra la configurazione del cluster, incluso l'elenco delle subnet associate al cluster.
    • Monitoraggio: mostra gli avvisi di monitoraggio associati al cluster.
    • Log: visualizza i log relativi ai cluster da Esplora log.
    • Origini: fornisce scorciatoie per la creazione di connettori di origine Kafka Connect o la generazione di dati di test sintetici.
    • Sink: fornisce scorciatoie per la creazione di connettori sink Kafka Connect.

gcloud

  1. Nella console Google Cloud , attiva Cloud Shell.

    Attiva Cloud Shell

    Nella parte inferiore della console Google Cloud , viene avviata una sessione di Cloud Shell e viene visualizzato un prompt della riga di comando. Cloud Shell è un ambiente shell con Google Cloud CLI già installata e con valori già impostati per il progetto corrente. L'inizializzazione della sessione può richiedere alcuni secondi.

  2. Prima di utilizzare i dati dei comandi riportati di seguito, effettua le seguenti sostituzioni:

    • PROJECT_ID: l'ID progetto
    • LOCATION: la località del cluster.
    • CLUSTER_ID: l'ID del cluster.

    Esegui questo comando:

    Linux, macOS o 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

    Dovresti ricevere una risposta simile alla seguente:

    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

Prima di utilizzare i dati della richiesta, apporta le sostituzioni seguenti:

  • PROJECT_ID: il tuo ID progetto Google Cloud
  • LOCATION: la località del cluster.
  • CLUSTER_ID: l'ID del cluster.
  • CLUSTER_VIEW: la quantità di metadati da restituire. Specifica uno dei seguenti valori:

    • CLUSTER_VIEW_BASIC: restituisce i metadati di base del cluster.
    • CLUSTER_VIEW_FULL: restituisce tutti i metadati del cluster, incluse le informazioni sui broker del cluster e sul numero di versione di Kafka in esecuzione nel cluster.

    Se non specificato, il metodo predefinito è CLUSTER_VIEW_BASIC.

Metodo HTTP e URL:

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

Per inviare la richiesta, espandi una di queste opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

{
  "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"
    ]
  }
}

Vai

Prima di provare questo esempio, segui le istruzioni di configurazione di Go in Installa le librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Go di Managed Service per Apache Kafka.

Per eseguire l'autenticazione in Managed Service per Apache Kafka, configura le Credenziali predefinite dell'applicazione(ADC). Per saperne di più, consulta Configura ADC per un ambiente di sviluppo locale.

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

Prima di provare questo esempio, segui le istruzioni di configurazione di Java riportate in Installa le librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Java di Managed Service per Apache Kafka.

Per eseguire l'autenticazione in Managed Service per Apache Kafka, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configura ADC per un ambiente di sviluppo locale.

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

Prima di provare questo esempio, segui le istruzioni di configurazione di Python in Installa le librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Python di Managed Service per Apache Kafka.

Per eseguire l'autenticazione in Managed Service per Apache Kafka, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configura ADC per un ambiente di sviluppo locale.

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}")

Visualizza le proprietà e le risorse del cluster

Le sezioni seguenti descrivono come ottenere dettagli su varie proprietà e risorse associate a un cluster Google Cloud Managed Service per Apache Kafka.

Indirizzo di bootstrap

I client Kafka utilizzano l'indirizzo di bootstrap del cluster per stabilire una connessione con il cluster. L'indirizzo di bootstrap è fisso per tutta la durata di un cluster, ma il formato dell'URL bootstrap potrebbe variare da un cluster all'altro.

Se nel cluster è abilitato l'accesso pubblico, l'indirizzo di bootstrap viene risolto automaticamente in indirizzi IP pubblici o privati a seconda della posizione da cui si connette il client (utilizzando il DNS split-horizon). Sia i client interni che quelli esterni devono utilizzare lo stesso indirizzo di bootstrap per connettersi al cluster. Non configurare i client Kafka per la connessione ai record DNS di rilevamento, che sono riservati solo alla configurazione dei firewall in uscita esterni.

Per ottenere l'indirizzo di bootstrap, segui questi passaggi:

Console

  1. Vai alla pagina Managed Service per Apache Kafka > Cluster.

    Vai a Cluster

  2. Fai clic sul nome del cluster.

  3. Seleziona la scheda Configurazioni.

  4. Se utilizzi SASL per l'autenticazione, l'URL bootstrap è elencato in URL bootstrap.

    Se utilizzi mutual TLS (mTLS) per l'autenticazione, l'URL bootstrap è elencato in URL bootstrap mTLS.

    Fai clic su Copia per copiare il valore.

gcloud

Per ottenere l'URL bootstrap, utilizza il comando managed-kafka clusters describe.

Se utilizzi SASL per l'autenticazione, esegui questo comando:

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

Se utilizzi mutual TLS (mTLS) per l'autenticazione, esegui questo comando:

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

Sostituisci quanto segue:

  • CLUSTER_ID: l'ID o il nome del cluster.
  • LOCATION: la località del cluster.

Se hai un indirizzo di bootstrap e vuoi trovare il cluster corrispondente, puoi filtrare l'elenco dei cluster nella console Google Cloud o eseguire gcloud managed-kafka clusters list con --filter="bootstrapAddress:BOOTSTRAP_ADDRESS". Per saperne di più, consulta Elenca i tuoi cluster.

Per saperne di più sull'autenticazione SASL e mTLS, consulta Tipi di autenticazione per i broker Kafka.

Intermediari

Per visualizzare i broker nel tuo cluster, consulta Visualizza i broker in un cluster Managed Service per Apache Kafka.

Gruppi di consumer

Un gruppo di consumer è un insieme di consumer che collaborano per utilizzare i dati di vari argomenti. Per visualizzare i gruppi di consumer di un cluster, consulta le seguenti pagine:

Subnet

Per visualizzare le subnet connesse al tuo cluster, segui questi passaggi:

Console

  1. Nella console Google Cloud , vai alla pagina Cluster.

    Vai a Cluster

  2. Fai clic sul nome del cluster.

  3. Nella pagina dei dettagli del cluster, fai clic sulla scheda Configurazioni. Le subnet connesse sono elencate in Subnet.

gcloud

  1. Esegui il comando gcloud managed-kafka clusters describe:

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

    Sostituisci quanto segue:

    • CLUSTER_ID: l'ID o il nome del cluster.
    • LOCATION: la località del cluster.

Per saperne di più, consulta Configura il networking per Managed Service per Apache Kafka.

Intervalli IP di origine consentiti

Per visualizzare gli intervalli IP di origine consentiti per un cluster pubblico, segui questi passaggi:

Console

  1. Nella console Google Cloud , vai alla pagina Cluster.

    Vai a Cluster

  2. Fai clic sul nome del cluster.

  3. Fai clic sulla scheda Configurazioni. Gli intervalli IP di origine consentiti sono elencati nella tabella Intervalli IP di origine consentiti nella colonna Intervallo IP.

gcloud

  1. Per visualizzare gli intervalli IP di origine consentiti utilizzando gcloud, controlla il campo gcpConfig.accessConfig.publicClusterConfig.allowedSourceIpRanges nella risposta del comando gcloud managed-kafka clusters describe:

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

    Sostituisci quanto segue:

    • CLUSTER_ID: l'ID o il nome del cluster.
    • LOCATION: la località del cluster.

REST

Per visualizzare gli intervalli IP di origine consentiti utilizzando l'API REST, controlla il campo gcpConfig.accessConfig.publicClusterConfig.allowedSourceIpRanges nella risposta di una richiesta GET:

Prima di utilizzare i dati della richiesta, apporta le sostituzioni seguenti:

  • PROJECT_ID: il tuo ID progetto Google Cloud
  • LOCATION: la località del cluster.
  • CLUSTER_ID: l'ID del cluster.
  • CLUSTER_VIEW: la quantità di metadati da restituire. Specifica uno dei seguenti valori:

    • CLUSTER_VIEW_BASIC: restituisce i metadati di base del cluster.
    • CLUSTER_VIEW_FULL: restituisce tutti i metadati del cluster, incluse le informazioni sui broker del cluster e sul numero di versione di Kafka in esecuzione nel cluster.

    Se non specificato, il metodo predefinito è CLUSTER_VIEW_BASIC.

Metodo HTTP e URL:

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

Per inviare la richiesta, espandi una di queste opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

{
  "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"
    ]
  }
}

Per saperne di più sugli intervalli IP di origine consentiti, consulta Cluster pubblici.

Dettagli del cluster pubblico

Per visualizzare i dettagli del cluster pubblico, inclusi gli indirizzi IP esterni e i record DNS di rilevamento, segui questi passaggi:

Console

  1. Nella console Google Cloud , vai alla pagina Cluster.

    Vai a Cluster

  2. Fai clic sul nome del cluster.

  3. Fai clic sulla scheda Configurazioni. Gli indirizzi IP esterni e i record DNS di rilevamento sono elencati nei campi Indirizzi IP esterni e Record di rilevamento DNS.

gcloud

  1. Esegui il comando gcloud managed-kafka clusters describe:

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

    Sostituisci quanto segue:

    • CLUSTER_ID: l'ID o il nome del cluster.
    • LOCATION: la località del cluster.

REST

Per visualizzare i dettagli del cluster pubblico utilizzando l'API REST, controlla il campo publicClusterDetails nella risposta di una richiesta GET:

Prima di utilizzare i dati della richiesta, apporta le sostituzioni seguenti:

  • PROJECT_ID: il tuo ID progetto Google Cloud
  • LOCATION: la località del cluster.
  • CLUSTER_ID: l'ID del cluster.
  • CLUSTER_VIEW: la quantità di metadati da restituire. Specifica uno dei seguenti valori:

    • CLUSTER_VIEW_BASIC: restituisce i metadati di base del cluster.
    • CLUSTER_VIEW_FULL: restituisce tutti i metadati del cluster, incluse le informazioni sui broker del cluster e sul numero di versione di Kafka in esecuzione nel cluster.

    Se non specificato, il metodo predefinito è CLUSTER_VIEW_BASIC.

Metodo HTTP e URL:

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

Per inviare la richiesta, espandi una di queste opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

{
  "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"
    ]
  }
}

Argomenti

Per visualizzare gli argomenti in un cluster, consulta le seguenti pagine:

Passaggi successivi

Apache Kafka® è un marchio registrato di Apache Software Foundation o delle sue società affiliate negli Stati Uniti e/o in altri paesi.