Cette page explique comment Managed Service pour Apache Kafka provisionne des agents pour votre cluster Kafka.
Présentation
Un cluster Kafka est composé d'un ou de plusieurs agents. Les applications productrices envoient des messages aux agents, et les applications consommatrices se connectent aux agents pour lire les messages. Plusieurs consommateurs peuvent lire des messages en parallèle, généralement à l'aide de un groupe de consommateurs. Un agent principal est attribué à chaque partition d'un sujet. Le responsable est chargé de répliquer les données de partition qu'il reçoit sur d'autres agents.
Managed Service pour Apache Kafka crée automatiquement des agents pour vous. Bien que vous ne puissiez pas configurer directement le nombre d'agents, vous pouvez mettre à l'échelle votre cluster pour en ajouter.
Provisionnement des agents
Lorsque vous créez un cluster Managed Service pour Apache Kafka, le service provisionne au moins un agent dans chacune des trois zones. Le nombre d'agents est calculé comme suit :
number of brokers = max(3, ceiling(vCPUs / 15))
Par exemple, un cluster avec 75 processeurs virtuels commence avec 5 agents.
Les agents sont répartis aussi équitablement que possible entre les zones, et tous les agents ont le même nombre de processeurs virtuels, qui peut être une valeur fractionnaire. Chaque agent dispose d'au moins un processeur virtuel.
Le service provisionne automatiquement la capacité de disque pour les agents. Vous pouvez également configurer la capacité de disque par agent lorsque vous créez le cluster et l'augmenter ultérieurement. Pour en savoir plus, consultez Configurer la taille du disque de l'agent.
Mise à l'échelle du cluster
Lorsque vous augmentez la taille du cluster, des processeurs virtuels supplémentaires sont répartis entre les agents existants, jusqu'à une limite de 15 processeurs virtuels par agent. Si la taille du cluster dépasse 15 processeurs virtuels par agent, le service provisionne un nouvel agent. Les agents sont répartis de manière égale entre les trois zones, avec une différence maximale de un.
Si vous réduisez la taille du cluster, les processeurs virtuels sont répartis entre les agents existants, jusqu'à un minimum d'un processeur virtuel par agent. Les agents ne sont jamais supprimés pendant la durée de vie d'un cluster. Une fois qu'un nouvel agent est provisionné, il peut être réduit à un processeur virtuel, mais il n'est jamais supprimé.
Rééquilibrage des partitions d'agent
La mise à l'échelle d'un cluster vise souvent à réduire la charge sur les agents existants en réattribuant certaines partitions au nouvel agent. Ce processus est appelé rééquilibrage. Le rééquilibrage peut être effectué automatiquement ou manuellement.
Rééquilibrage automatique : il s'agit d'un paramètre à l'échelle du cluster. Lorsqu'un nouvel agent est provisionné, si le rééquilibrage automatique est activé, le service rééquilibre automatiquement les partitions des agents existants. L'algorithme de rééquilibrage est basé sur le nombre de partitions et vise à conserver approximativement le même nombre de partitions par agent. Il ne tient pas compte du trafic réel traité par chaque partition. Pour en savoir plus, consultez Configuration du rééquilibrage.
Rééquilibrage manuel : vous pouvez rééquilibrer manuellement les partitions en modifiant l'attribution des partitions. Vous pouvez le faire, car le rééquilibrage automatique est désactivé ou parce qu'une partition reçoit beaucoup plus de trafic que les autres partitions (appelée partition chaude). Pour en savoir plus, consultez Modifier l'attribution des partitions
Étape suivante
- Afficher les agents d'un cluster
- Configurer la taille du disque de l'agent
- Modifier l'attribution d'une partition
- Utiliser des quotas pour l'isolation de la charge