4.2.4 Kafkaのアップグレード
Kafkaログ・ファイルのバックアップの作成
- Kafkaデータのバックアップを作成します:
cd /u02/kafka
mkdir backup
cp -r kafka-logs backup/
cp -r zookeeper backup/
Kafkaブローカのアップグレード
- Kafkaホーム・フォルダ
cd /u01/app/kafka
に移動します。 - コマンド
sudo systemctl stop kafka.service
を実行して、Kafkaブローカ・サービスを停止します。 - コマンド
mkdir backup
を実行してバックアップ・フォルダを作成し、すべてのファイルをバックアップ・フォルダに移動します。 - Kafka 3.4.0 zipをコピーし、フォルダのコンテンツを抽出します。
- 抽出されたすべてのファイルをKafkaの親フォルダ
/u01/app/kafka
に移動します。 - 構成フォルダ・ファイルをバックアップから新しいkafkaの構成フォルダにコピーします。
- 構成フォルダの下の
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
- コマンド
sudo systemctl restart kafka.service
を実行してブローカを起動し、クラスタが安定するまで数分待ちます。ログで問題がないか確認してください。 - コマンド
sudo systemctl stop kafka.service
を実行してブローカを再度停止し、プロトコルを再度更新します。 - コマンド
sudo systemctl stop kafka.service
を実行してブローカを停止し、メッセージ形式を更新します。 - コマンド
sudo systemctl restart kafka.service
を実行してブローカを起動し、クラスタが安定するまで数分待ちます。ログで問題がないか確認してください。 - コマンド
sudo systemctl restart kafka.service
を実行してブローカを起動し、クラスタが安定するまで数分待ちます。ログで問題がないか確認してください。
これで、最新のKafkaブローカが実行されるようになりました。
Zookeeperのアップグレード
- Kafkaの親フォルダ(/u01/app/kafka)に移動します
- 次のコマンドを実行して、kafkaブローカおよびkafka-zookeeperを停止します。
sudo systemctl stop kafka.service
sudo systemctl stop kafka-zookeeper.service
- 構成フォルダに移動し、zookeeper.propertiesファイルを開きます
admin.serverPort
プロパティをファイルに追加し、他のサービスで使用されていないポート番号に割り当てます。admin.serverPort=9876
または、この機能を無効にするには、次のように設定しますadmin.enableServer=false
-
コマンド
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を再起動します。
- コマンド
- zookeeperが起動したら、コマンド
sudo systemctl restart kafka.service
を実行してKafkaブローカを起動します。 - サービス
kafka.service
およびkafka-zookeeper.service
が正常に実行されているかどうかを確認します。
これで、Kafkaがアップグレードされました。