19.5. Kafka コンポーネントのアップグレード
ホストマシン上の Kafka コンポーネントをアップグレードして、最新バージョンの AMQ Streams を使用します。AMQ Streams インストールファイルを使用して、次のコンポーネントをアップグレードできます。
- Kafka Connect
- MirrorMaker
- Kafka Bridge (別の ZIP ファイル)
前提条件
-
Red Hat Enterprise Linux に
kafkaユーザーとしてログインしている。 - インストールファイル をダウンロードしている。
別のホストで使用している Kafka およびその他の Kafka コンポーネントをインストールしている。
詳細は、「インストール環境」 を参照してください。
Kafka と ZooKeeper をアップグレード している。
Kafka コンポーネントが Kafka および ZooKeeper と同じホストで実行されている場合は、アップグレード時に Kafka および ZooKeeper も停止して開始する必要があります。
手順
Kafka コンポーネントのインスタンスを実行している各ホストに、以下を行います。
AMQ Streams ソフトウェアダウンロードページ から AMQ Streams または Kafka Bridge インストールファイルをダウンロードします。
注記プロンプトが表示されたら、Red Hat アカウントにログインします。
コマンドラインで一時ディレクトリーを作成し、
amq-streams-<version>-bin.zipファイルの内容を展開します。mkdir /tmp/kafka unzip amq-streams-<version>-bin.zip -d /tmp/kafkaKafka Bridge の場合は、
amq-streams-<version>-bridge-bin.zipファイルを抽出します。- 実行中の場合は、ホストで実行中の Kafka コンポーネントを停止します。
既存のインストールから
libsおよびbinディレクトリーを削除します。rm -rf /opt/kafka/libs /opt/kafka/bin一時ディレクトリーから
libsおよびbinディレクトリーをコピーします。cp -r /tmp/kafka/kafka_<version>/libs /opt/kafka/ cp -r /tmp/kafka/kafka_<version>/bin /opt/kafka/-
必要に応じて、
configディレクトリー内の設定ファイルを更新して、新しいバージョンの変更を反映します。 一時ディレクトリーを削除します。
rm -r /tmp/kafka適切なスクリプトとプロパティーファイルを使用して Kafka コンポーネントを起動します。
スタンドアロンモードでの Kafka Connect の起動
/opt/kafka/bin/connect-standalone.sh \ /opt/kafka/config/connect-standalone.properties <connector1>.properties [<connector2>.properties ...]分散モードでの Kafka Connect の開始
/opt/kafka/bin/connect-distributed.sh \ /opt/kafka/config/connect-distributed.propertiesMirrorMaker 2 を専用モードで起動する
/opt/kafka/bin/connect-mirror-maker.sh \ /opt/kafka/config/connect-mirror-maker.propertiesKafka Bridge の起動
su - kafka ./bin/kafka_bridge_run.sh \ --config-file=<path>/application.propertiesKafka コンポーネントが実行中で、期待どおりにデータを生成または消費していることを確認します。
スタンドアロンモードで Kafka Connect が実行されていることを確認する
jcmd | grep ConnectStandalone分散モードの Kafka Connect が実行されていることを確認する
jcmd | grep ConnectDistributedMirrorMaker 2 が専用モードで実行されていることを確認する
jcmd | grep mirrorMakerログをチェックして Kafka Bridge が実行されていることを確認する
HTTP-Kafka Bridge started and listening on port 8080 HTTP-Kafka Bridge bootstrap servers localhost:9092