View a markdown version of this page

Esegui la migrazione dalla modalità ZooKeeper KRAFT - Amazon Managed Streaming per Apache Kafka

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Esegui la migrazione dalla modalità ZooKeeper KRAFT

È possibile migrare un cluster ZooKeeper-based MSK esistente alla modalità KRAFT utilizzando l'API. UpdateClusterKafkaVersion La migrazione viene eseguita sul posto: il cluster rimane disponibile per tutto il processo e nessun dato viene spostato. Amazon MSK effettua il provisioning dei controller KRAFT, migra i metadati del cluster dal quorum di KraFT ZooKeeper al quorum KraFT e disattiva i nodi automaticamente. ZooKeeper

Prerequisiti

Prima di migrare il cluster dalla modalità KRAFT, assicurati quanto segue: ZooKeeper

  • Il tuo cluster esegue la versione di Apache Kafka in modalità. 3.9.x ZooKeeper Se il cluster è su una versione precedente, esegui l'upgrade alla 3.9.x prima versione utilizzando il processo di aggiornamento della versione standard.

  • Il cluster è nello ACTIVE stato in cui non ci sono operazioni in sospeso.

  • Se utilizzi strumenti che si basano sull' ZooKeeper accesso diretto (come versioni precedenti di Cruise Control o strumenti di amministrazione personalizzati), aggiornali per utilizzare le API di amministrazione di Kafka anziché le connessioni dirette. ZooKeeper

  • Per i cluster standard (con provisioning): l'accesso del ZooKeeper client deve essere disabilitato. Utilizza l'UpdateConnectivityAPI da impostare ZookeeperAccess.Enabled=false prima di iniziare la migrazione. I cluster Express non richiedono questo passaggio.

  • Tutte le applicazioni client utilizzano la stringa di --bootstrap-server connessione, non la stringa di --zookeeper connessione. La stringa di ZooKeeper connessione non è disponibile dopo la migrazione.

  • Nel cluster non sono abilitati contemporaneamente Public Access e Open Monitoring.

  • Il tuo cluster non utilizza istanze kafka.t3.small broker.

  • Il tuo cluster non utilizza listener pubblicizzati dinamici. Per verificare se la advertised.listeners proprietà è stata impostata dinamicamente sui tuoi broker, esegui il comando seguente, $bs dov'è la stringa di connessione al server bootstrap del cluster, e assicurati che l'output non includa: advertised.listeners

    bin/kafka-configs.sh --bootstrap-server $bs --entity-type brokers --describe

    Per ulteriori informazioni sulle proprietà impostate dinamicamente, vedere. Configurazione dinamica di Amazon MSK

Cosa succede durante la migrazione

Quando si avvia una ZooKeeper-to-KRaft migrazione, Amazon MSK esegue automaticamente i seguenti passaggi:

  1. Amazon MSK effettua il provisioning dei nodi del controller KraFT nel tuo cluster. Questi controller sono inclusi senza costi aggiuntivi.

  2. La migrazione del piano dati viene eseguita: i broker vengono riconfigurati per utilizzare il quorum di KRAFT per i metadati continuando a servire il traffico dei clienti.

  3. Dopo che tutti i broker sono registrati con il quorum di KRAFT, Amazon MSK disattiva i nodi. ZooKeeper

  4. La modalità di gestione del cluster viene aggiornata a KRAFT.

La migrazione è un'operazione di lunga durata che può richiedere diverse ore a seconda delle dimensioni del cluster. È possibile monitorare lo stato dell'operazione utilizzando l'DescribeClusterOperationAPI.

Importante

La migrazione non può essere annullata. Una volta migrato il cluster alla modalità KRAFT, non è possibile tornare alla modalità. ZooKeeper

Esegui la migrazione utilizzando AWS CLI

  1. Verifica le versioni di destinazione disponibili per il tuo cluster:

    aws kafka get-compatible-kafka-versions --cluster-arn ClusterArn

    L'output include le versioni target di KRaft (con un .kraft suffisso) se il cluster è idoneo per la migrazione.

  2. Inizia la migrazione specificando la versione di destinazione di KRaft:

    aws kafka update-cluster-kafka-version \ --cluster-arn ClusterArn \ --current-version Current-Cluster-Version \ --target-kafka-version "3.9.x.kraft"
    Importante

    Le versioni del cluster non sono interi semplici. Usa l'DescribeClusteroperazione per trovare la versione corrente del tuo cluster.

  3. Monitora l'avanzamento della migrazione:

    aws kafka describe-cluster-operation --cluster-operation-arn ClusterOperationArn

    Lo stato dell'operazione passa UPDATE_IN_PROGRESS e si completa con. UPDATE_COMPLETE

Dopo la migrazione

Al termine della migrazione:

  • Il cluster funziona in modalità KRAFT. Tutti i metadati sono gestiti dai controller KRAFT.

  • ZooKeeper i nodi vengono rimossi. La stringa di ZooKeeper connessione non è più disponibile.

  • Le applicazioni client continuano a funzionare senza modifiche se utilizzano la stringa di --bootstrap-server connessione.

  • Puoi visualizzare gli endpoint del controller KraFT utilizzando l'ListNodesAPI se ne hai bisogno per il monitoraggio aperto.