CentOS 7安裝Kafka

一、安裝Java

在CentOS 7系統中安裝Kafka需要先安裝Java,可以選擇OpenJDK或者Oracle JDK,本文以安裝OpenJDK為例。

sudo yum install java-1.8.0-openjdk -y
java -version

執行上述命令即可完成安裝,通過java -version確認Java是否安裝成功。

二、安裝Kafka

1.下載Kafka

從官網下載最新的Kafka發布版本:https://kafka.apache.org/downloads,本文以kafka_2.12-2.7.0.tgz為例進行示範。

wget https://dlcdn.apache.org/kafka/2.7.0/kafka_2.12-2.7.0.tgz

2.解壓Kafka並設置環境變數

tar -xzf kafka_2.12-2.7.0.tgz
sudo mv kafka_2.12-2.7.0 /usr/local/kafka
echo "export KAFKA_HOME=/usr/local/kafka" >> ~/.bashrc
echo "export PATH=$PATH:$KAFKA_HOME/bin" >> ~/.bashrc
source ~/.bashrc

執行上述命令,將Kafka解壓到/usr/local/kafka目錄,並配置環境變數。

三、啟動和測試Kafka

1.啟動Kafka服務

使用以下命令啟動Kafka服務:

cd $KAFKA_HOME
bin/zookeeper-server-start.sh config/zookeeper.properties

等待ZooKeeper啟動後,新開一個終端啟動Kafka服務:

cd $KAFKA_HOME
bin/kafka-server-start.sh config/server.properties

2.創建Topic

使用以下命令創建一個Topic:

bin/kafka-topics.sh --create --topic my-topic --bootstrap-server localhost:9092

執行以上命令即可創建一個Topic,名為my-topic。

3.發布和消費消息

使用以下命令在Topic中發布消息:

bin/kafka-console-producer.sh --topic my-topic --bootstrap-server localhost:9092

然後在控制台中輸入需要發布的消息。使用以下命令消費消息:

bin/kafka-console-consumer.sh --topic my-topic --from-beginning --bootstrap-server localhost:9092

執行以上命令即可消費消息。

四、配置Kafka

1.修改Kafka配置

編輯Kafka配置文件config/server.properties:

sudo vi $KAFKA_HOME/config/server.properties

可以修改默認的Kafka配置,例如修改broker的id、日誌目錄等,也可以添加自定義的配置。

2.配置單機多節點Kafka集群

在多台機器上安裝Kafka並配置其為一個集群,需要在每個Kafka節點上修改配置。

比如在兩台機器上搭建Kafka集群:zk01(192.168.1.1)、zk02(192.168.1.2),配置方式如下:

在zk01上修改配置文件

sudo vi $KAFKA_HOME/config/server.properties

修改以下屬性,其他屬性根據需要進行配置:

broker.id=0
listeners=PLAINTEXT://192.168.1.1:9092
advertised.listeners=PLAINTEXT://192.168.1.1:9092
num.network.threads=3
num.io.threads=8
socket.send.buffer.bytes=102400
socket.receive.buffer.bytes=102400
socket.request.max.bytes=104857600
log.dirs=/data/kafka-logs
num.partitions=1
num.recovery.threads.per.data.dir=1
offsets.topic.replication.factor=1
transaction.state.log.replication.factor=1
transaction.state.log.min.isr=1
log.retention.hours=168
log.segment.bytes=1073741824
log.retention.check.interval.ms=300000
zookeeper.connect=zk01:2181,zk02:2181
zookeeper.connection.timeout.ms=6000

在zk02上修改配置文件

sudo vi $KAFKA_HOME/config/server.properties

修改以下屬性,其他屬性根據需要進行配置:

broker.id=1
listeners=PLAINTEXT://192.168.1.2:9092
advertised.listeners=PLAINTEXT://192.168.1.2:9092
num.network.threads=3
num.io.threads=8
socket.send.buffer.bytes=102400
socket.receive.buffer.bytes=102400
socket.request.max.bytes=104857600
log.dirs=/data/kafka-logs
num.partitions=1
num.recovery.threads.per.data.dir=1
offsets.topic.replication.factor=1
transaction.state.log.replication.factor=1
transaction.state.log.min.isr=1
log.retention.hours=168
log.segment.bytes=1073741824
log.retention.check.interval.ms=300000
zookeeper.connect=zk01:2181,zk02:2181
zookeeper.connection.timeout.ms=6000

修改完成後,分別在兩台機器上啟動Kafka服務即可搭建Kafka集群。

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/219663.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-09 11:00
下一篇 2024-12-09 11:00

相關推薦

  • CentOS 6如何刪除resolv.conf的DNS

    本文將介紹在CentOS 6操作系統下如何刪除resolv.conf文件中的DNS配置信息。 一、備份resolv.conf文件 在修改resolv.conf文件之前,建議首先備份…

    編程 2025-04-29
  • 使用CentOS配置監控

    本文將介紹如何使用CentOS配置監控,包括如何安裝監控工具、配置監控參數、監控其他伺服器等方面。 一、安裝監控工具 要想進行監控,首先需要安裝監控工具。在CentOS系統中,常見…

    編程 2025-04-29
  • 在CentOS上安裝Redis

    Redis是一款非關係型資料庫,它支持多種數據結構,包括字元串、哈希、列表、集合、有序集合等。Redis運行內存內並且支持數據持久化,它還可以應用於緩存、消息隊列等場景。本文將介紹…

    編程 2025-04-28
  • Python消費Kafka數據指南

    本文將為您詳細介紹如何使用Python消費Kafka數據,旨在幫助讀者快速掌握這一重要技能。 一、Kafka簡介 Kafka是一種高性能和可伸縮的分散式消息隊列,由Apache軟體…

    編程 2025-04-28
  • CentOS 7在線安裝MySQL 8

    在本文中,我們將介紹如何在CentOS 7操作系統中在線安裝MySQL 8。我們會從安裝環境的準備開始,到安裝MySQL 8的過程進行詳細的闡述。 一、環境準備 在進行MySQL …

    編程 2025-04-27
  • CentOS 開啟 SSH

    一、安裝 SSH SSH 是 Secure Shell 的縮寫,是一種安全協議。在 CentOS 系統中,可以通過以下命令安裝 SSH: sudo yum install open…

    編程 2025-04-25
  • CentOS 7安裝JDK 1.8詳解

    一、下載JDK 1.8安裝文件 首先,為了在CentOS 7上安裝JDK 1.8,我們需要從官方網站(http://www.oracle.com/technetwork/java/…

    編程 2025-04-25
  • CentOS安裝Kubernetes教程

    一、安裝必備組件 在開始安裝Kubernetes之前,需要安裝一些必備組件: sudo yum install -y yum-utils device-mapper-persist…

    編程 2025-04-25
  • Flink消費Kafka

    一、Flink消費Kafka簡介 Apache Flink是一個分散式流處理引擎,提供在大規模數據上實時計算的能力,同時也支持批處理模式。在結合Kafka使用時,Flink可以通過…

    編程 2025-04-25
  • Centos查看Python版本詳解

    一、使用命令行查看Python版本 1、Centos默認自帶Python,使用以下命令可以查看系統自帶的Python版本: python –version 2、如果你安裝了多個版…

    編程 2025-04-25

發表回復

登錄後才能評論