4.2.4 Kafkaのアップグレード

Kafkaログ・ファイルのバックアップの作成

  1. Kafkaデータのバックアップを作成します:
    1. cd /u02/kafka
    2. mkdir backup
    3. cp -r kafka-logs backup/
    4. cp -r zookeeper backup/

Kafkaブローカのアップグレード

  1. Kafkaホーム・フォルダcd /u01/app/kafkaに移動します。
  2. コマンドsudo systemctl stop kafka.serviceを実行して、Kafkaブローカ・サービスを停止します。
  3. コマンドmkdir backupを実行してバックアップ・フォルダを作成し、すべてのファイルをバックアップ・フォルダに移動します。
  4. Kafka 3.4.0 zipをコピーし、フォルダのコンテンツを抽出します。
  5. 抽出されたすべてのファイルをKafkaの親フォルダ/u01/app/kafkaに移動します。
  6. 構成フォルダ・ファイルをバックアップから新しいkafkaの構成フォルダにコピーします。
  7. 構成フォルダの下のserver.propertyファイルを開き、次のパラメータを追加します:
    • inter.broker.protocol.version=<version_you_are_upgrading_from> 
              
      次に例を示します。
      inter.broker.protocol.version=2.1.1
    • log.message.format.version=<version_you_are_upgrading_from>
      次に例を示します。
      log.message.format.version=2.1.1
  8. コマンドsudo systemctl restart kafka.serviceを実行してブローカを起動し、クラスタが安定するまで数分待ちます。ログで問題がないか確認してください。
  9. コマンドsudo systemctl stop kafka.serviceを実行してブローカを再度停止し、プロトコルを再度更新します。
  10. コマンドsudo systemctl stop kafka.serviceを実行してブローカを停止し、メッセージ形式を更新します。
  11. コマンドsudo systemctl restart kafka.serviceを実行してブローカを起動し、クラスタが安定するまで数分待ちます。ログで問題がないか確認してください。
  12. コマンドsudo systemctl restart kafka.serviceを実行してブローカを起動し、クラスタが安定するまで数分待ちます。ログで問題がないか確認してください。

これで、最新のKafkaブローカが実行されるようになりました。

Zookeeperのアップグレード

  1. Kafkaの親フォルダ(/u01/app/kafka)に移動します
  2. 次のコマンドを実行して、kafkaブローカおよびkafka-zookeeperを停止します。
    sudo systemctl stop kafka.service
    sudo systemctl stop kafka-zookeeper.service
  3. 構成フォルダに移動し、zookeeper.propertiesファイルを開きます
  4. admin.serverPortプロパティをファイルに追加し、他のサービスで使用されていないポート番号に割り当てます。
    admin.serverPort=9876
    または、この機能を無効にするには、次のように設定します
    admin.enableServer=false
  5. コマンドsudo systemctl restart kafka-zookeeper.serviceを実行して、zookeeperを起動します。
    • コマンドggsa-servicesを実行して、zookeeperサービスが稼働しているかどうかを確認します。
    • サービスが稼働していない場合は、zookeeperのログでエラーがないか確認してください。
    • エラーがスナップショットに関連している場合は、スナップショット・ファイルをhttps://issues.apache.org/jira/browse/ZOOKEEPER-3056からダウンロードし、/u02/kafka/zookeeper/version-2/にコピーします。
    • zookeeper.propertiesファイルを開き、プロパティzookeeper.snapshot.trust.empty=trueを追加し、コマンドsudo systemctl restart kafka-zookeeper.serviceを実行してzookeeperを再起動します。
  6. zookeeperが起動したら、コマンドsudo systemctl restart kafka.serviceを実行してKafkaブローカを起動します。
  7. サービスkafka.serviceおよびkafka-zookeeper.serviceが正常に実行されているかどうかを確認します。

これで、Kafkaがアップグレードされました。