Modo KRaft - Amazon Managed Streaming for Apache Kafka

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Modo KRaft

A Amazon MSK introduziu suporte para KRaft (Apache Kafka Raft) na versão 3.7.x do Kafka. A comunidade Apache Kafka foi desenvolvida KRaft para substituir o Apache no gerenciamento de metadados nos clusters do Apache ZooKeeper Kafka. No KRaft modo, os metadados do cluster são propagados dentro de um grupo de controladores Kafka, que fazem parte do cluster Kafka, em vez de entre nós. ZooKeeper KRaftos controladores estão incluídos sem custo adicional para você e não exigem configuração ou gerenciamento adicionais de sua parte. Consulte KIP-500 para obter mais informações sobreKRaft.

Aqui estão alguns pontos a serem observados sobre o KRaft modo ativadoMSK:

  • KRafto modo só está disponível para novos clusters. Você não pode alternar os modos de metadados depois que o cluster é criado.

  • No MSK console, você pode criar um cluster baseado em Kraft escolhendo a versão 3.7.x do Kafka e marcando a caixa de seleção na janela de criação do KRaft cluster.

  • Para criar um cluster no KRaft modo usando as CreateClusterV2operações MSK API CreateClusterou, você deve usar 3.7.x.kraft como versão. Use 3.7.x como versão para criar um cluster no ZooKeeper modo.

  • O número de partições por broker é o mesmo em clusters ZooKeeper baseados em KRaft e baseados. No entanto, KRaft permite que você hospede mais partições por cluster provisionando mais agentes em um cluster.

  • Não são necessárias API alterações para usar o KRaft modo na AmazonMSK. No entanto, se seus clientes ainda usam a cadeia de --zookeeper conexão hoje, você deve atualizá-los para usar a cadeia de --bootstrap-server conexão para se conectar ao seu cluster. A --zookeeper bandeira está obsoleta na versão 2.5 do Apache Kafka e foi removida a partir da versão 3.0 do Kafka. Portanto, recomendamos que você use as versões recentes do cliente Apache Kafka e a string de --bootstrap-server conexão para todas as conexões com seu cluster.

  • ZooKeeper O modo continua disponível para todas as versões lançadas, nas quais o zookeeper também é suportado pelo Apache Kafka. Consulte Versões compatíveis do Apache Kafka para obter detalhes sobre o fim do suporte para versões do Apache Kafka e futuras atualizações.

  • Você deve verificar se todas as ferramentas que você usa são capazes de usar o Kafka Admin APIs sem ZooKeeper conexões. Consulte as etapas atualizadas Usando o LinkedIn Cruise Control para Apache Kafka com o Amazon MSK para conectar seu cluster ao Cruise Control. O Cruise Control também tem instruções para executar o Cruise Control sem ZooKeeper.

  • Você não precisa acessar os KRaft controladores do seu cluster diretamente para nenhuma ação administrativa. No entanto, se você estiver usando o monitoramento aberto para coletar métricas, também precisará dos DNS endpoints dos seus controladores para coletar algumas métricas não relacionadas ao controlador sobre seu cluster. Você pode obter esses DNS endpoints no MSK console ou usando a ListNodesAPIoperação. Consulte as etapas atualizadas Monitoramento aberto com o Prometheus para configurar o monitoramento aberto para clusters KRaft baseados.

  • Não há CloudWatch métricas adicionais que você precise monitorar para clusters de KRaft modos em vez de clusters ZooKeeper de modos. MSKgerencia os KRaft controladores usados em seus clusters.

  • Você pode continuar gerenciando ACLs usando clusters no KRaft modo usando a cadeia de --bootstrap-server conexão. Você não deve usar a cadeia de --zookeeper conexão para gerenciarACLs. Consulte Apache Kafka ACLs.

  • No KRaft modo, os metadados do seu cluster são armazenados em KRaft controladores dentro do Kafka e não em nós externos. ZooKeeper Portanto, você não precisa controlar o acesso aos nós do controlador separadamente, como você faz com ZooKeeper os nós.