溫馨提示×

如何在CentOS上部署Kafka高可用集群

小樊
98
2025-02-08 19:06:10
欄目: 智能運維

在CentOS上部署Kafka高可用集群涉及多個步驟,包括安裝Java、配置Zookeeper、安裝Kafka、配置Kafka、創建Kafka主題以及啟動Kafka服務。以下是一個詳細的步驟指南:

1. 安裝Java

Kafka需要Java運行環境,首先確保你的系統上已經安裝了Java。

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

2. 配置Zookeeper

Kafka依賴于Zookeeper進行集群管理和協調。

安裝Zookeeper

sudo yum install zookeeper-server-start zookeeper-server-stop zookeeper

配置Zookeeper

編輯Zookeeper配置文件 /etc/zookeeper/conf/zoo.cfg

dataDir=/var/lib/zookeeper
clientPort=2181
maxClientCnxns=60
initLimit=5
syncLimit=2
server.1=zookeeper1:2888:3888
server.2=zookeeper2:2888:3888
server.3=zookeeper3:2888:3888

啟動Zookeeper服務

sudo systemctl start zookeeper
sudo systemctl enable zookeeper

3. 安裝Kafka

下載Kafka

wget https://downloads.apache.org/kafka/2.8.1/kafka_2.13-2.8.1.tgz
tar -xzf kafka_2.13-2.8.1.tgz
cd kafka_2.13-2.8.1

配置Kafka

編輯Kafka配置文件 /kafka_2.13-2.8.1/config/server.properties

broker.id=1
listeners=PLAINTEXT://:9092
zookeeper.connect=zookeeper1:2181,zookeeper2:2181,zookeeper3:2181
log.dirs=/tmp/kafka-logs
num.partitions=3
default.replication.factor=3

創建Kafka主題

bin/kafka-topics.sh --create --topic my-topic --bootstrap-server localhost:9092 --replication-factor 3 --partitions 3

4. 啟動Kafka服務

啟動Kafka Broker

bin/zookeeper-server-start.sh config/zookeeper.properties
bin/kafka-server-start.sh config/server.properties

5. 驗證Kafka集群

你可以使用Kafka自帶的工具來驗證集群是否正常運行。

創建一個生產者

bin/kafka-console-producer.sh --broker-list localhost:9092 --topic my-topic

創建一個消費者

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

6. 配置客戶端連接

確保你的客戶端應用程序配置為連接到Kafka集群。例如,如果你使用的是Spring Boot,可以在 application.yml 中配置:

spring:
  kafka:
    bootstrap-servers: zookeeper1:2181,zookeeper2:2181,zookeeper3:2181
    consumer:
      group-id: my-group
      auto-offset-reset: earliest
    producer:
      key-serializer: org.apache.kafka.common.serialization.StringSerializer
      value-serializer: org.apache.kafka.common.serialization.StringSerializer

通過以上步驟,你應該能夠在CentOS上成功部署一個Kafka高可用集群。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女