在本教程中,我們將向您展示如何在 Rocky Linux 9 上安裝 Apache Kafka。對於那些不知道的人,Apache Kafka 是一種開源軟件,可以通過分佈式流平台存儲和處理數據流。 它由 Apache 軟件基金會開發,用 Java 和 Scala 編寫。 Apache Kafka 用於構建實時流數據管道和適應數據流的應用程序,特別適用於企業級應用程序和關鍵任務應用程序。
本文假設您至少對 Linux 有基本的了解,您知道如何使用 shell,最重要的是,您在自己的 VPS 上託管您的站點。 安裝非常簡單,它假定您在 root 帳戶下運行,如果不是,您可能需要添加 ' sudo
' 獲取 root 權限的命令。 我將向您展示 Apache Kafka Distributed Streaming Platform 的逐步安裝。 在 Rocky Linux 中。 9.
以前的要求
- 運行以下操作系統之一的服務器:岩石Linux 9.
- 建議您使用全新的操作系統安裝以避免潛在問題。
- 通過 SSH 訪問服務器(如果您在桌面上,則只需打開終端)。
- 到
non-root sudo user
或訪問root user
. 我們建議充當non-root sudo user
但是,如果您在以 root 身份運行時不小心,它可能會損壞您的系統。
在 Rocky Linux 9 上安裝 Apache Kafka
步驟 1. 第一步是將您的系統更新到最新版本的軟件包列表。 為此,請運行以下命令:
sudo dnf check-update sudo dnf install dnf-utils sudo dnf install epel-release
步驟 2. Java 安裝。
Apache Kafka 是基於 Java 的應用程序,因此您的服務器上必須安裝 Java。 現在運行以下命令在您的系統上安裝 Java:
sudo dnf install java-11-openjdk
使用以下命令驗證 Java 安裝:
java --version
有關安裝 Java 的其他資源,請閱讀以下帖子:
- 如何在 Rocky Linux 上安裝 Java √
步驟 3. 在 RockyLinux 9 上安裝 Apache Kafka。
首先,我們使用默認的主目錄為 Kafka 創建一個新的系統用戶 ' /opt/kafka
':
sudo useradd -r -d /opt/kafka -s /usr/sbin/nologin kafka
默認情況下,Apache Kafka 在 Rocky Linux 9 基礎存儲庫中不可用。現在運行以下命令將最新版本的 Apache Kafka 下載到您的系統:
cd /opt sudo curl -fsSLo kafka.tgz https://downloads.apache.org/kafka/3.3.1/kafka_2.12-3.3.1.tgz
接下來,解壓縮下載的文件:
tar -xzf kafka.tgz sudo mv kafka_2.12-3.3.1 /opt/kafka
我們將不得不更改一些文件夾權限:
sudo chown -R kafka:kafka /opt/kafka
接下來,我們為 Apache Kafka 創建一個新的日誌目錄。 另外,編輯默認設置' server.properties
' 使用你最喜歡的文本編輯器:
sudo -u kafka mkdir -p /opt/kafka/logs sudo -u kafka nano /opt/kafka/config/server.properties
取消註釋 ' log.dirs
' 選項並將值更改為 ' /opt/kafka/logs
':
# logs configuration for Apache Kafka log.dirs=/opt/kafka/logs
第 4 步。為 Apache Kafka 和 Zookeeper 創建 Systemd。
對於生產環境,建議創建一個systemd服務文件,用於後台運行Zookeeper和Kafka。
現在我們創建一個 systemd
使用以下命令為 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=/opt/kafka/bin/zookeeper-server-start.sh /opt/kafka/config/zookeeper.properties ExecStop=/opt/kafka/bin/zookeeper-server-stop.sh Restart=on-abnormal [Install] WantedBy=multi-user.target
之後,接下來,為 Apache Kafka 創建一個新的服務文件:
sudo nano /etc/systemd/system/kafka.service
添加以下文件:
[Unit] Requires=zookeeper.service After=zookeeper.service [Service] Type=simple User=kafka ExecStart=/bin/sh -c '/opt/kafka/bin/kafka-server-start.sh /opt/kafka/config/server.properties > /opt/kafka/logs/start-kafka.log 2>&1' ExecStop=/opt/kafka/bin/kafka-server-stop.sh Restart=on-abnormal [Install] WantedBy=multi-user.target
保存更改並退出文件,然後使用以下命令啟動並啟用 Apache Kafka 服務:
sudo systemctl daemon-reload sudo systemctl start zookeeper sudo systemctl start kafka
接下來,使用以下 systemctl 命令使 kafka 和 zookeeper 服務在系統啟動時自動運行。
sudo systemctl enable zookeeper sudo systemctl enable kafka
步驟 5. 在 Kafka 中創建測試主題。
Kafka 允許我們在多台機器上讀取、寫入、存儲和處理事件; 然而,為了存儲這些事件,我們需要一個名為“ Topics
“。 現在將目錄更改為 Apache Kafka 並使用以下命令創建一個名為 topic1 的測試主題:
cd /usr/local/kafka/ bin/kafka-topics.sh --create --bootstrap-server localhost:9092 --replication-factor 1 --partitions 1 --topic topic1
現在使用以下命令檢查您創建的主題:
bin/kafka-topics.sh --list --bootstrap-server localhost:9092
生產:
topic1
首先,運行以下命令以使用下面的以下命令創建名為 event1 的事件:
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic event1
接下來,鍵入要在消費者上傳達和顯示的文本:
>Hi, this is my first event
打開另一個終端,運行以下命令,實時顯示生成的事件數據:
bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic event1 --from-beginning
您將獲得以下輸出:
Hi, this is my first event
恭喜! 您已成功安裝 Apache Kafka。 感謝您使用本教程安裝 Apache Kafka 分佈式流平台。 在您的 Rocky Linux 9 系統上。有關其他幫助或有用信息,我們建議您參考阿帕奇官方網站.