Ubuntu 20.04は、スムーズな送信やデータストリームの高速で効率的な処理など、多くの複雑なインフラストラクチャを展開するための基盤となる堅牢なオペレーティングシステムです。この投稿では、Ubuntu20.04にApacheKafkaをインストールする方法を学習するため、今日は1つをデプロイする方法を学習します。
Apache Kafkaソフトウェアは、Apache Software Foundationによって開発され、ストリーム処理に特化したオープンソースのクロスプラットフォームアプリケーションです。これにより、ログストリームをリアルタイムで公開、保存、処理、およびサブスクライブできます。さまざまなソースからのデータストリームを処理し、さまざまなユーザーに配信するように設計されています。
Apache Kafkaは、従来のエンタープライズメッセージングシステムの代替手段です。これは、LinkedInが1日あたり14億通のメッセージを処理するために開発した内部システムとして始まりました。
このプラットフォームは、NetflixやMicrosoftなどの大企業がアーキテクチャで使用しているおかげで人気を博し始めています。 KafkaはJavaとScalaで記述されているため、実行するにはシステムに存在している必要があります。
Ubuntu20.04にApacheKafkaをインストールします
Apache KafkaはJavaで構築されているため、手順を進める前にインストールする必要があります。
したがって、ターミナルを開くか、SSH経由でサーバーに接続し、Ubuntuを更新します
sudo apt update sudo apt upgrade
次に、UbuntuにJavaをインストールします。
sudo apt install default-jdk default-jre
次のステップは、システムに新しいユーザーを追加して、Kafkaをシステムで管理できるようにすることです。
sudo adduser kafka
作成したユーザーをsudo
に追加する必要があります プログラムを実行するのに十分な権限を持つようにグループ化します。
sudo adduser kafka sudo
これで、kafka
ユーザーが作成され、準備が整いました。su
を使用してログインできます。 コマンド
su -l kafka
ApacheKafkaのダウンロードとインストール
プログラムをダウンロードするための新しいフォルダを作成します。これをkafka
と呼びます ただし、別の名前を選択できます。
mkdir kafka
wget
を使用して、そこからアクセスします。 コマンドを実行すると、プログラムの最新の安定バージョンをダウンロードできます。
cd kafka wget https://downloads.apache.org/kafka/2.7.0/kafka_2.13-2.7.0.tgz
サンプル出力:
--2021-04-15 23:13:07-- https://downloads.apache.org/kafka/2.7.0/kafka_2.13-2.7.0.tgz Resolving downloads.apache.org (downloads.apache.org)... 2a01:4f8:10a:201a::2, 88.99.95.219 Connecting to downloads.apache.org (downloads.apache.org)|2a01:4f8:10a:201a::2|:443... connected. HTTP request sent, awaiting response... 200 OK Length: 68583422 (65M) [application/x-gzip] Saving to: ‘kafka_2.13-2.7.0.tgz’ kafka_2.13-2.7.0.tgz 100%[=====================================================================================>] 65.41M 3.08MB/s in 20s 2021-04-15 23:13:27 (3.21 MB/s) - ‘kafka_2.13-2.7.0.tgz’ saved [68583422/68583422]
その後、コマンドtar
を使用して解凍します 。
tar -xvzf kafka_2.13-2.7.0.tgz --strip 1
これで、システムにバイナリが正しく配置されました。そのため、使用する前にいくつかの構成を行う必要があります。
ApacheKafkaを使用する前に構成する
デフォルトでは、ApacheKafkaではトピックを削除できません。この混乱の中で、トピックは、メッセージで公開できるカテゴリ、グループ、またはフィード名にすることができます。したがって、これを変更することをお勧めします。
これを行うには、server.properties
を開きます config
内のファイル フォルダ
nano config/server.properties
そして、delete.topic.enable
を見つけます ディレクティブをtrue
に設定します 。
delete.topic.enable = true
この同じファイルで、ApacheKafkaが生成されたログを保存するフォルダーを変更できます。
log.dirs=/home/kafka/logs
この場合、logsフォルダはホームディレクトリと同じディレクトリにある必要があります。
もう1つの構成は、Kafkaをシステムサービスであるかのように管理するサービスを作成することです。これにより、起動、停止、ステータスの確認が簡単になります。
ただし、Zookeeper
から始める必要があります これは、Kafkaがクラスターの構成とステータスを管理するためのサービスです。
これを行うには、Zookeeper
の新しいファイルを作成します サービスがホストされているディレクトリにあります。
sudo nano /etc/systemd/system/zookeeper.service
そして、以下を追加します
[Unit] Requires=network.target remote-fs.target After=network.target remote-fs.target [Service] Type=simple User=kafka ExecStart=/home/kafka/kafka/bin/zookeeper-server-start.sh /home/kafka/kafka/config/zookeeper.properties ExecStop=/home/kafka/kafka/bin/zookeeper-server-stop.sh Restart=on-abnormal [Install] WantedBy=multi-user.target
変更を保存してエディタを閉じます。
次に、kafkaについても同じようにします。
sudo nano /etc/systemd/system/kafka.service
そして、以下を追加します:
[Unit] Requires=zookeeper.service After=zookeeper.service [Service] Type=simple User=kafka ExecStart=/bin/sh -c '/home/kafka/kafka/bin/kafka-server-start.sh /home/kafka/kafka/config/server.properties > /home/kafka/kafka/kafka.log 2>&1' ExecStop=/home/kafka/kafka/bin/kafka-server-stop.sh Restart=on-abnormal [Install] WantedBy=multi-user.target
もう一度、変更を保存してエディタを閉じます。
変更を適用するには、システムデーモンリストを更新するだけです。
sudo systemctl daemon-reload
そして、KafkaおよびZookeeperサービスを開始します。
sudo systemctl start kafka sudo systemctl enable kafka sudo systemctl enable zookeeper sudo systemctl start zookeeper
これでインストールは完了です。
Apache Kafkaは、効果的なデータ送信を必要とする大企業向けのプロフェッショナルなオープンソースソリューションです。オープンソースであることは、それがどれほど強力で管理しやすいかについての参考になります。
だから、この投稿を共有してコメントを残してください。
カフカのウェブサイト