View a markdown version of this page

Migrer depuis ZooKeeper le mode KRAFT - Amazon Managed Streaming for Apache Kafka

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Migrer depuis ZooKeeper le mode KRAFT

Vous pouvez migrer un cluster ZooKeeper-based MSK existant vers le mode KRAFT à l'aide de l'UpdateClusterKafkaVersionAPI. La migration est effectuée sur place : votre cluster reste disponible tout au long du processus et aucune donnée n'est déplacée. Amazon MSK fournit des contrôleurs Kraft, migre les métadonnées du cluster depuis ZooKeeper le quorum Kraft et met automatiquement les nœuds hors service ZooKeeper .

Conditions préalables

Avant de migrer votre cluster du ZooKeeper mode KRAFT, assurez-vous de ce qui suit :

  • Votre cluster exécute la version d'Apache Kafka 3.9.x en ZooKeeper mode. Si votre cluster utilise une ancienne version, procédez d'3.9.xabord à la mise à niveau en suivant le processus de mise à niveau de la version standard.

  • Votre cluster est dans un ACTIVE état où aucune opération n'est en attente.

  • Si vous utilisez des outils qui reposent sur un ZooKeeper accès direct (tels que les anciennes versions de Cruise Control ou des outils d'administration personnalisés), mettez-les à jour pour utiliser les API d'administration de Kafka au lieu de ZooKeeper connexions directes.

  • Pour les clusters standard (provisionnés) : l'accès ZooKeeper client doit être désactivé. Utilisez l'UpdateConnectivityAPI à définir ZookeeperAccess.Enabled=false avant de lancer la migration. Les clusters Express ne nécessitent pas cette étape.

  • Toutes les applications clientes utilisent la chaîne de --bootstrap-server connexion, et non la chaîne de --zookeeper connexion. La chaîne de ZooKeeper connexion n'est pas disponible après la migration.

  • L'accès public et la surveillance ouverte ne sont pas activés simultanément sur votre cluster.

  • Votre cluster n'utilise pas d'instances kafka.t3.small Broker.

  • Votre cluster n'utilise pas d'écouteurs dynamiques annoncés. Pour vérifier si la advertised.listeners propriété a été définie dynamiquement sur vos courtiers, exécutez la commande suivante, où se $bs trouve la chaîne de connexion au serveur bootstrap de votre cluster, et assurez-vous que la sortie n'inclut pas : advertised.listeners

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

    Pour plus d'informations sur les propriétés définies dynamiquement, consultezConfiguration dynamique d'Amazon MSK.

Déroulement de la migration

Lorsque vous lancez une ZooKeeper-to-KRaft migration, Amazon MSK exécute automatiquement les étapes suivantes :

  1. Amazon MSK fournit des nœuds de contrôleur KRAFT dans votre cluster. Ces contrôleurs sont inclus sans frais supplémentaires.

  2. La migration du plan de données s'exécute : les courtiers sont reconfigurés pour utiliser le quorum Kraft pour les métadonnées tout en continuant à gérer le trafic client.

  3. Une fois que tous les courtiers sont enregistrés auprès du quorum Kraft, Amazon MSK met les nœuds hors service. ZooKeeper

  4. Le mode de gestion du cluster est mis à jour vers KRAFT.

La migration est une opération de longue haleine qui peut prendre plusieurs heures en fonction de la taille du cluster. Vous pouvez surveiller l'état des opérations à l'aide de l'DescribeClusterOperationAPI.

Important

La migration ne peut pas être inversée. Une fois le cluster migré en mode KRAFT, vous ne pouvez pas le remettre ZooKeeper en mode.

Migrez à l'aide du AWS CLI

  1. Vérifiez les versions cibles disponibles pour votre cluster :

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

    La sortie inclut les versions cibles de KRAFT (avec un .kraft suffixe) si votre cluster est éligible à la migration.

  2. Démarrez la migration en spécifiant la version cible de Kraft :

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

    Les versions de cluster ne sont pas des entiers simples. Utilisez cette DescribeCluster opération pour trouver la version actuelle de votre cluster.

  3. Suivez la progression de la migration :

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

    L'état de fonctionnement passe par UPDATE_IN_PROGRESS et se termine parUPDATE_COMPLETE.

Après la migration

Une fois la migration terminée :

  • Votre cluster fonctionne en mode KRAFT. Toutes les métadonnées sont gérées par les contrôleurs KRAFT.

  • ZooKeeper les nœuds sont supprimés. La chaîne de ZooKeeper connexion n'est plus disponible.

  • Les applications clientes continuent de fonctionner sans aucune modification si elles utilisent la chaîne de --bootstrap-server connexion.

  • Vous pouvez afficher les points de terminaison des contrôleurs KRAFT à l'aide de l'ListNodesAPI si vous en avez besoin pour une surveillance ouverte.