En esta página, se describe cómo Managed Service para Apache Kafka aprovisiona agentes para tu clúster de Kafka.
Descripción general
Un clúster de Kafka se compone de uno o más agentes. Las aplicaciones de productor envían mensajes a los agentes, y las aplicaciones de consumidor se conectan a los agentes para leer mensajes. Varios consumidores pueden leer mensajes en paralelo, por lo general, con un grupo de consumidores. A cada partición de un tema se le asigna un agente líder. El líder es responsable de replicar los datos de la partición que recibe en otros agentes.
Managed Service para Apache Kafka crea agentes automáticamente. Aunque no puedes configurar directamente la cantidad de agentes, puedes escalar tu clúster para agregar agentes.
Aprovisionamiento de agentes
Cuando creas un clúster de Managed Service para Apache Kafka, el servicio aprovisiona al menos un agente en cada una de las tres zonas. La cantidad de agentes se calcula de la siguiente manera:
number of brokers = max(3, ceiling(vCPUs / 15))
Por ejemplo, un clúster con 75 CPU virtuales comienza con 5 agentes.
Los agentes se distribuyen de la manera más uniforme posible entre las zonas, y todos los agentes tienen la misma cantidad de CPU virtuales, que puede ser un valor fraccionario. Cada agente tiene un mínimo de una CPU virtual.
El servicio aprovisiona automáticamente la capacidad de disco para los agentes. De manera opcional, puedes configurar la capacidad de disco por agente cuando creas el clúster y aumentarla más adelante. Para obtener más información, consulta Configura el tamaño del disco del agente.
Escala el clúster
A medida que aumentas el tamaño del clúster, las CPU virtuales adicionales se distribuyen entre los agentes existentes, hasta un límite de 15 CPU virtuales por agente. Si el tamaño del clúster supera las 15 CPU virtuales por agente, el servicio aprovisiona un agente nuevo. Los agentes se distribuyen de manera equitativa entre las tres zonas, con una diferencia máxima de uno.
Si disminuyes el tamaño del clúster, las CPU virtuales se distribuyen entre los agentes existentes, hasta un mínimo de una CPU virtual por agente. Los agentes nunca se borran durante la vida útil de un clúster. Una vez que se aprovisiona un agente nuevo, se puede reducir a una CPU virtual, pero nunca se borra.
Rebalancea las particiones del agente
A menudo, el motivo para escalar un clúster es reducir la carga en los agentes existentes, mediante la reasignación de algunas particiones al agente nuevo. Este proceso se denomina rebalanceo. El rebalanceo se puede realizar de forma automática o manual.
Rebalanceo automático. El rebalanceo automático es una configuración en todo el clúster. Cuando se aprovisiona un agente nuevo, si el rebalanceo automático está habilitado, el servicio rebalancea automáticamente las particiones de los agentes existentes. El algoritmo de rebalanceo se basa en el recuento de particiones y tiene como objetivo mantener aproximadamente la misma cantidad de particiones por agente. No tiene en cuenta el tráfico real que entrega cada partición. Para obtener más información, consulta Configuración de rebalanceo.
Rebalanceo manual. Puedes rebalancear las particiones de forma manual si cambias la asignación de particiones. Puedes hacerlo porque el rebalanceo automático está inhabilitado o porque una partición recibe mucho más tráfico que otras particiones (llamada partición activa). Para obtener más información, consulta Cambia la asignación de particiones.
¿Qué sigue?
- Visualiza los agentes en un clúster
- Configura el tamaño del disco del agente
- Cambia una asignación de particiones
- Usa cuotas para el aislamiento de carga