Configura le dimensioni del disco del broker

Questo documento descrive come Managed Service per Apache Kafka gestisce lo spazio di archiviazione per un cluster Kafka e come configurare la capacità del disco in un cluster. Il servizio esegue automaticamente il provisioning dei dischi quando crei un cluster, ma a seconda dei tuoi workload Kafka, potresti voler allocare una capacità del disco superiore a quella predefinita.

Panoramica

Managed Service per Apache Kafka utilizza l'archiviazione a livelli. L'archiviazione a livelli combina due livelli di archiviazione:

  • Una quantità limitata di spazio di archiviazione locale veloce, sotto forma di dischi di cui è stato eseguito il provisioning preliminare collegati ai broker.
  • Spazio di archiviazione remoto praticamente illimitato. Lo spazio di archiviazione remoto è meno costoso e non deve essere sottoposto a provisioning preventivo.

Il sistema di archiviazione a livelli ti consente di archiviare grandi volumi di dati con un rischio minore di esaurire lo spazio su disco. Inoltre, può costare meno dell'utilizzo del solo spazio di archiviazione locale.

Quando un broker riceve un messaggio, lo scrive in un file di segmento locale. Quando il file di segmento raggiunge una dimensione o un'età massima, viene chiuso (o "rollato") e spostato nello spazio di archiviazione remoto. In qualsiasi momento, è presente un singolo file di segmento aperto per partizione, quindi il volume dello spazio di archiviazione locale viene scalato in base al numero di partizioni e alle dimensioni massime dei file di segmento. I broker che gestiscono più partizioni hanno bisogno di più spazio di archiviazione locale.

Per impostare le dimensioni dei file di segmento, configura le impostazioni del broker log.roll.ms e log.segment.bytes.

Se abiliti la compattazione dei log, per l'argomento viene utilizzato solo lo spazio di archiviazione locale.

Configurazione disco predefinita

Per impostazione predefinita, Managed Service per Apache Kafka esegue il provisioning di almeno 100 GiB di capacità del disco per vCPU per ogni broker. Quando aumenti le dimensioni di un cluster, il servizio garantisce che i broker abbiano almeno 100 GiB per CPU. La capacità del disco per broker non viene mai ridotta, anche se il numero di vCPU per broker diminuisce.

Per vedere quanta capacità del disco è stata allocata, visualizza la capacità effettiva del disco del cluster.

Configurazione personalizzata del disco

La configurazione predefinita del disco offre un equilibrio tra spazio di archiviazione locale sicuro ed economico per la maggior parte degli utenti. Tuttavia, puoi anche specificare le dimensioni del disco locale impostando una configurazione del disco personalizzata quando crei o aggiorni un cluster.

Potresti scegliere di aumentare le dimensioni del disco per i seguenti motivi:

  • Compattazione dei log con spazi chiave di grandi dimensioni. Se la compattazione dei log è abilitata per un argomento, Kafka archivia l'ultimo messaggio per ogni chiave sul disco. Uno spazio delle chiavi di grandi dimensioni può comportare la conservazione di un numero elevato di messaggi su disco a tempo indeterminato.

  • Numero elevato di partizioni. Ogni partizione richiede spazio sufficiente per archiviare un segmento sottoposto a roll, oltre allo spazio per un nuovo file di segmento mentre il broker copia il file di segmento sottoposto a roll nello spazio di archiviazione remoto. Se hai più di 200 partizioni per vCPU, valuta la possibilità di impostare una configurazione di archiviazione personalizzata.

  • Carico elevato. Un broker sovraccarico potrebbe non avere spazio su disco sufficiente per spostare i file sottoposti a rollover nello spazio di archiviazione remoto abbastanza rapidamente e, pertanto, potrebbe richiedere più spazio di archiviazione locale.

  • Errori di spazio su disco esaurito. Se il cluster esaurisce lo spazio su disco di un broker, puoi aumentare la capacità del disco per rendere operativo il cluster.

Per saperne di più, consulta Stima le dimensioni del disco necessarie.

Requisiti di configurazione del disco

Una configurazione del disco personalizzata deve soddisfare i seguenti requisiti:

  • La dimensione del disco per broker deve essere almeno pari al numero di vCPU su ciascun broker moltiplicato per 100 GiB.

    Ad esempio, un cluster con 6 vCPU e 3 broker richiede almeno 200 GiB per broker.

  • La dimensione del disco per broker non può superare 32.768 GiB (32 TiB).

  • La dimensione del disco per broker non può essere ridotta. Se aggiorni un cluster, le nuove dimensioni del disco devono essere uguali o superiori alla capacità effettiva del disco attuale.

  • Se aumenti le dimensioni di un cluster, il conteggio di vCPU e le dimensioni del disco aggiornati devono soddisfare i requisiti precedenti, tenendo conto del fatto che potrebbero essere aggiunti nuovi broker. Per calcolare il numero di broker, consulta Scalare il cluster.

    Ad esempio, supponi di avere un cluster con 3 vCPU e 200 GiB di dischi per broker. Se aumenti lo scale del cluster a 9 vCPU, la dimensione minima del disco è 300 GiB (9 vCPU / 3 broker × 100 GiB). Per soddisfare questo requisito, devi impostare le dimensioni del disco insieme al conteggio di vCPU nella stessa richiesta di aggiornamento.

Imposta una configurazione del disco personalizzata

Puoi impostare una configurazione del disco personalizzata quando crei un cluster o aggiornando un cluster esistente. La configurazione si applica a tutti i broker del cluster.

Console

Nella pagina Crea cluster Kafka o Modifica cluster Kafka, segui questi passaggi:

  1. In Configurazione capacità, fai clic sul pulsante di attivazione/disattivazione Abilita dimensione dello spazio di archiviazione locale personalizzata in modo che sia impostato su On.

  2. Nel campo Spazio di archiviazione locale personalizzato, inserisci le dimensioni del disco per broker, in GiB. Il valore deve soddisfare i requisiti di configurazione del disco, altrimenti si verifica un errore.

  3. Fai clic su Salva.

gcloud

Specifica il flag --broker-disk-size-gib nel comando gcloud managed-kafka clusters create o gcloud managed-kafka clusters update.

Crea un cluster:

gcloud managed-kafka clusters create CLUSTER_ID \
  --location=LOCATION \
  --broker-disk-size-gib=DISK_SIZE

  # Other configruration flags
  ...

Aggiorna un cluster:

gcloud managed-kafka clusters update CLUSTER_ID \
  --location=LOCATION \
  --broker-disk-size-gib=DISK_SIZE

Sostituisci quanto segue:

  • CLUSTER_ID: il nome del cluster.
  • LOCATION: la posizione del cluster.
  • DISK_SIZE: Le dimensioni del disco per broker, in GiB. Il valore deve soddisfare i requisiti di configurazione del disco, altrimenti si verifica un errore.

Per saperne di più sulla creazione e sull'aggiornamento dei cluster Kafka, consulta i seguenti documenti:

Visualizzare una configurazione del disco personalizzata

Per visualizzare una configurazione del disco personalizzata su un cluster Managed Service per Apache Kafka, segui questi passaggi.

Console

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

    Vai a Cluster

  2. Nell'elenco dei cluster, fai clic su quello che vuoi visualizzare.

  3. Seleziona la scheda Configurazioni.

  4. In Capacità, se il cluster ha una configurazione del disco personalizzata, la riga Spazio di archiviazione locale personalizzato mostra le dimensioni del disco per broker. In caso contrario, la riga mostra Disabled.

gcloud

Esegui il comando gcloud managed-kafka clusters describe:

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

Sostituisci quanto segue:

  • CLUSTER_ID: il nome del cluster.
  • LOCATION: la posizione del cluster.

Nella descrizione del cluster restituita, il campo brokerCapacityConfig mostra la configurazione:

brokerCapacityConfig:
  diskSizeGib: '3000'

Se non hai impostato una configurazione del disco personalizzata, questo campo è vuoto:

brokerCapacityConfig: {}

Visualizza la capacità effettiva del disco

La capacità del disco effettiva di un cluster è la quantità di spazio su disco di cui è stato eseguito il provisioning per ogni broker. Per visualizzare la capacità effettiva del disco per un cluster, esegui il comando gcloud managed-kafka clusters describe con il flag --full.

Console

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

    Vai a Cluster

  2. Nell'elenco dei cluster, fai clic su quello che vuoi visualizzare.

  3. Seleziona la scheda Configurazioni.

  4. Nella sezione Capacità, la riga Spazio di archiviazione locale effettivo mostra le dimensioni del disco per broker.

gcloud

gcloud managed-kafka clusters describe CLUSTER_ID --full \
  --location=LOCATION

Sostituisci quanto segue:

  • CLUSTER_ID: il nome del cluster.
  • LOCATION: la posizione del cluster.

Nella descrizione del cluster restituita, il campo effectiveCapacityConfig contiene le dimensioni del disco per broker e il numero di broker:

effectiveCapacityConfig:
  brokerCount: '3'
  brokerDiskSizeGib: '1024'

La capacità totale del disco è pari a brokerCount × brokerDiskSizeGib.

Prezzi

Se il cluster utilizza la configurazione del disco predefinita, ti vengono fatturati 100 GiB per vCPU del cluster, anche se le dimensioni effettive del disco per broker potrebbero superare questo valore.

Dopo aver impostato una configurazione del disco personalizzata su un cluster, ti viene addebitato il costo della dimensione effettiva dei dischi su tutti i broker.

Passaggi successivi

Apache Kafka® è un marchio registrato di Apache Software Foundation o dei suoi affiliati negli Stati Uniti e/o in altri paesi.