View a markdown version of this page

Bermigrasi dari ZooKeeper ke mode Kraft - Amazon Managed Streaming untuk Apache Kafka

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Bermigrasi dari ZooKeeper ke mode Kraft

Anda dapat memigrasikan cluster ZooKeeper-based MSK yang ada ke mode Kraft menggunakan UpdateClusterKafkaVersion API. Migrasi dilakukan di tempat — cluster Anda tetap tersedia selama proses dan tidak ada data yang dipindahkan. Amazon MSK menyediakan pengontrol Kraft, memigrasikan metadata cluster dari ZooKeeper ke kuorum Kraft, dan menonaktifkan node secara otomatis. ZooKeeper

Prasyarat

Sebelum memigrasikan cluster Anda dari ZooKeeper ke mode Kraft, pastikan hal berikut:

  • Cluster Anda menjalankan versi Apache Kafka 3.9.x dalam ZooKeeper mode. Jika cluster Anda menggunakan versi yang lebih lama, tingkatkan ke yang 3.9.x pertama menggunakan proses peningkatan versi standar.

  • Cluster Anda berada dalam ACTIVE status tanpa operasi yang tertunda.

  • Jika Anda menggunakan alat yang mengandalkan ZooKeeper akses langsung (seperti Cruise Control versi lama atau alat admin khusus), perbarui alat tersebut untuk menggunakan Kafka Admin API alih-alih ZooKeeper koneksi langsung.

  • Untuk klaster Standar (disediakan): akses ZooKeeper klien harus dinonaktifkan. Gunakan UpdateConnectivity API untuk mengatur ZookeeperAccess.Enabled=false sebelum memulai migrasi. Cluster ekspres tidak memerlukan langkah ini.

  • Semua aplikasi klien menggunakan string --bootstrap-server koneksi, bukan string --zookeeper koneksi. String ZooKeeper koneksi tidak tersedia setelah migrasi.

  • Cluster Anda tidak mengaktifkan Akses Publik dan Pemantauan Terbuka secara bersamaan.

  • Cluster Anda tidak menggunakan instance kafka.t3.small broker.

  • Cluster Anda tidak menggunakan pendengar yang diiklankan secara dinamis. Untuk memeriksa apakah advertised.listeners properti telah disetel secara dinamis pada broker Anda, jalankan perintah berikut, di mana $bs string koneksi server bootstrap cluster Anda, dan pastikan output tidak termasuk: advertised.listeners

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

    Untuk informasi selengkapnya tentang properti yang disetel secara dinamis, lihatKonfigurasi Amazon MSK dinamis.

Apa yang terjadi selama migrasi

Saat Anda memulai ZooKeeper-to-KRaft migrasi, Amazon MSK melakukan langkah-langkah berikut secara otomatis:

  1. Amazon MSK menyediakan node pengontrol Kraft di cluster Anda. Pengontrol ini disertakan tanpa biaya tambahan.

  2. Migrasi bidang data berjalan: broker dikonfigurasi ulang untuk menggunakan kuorum Kraft untuk metadata sambil terus melayani lalu lintas klien.

  3. Setelah semua broker terdaftar dengan kuorum Kraft, Amazon MSK menonaktifkan node. ZooKeeper

  4. Mode manajemen cluster diperbarui ke KraFT.

Migrasi adalah operasi yang berjalan lama yang dapat memakan waktu beberapa jam tergantung pada ukuran cluster. Anda dapat memantau status operasi menggunakan DescribeClusterOperation API.

penting

Migrasi tidak dapat dibalik. Setelah cluster dimigrasikan ke mode Kraft, Anda tidak dapat mengalihkannya kembali ke ZooKeeper mode.

Bermigrasi menggunakan AWS CLI

  1. Verifikasi versi target yang tersedia untuk cluster Anda:

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

    Outputnya mencakup versi target Kraft (dengan .kraft akhiran) jika cluster Anda memenuhi syarat untuk migrasi.

  2. Mulai migrasi dengan menentukan versi target Kraft:

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

    Versi cluster bukanlah bilangan bulat sederhana. Gunakan DescribeCluster operasi untuk menemukan versi cluster Anda saat ini.

  3. Pantau kemajuan migrasi:

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

    Transisi status operasi melalui UPDATE_IN_PROGRESS dan selesai denganUPDATE_COMPLETE.

Setelah migrasi

Setelah migrasi selesai:

  • Cluster Anda beroperasi dalam mode Kraft. Semua metadata dikelola oleh pengontrol Kraft.

  • ZooKeeper node dihapus. String ZooKeeper koneksi tidak lagi tersedia.

  • Aplikasi klien terus bekerja tanpa perubahan apa pun jika mereka menggunakan string --bootstrap-server koneksi.

  • Anda dapat melihat titik akhir pengontrol Kraft menggunakan ListNodes API jika Anda membutuhkannya untuk pemantauan terbuka.