Un registro di schemi è un repository per la gestione degli schemi utilizzati dai produttori e dai consumatori Kafka.
Questo documento mostra come creare una risorsa del registro di schemi in Managed Service per Apache Kafka utilizzando la Google Cloud console, Google Cloud CLI o l'API Managed Kafka.
Prima di iniziare
Prima di creare un registro di schemi, completa i seguenti passaggi:
- Crea un cluster Managed Service per Apache Kafka nella stessa regione in cui prevedi di creare un registro di schemi.
Ruoli e autorizzazioni richiesti
Per ottenere le autorizzazioni necessarie per creare un registro di schemi, chiedi all'amministratore di concederti il ruolo IAM Editor del registro di schemi Managed Kafka (roles/managedkafka.schemaRegistryEditor) nel tuo 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 creare un registro di schemi. Per vedere quali sono esattamente le autorizzazioni richieste, espandi la sezione Autorizzazioni obbligatorie:
Autorizzazioni obbligatorie
Per creare un registro di schemi sono necessarie le seguenti autorizzazioni:
-
Concedi questa autorizzazione nella località principale:
managedkafka.schemaRegistries.create
Potresti anche ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.
Crea un registro di schemi
Console
- Nella Google Cloud console, vai alla pagina Registri di schemi.
Viene visualizzata la pagina Registri di schemi.
- Nella pagina Registri di schemi, fai clic su Crea.
Viene visualizzata la pagina Crea registro di schemi.
- In Nome del registro di schemi, inserisci un identificatore univoco per il registro.
Il nome deve iniziare con una lettera, contenere solo lettere (a-z, A-Z), numeri (0-9) e trattini bassi (_) e non deve superare i 63 caratteri.
- Seleziona o inserisci una regione dal menu.
Devi già avere uno o più cluster Managed Service per Apache Kafka attivi nella regione specificata. Per controllare le regioni dei cluster, consulta la documentazione relativa all' elenco dei cluster.
Per un elenco delle località supportate, consulta Località di Managed Service per Apache Kafka.
- Fai clic su Crea.
gcloud
-
Installa Google Cloud CLI. Dopo l'installazione, inizializza Google Cloud CLI eseguendo il comando seguente:
gcloud initSe utilizzi un provider di identità (IdP) esterno, devi prima accedere a gcloud CLI con la tua identità federata.
- Utilizza il
gcloud beta managed-kafka schema-registries createcomando per creare un registro di schemi:gcloud beta managed-kafka schema-registries create SCHEMA_REGISTRY_ID \ --location=LOCATION \
Sostituisci quanto segue:
- SCHEMA_REGISTRY_ID (obbligatorio): un identificatore univoco per il tuo nuovo registro di schemi. Fa parte del nome della risorsa del registro. Il nome deve iniziare con una lettera, contenere solo lettere (a-z, A-Z), numeri (0-9) e trattini bassi (_) e non deve superare i 63 caratteri.
- LOCATION (obbligatorio): la Google Cloud regione in cui verrà creato il registro di schemi. Questa località deve corrispondere alla regione del cluster o dei cluster Managed Service per Apache Kafka che utilizzano questo registro. Per le località supportate, consulta Località di Managed Service per Apache Kafka.
Per creare un registro di schemi denominato
test_schema_registrynella regioneus-central1, esegui il comando seguente:gcloud beta managed-kafka schema-registries create test_schema_registry \ --location=us-central1
Al termine del comando, il registro di schemi viene creato. Puoi quindi configurare i client Kafka in modo che utilizzino il relativo URL. Per visualizzare l'URL del registro di schemi, consulta Dettagli della pagina del registro di schemi.
REST
Per creare un'istanza del registro di schemi utilizzando l'API REST, segui questi passaggi.
- Invia una richiesta
POSTsimile alla seguente: - Crea un file JSON
request-body.jsoncon la seguente struttura: - SCHEMA_REGISTRY_ID (obbligatorio): un identificatore univoco per il tuo nuovo registro di schemi. Fa parte del nome della risorsa del registro. Il nome deve iniziare con una lettera, contenere solo lettere (a-z, A-Z), numeri (0-9) e trattini bassi (_) e non deve superare i 63 caratteri.
POST https://managedkafka.googleapis.com/v1main/projects/PROJECT_ID/locations/LOCATION/schemaRegistries Authorization: Bearer $(gcloud auth application-default print-access-token) Content-Type: application/json --data @response-body.json
{ "schemaRegistryId": "SCHEMA_REGISTRY_ID" }
Sostituisci quanto segue:
Esegui la richiesta POST con l'URI, le intestazioni e il corpo creati. In caso di esito positivo, l'API restituisce un codice di stato 200 OK e un corpo della risposta contenente la rappresentazione JSON della risorsa SchemaRegistry appena creata.
Di seguito è riportata una risposta di esempio in caso di esito positivo.
{ "name": "projects/testing-311516/locations/us-central1/schemaRegistries/test", "contexts": [ "projects/testing-311516/locations/us-central1/schemaRegistries/test/contexts/." ] }
projects/testing-311516/locations/us-central1/schemaRegistries/test/contexts/. rappresenta il contesto predefinito. Le risorse nel contesto predefinito non richiedono la specifica di alcun contesto.
Per ulteriori informazioni, consulta la documentazione dell'API REST.