如何在 Rocky Linux 9 上安裝 Apache Kafka

在本教程中,我們將向您展示如何在 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 系統上。有關其他幫助或有用信息,我們建議您參考阿帕奇官方網站.

相關文章