Panoramica dei broker in Managed Service per Apache Kafka

Questa pagina descrive in che modo Managed Service per Apache Kafka esegue il provisioning dei broker per il cluster Kafka.

Panoramica

Un cluster Kafka è composto da uno o più broker. Le applicazioni producer inviano messaggi ai broker e le applicazioni consumer si connettono ai broker per leggere i messaggi. Più consumer possono leggere i messaggi in parallelo, in genere utilizzando un gruppo di consumer. A ogni partizione di un argomento viene assegnato un broker leader. Il leader è responsabile della replica dei dati della partizione che riceve su altri broker.

Managed Service per Apache Kafka crea automaticamente i broker. Anche se non puoi configurare direttamente il numero di broker, puoi eseguire lo scale up del cluster per aggiungere broker.

Provisioning dei broker

Quando crei un cluster Managed Service per Apache Kafka, il servizio esegue il provisioning di almeno un broker in ognuna delle tre zone. Il numero di broker viene calcolato come segue:

number of brokers = max(3, ceiling(vCPUs / 15))

Ad esempio, un cluster con 75 vCPU inizia con 5 broker.

I broker vengono distribuiti il più uniformemente possibile tra le zone e tutti i broker hanno lo stesso numero di vCPU, che potrebbe essere un valore frazionario. Ogni broker ha un minimo di una vCPU.

Il servizio esegue automaticamente il provisioning della capacità del disco per i broker. Facoltativamente, puoi configurare la capacità del disco per broker quando crei il cluster e aumentarla in un secondo momento. Per ulteriori informazioni, consulta Configurare le dimensioni del disco del broker.

Scalabilità del cluster

Man mano che aumenti le dimensioni del cluster, le vCPU aggiuntive vengono distribuite tra i broker esistenti, fino a un limite di 15 vCPU per broker. Se le dimensioni del cluster superano le 15 vCPU per broker, il servizio esegue il provisioning di un nuovo broker. I broker vengono distribuiti equamente tra le tre zone, con una differenza massima di uno.

Se riduci le dimensioni del cluster, le vCPU vengono distribuite tra i broker esistenti, fino a un minimo di una vCPU per broker. I broker non vengono mai eliminati durante la durata di un cluster. Una volta eseguito il provisioning di un nuovo broker, è possibile ridimensionarlo a una vCPU, ma non viene mai eliminato.

Ribilanciamento delle partizioni dei broker

Spesso, il motivo per cui si esegue lo scale up di un cluster è ridurre il carico sui broker esistenti, riassegnando alcune partizioni al nuovo broker. Questo processo è chiamato ribilanciamento. Il ribilanciamento può essere eseguito automaticamente o manualmente.

  • Ribilanciamento automatico. Il ribilanciamento automatico è un'impostazione a livello di cluster. Quando viene eseguito il provisioning di un nuovo broker, se il ribilanciamento automatico è attivato, il servizio ribilancia automaticamente le partizioni dai broker esistenti. L'algoritmo di ribilanciamento si basa sul conteggio delle partizioni e mira a mantenere approssimativamente lo stesso numero di partizioni per broker. Non tiene conto del traffico effettivo gestito da ogni partizione. Per ulteriori informazioni, consulta Configurazione del ribilanciamento.

  • Ribilanciamento manuale. Puoi ribilanciare manualmente le partizioni modificando l'assegnazione delle partizioni. Potresti farlo perché il ribilanciamento automatico è disattivato o perché una partizione riceve molto più traffico rispetto alle altre partizioni (chiamata partizione attiva). Per ulteriori informazioni, consulta Modificare l'assegnazione delle partizioni.

Passaggi successivi