Kafka 1.0.0集群安装

Posted 一泽涟漪

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Kafka 1.0.0集群安装相关的知识,希望对你有一定的参考价值。

环境

主机名  IP 地址 安装路径 系统
sht-sgmhadoopdn-01 172.16.101.58

/opt/kafka_2.12-1.0.0

/opt/kafka(软连接)

CentOS Linux release 7.3.1611 (Core)

sht-sgmhadoopdn-02  172.16.101.59
sht-sgmhadoopdn-03 172.16.101.60

软件下载

Kafka下载

http://archive.apache.org/dist/kafka/1.0.0/kafka_2.12-1.0.0.tgz

JDK下载

https://download.oracle.com/otn/java/jdk/8u45-b14/jdk-8u45-linux-x64.tar.gz

 

软件安装

 1. 安装jdk

# wget https://download.oracle.com/otn/java/jdk/8u45-b14/jdk-8u45-linux-x64.tar.gz
# tar -zxf jdk-8u45-linux-x64.tar.gz -C /usr/

2.设置.bash_profile环境变量

JAVA_HOME=/usr/java/jdk1.8.0_45
KAFKA_HOME=/opt/kafka
CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:$JRE_HOME/lib
PATH=$KAFKA_HOME/bin:$JAVA_HOME/bin:$JRE_HOME/bin:$PATH:$HOME/bin
export PATH

3. 安装kafka

# wget http://archive.apache.org/dist/kafka/1.0.0/kafka_2.12-1.0.0.tgz -P /opt
# ln -s kafka_2.12-1.0.0 kafka
# mkdir /opt/kafka/data

软件配置

1. zookeeper配置

文件zookeeper.properties,各节点一致

tickTime=2000
initLimit=10
syncLimit=5
dataDir=/opt/kafka/data
clientPort=2182
server.1=sht-sgmhadoopdn-01:2889:3889
server.2=sht-sgmhadoopdn-02:2889:3889
server.3=sht-sgmhadoopdn-03:2889:3889

 各节点分别创建server-id

sht-sgmhadoopdn-01

# echo 1 > /opt/kafka/data/myid

sht-sgmhadoopdn-02

# echo 2 > /opt/kafka/data/myid

sht-sgmhadoopdn-03

# echo 3 > /opt/kafka/data/myid

2.启动zookeeper

# /opt/kafka/bin/zookeeper-server-start.sh -daemon /opt/kafka/config/zookeeper.properties

 3.查看zookeeper集群状态

# echo stat | nc sht-sgmhadoopdn-01 2182 | grep Mode
Mode: follower
# echo stat | nc sht-sgmhadoopdn-02 2182 | grep Mode
Mode: leader
# echo stat | nc sht-sgmhadoopdn-03 2182 | grep Mode
Mode: follower

 2. kafka配置

sht-sgmhadoopdn-01

broker.id=0
listeners=PLAINTEXT://172.16.101.58:9092
advertised.listeners=PLAINTEXT://172.16.101.58:9092
log.dirs=/opt/kafka/data
zookeeper.connect=sht-sgmhadoopdn-01:2182,sht-sgmhadoopdn-02:2182,sht-sgmhadoopdn-03:2182

sht-sgmhadoopdn-02

broker.id=1
listeners=PLAINTEXT://172.16.101.59:9092
advertised.listeners=PLAINTEXT://172.16.101.59:9092
log.dirs=/opt/kafka/data
zookeeper.connect=sht-sgmhadoopdn-01:2182,sht-sgmhadoopdn-02:2182,sht-sgmhadoopdn-03:2182

 sht-sgmhadoopdn-03

broker.id=2
listeners=PLAINTEXT://172.16.101.60:9092
advertised.listeners=PLAINTEXT://172.16.101.60:9092
log.dirs=/opt/kafka/data
zookeeper.connect=sht-sgmhadoopdn-01:2182,sht-sgmhadoopdn-02:2182,sht-sgmhadoopdn-03:2182

 启动kafka

# /opt/kafka/bin/kafka-server-start.sh -daemon /opt/kafka/config/server.properties

查看集群状态

# echo dump | nc sht-sgmhadoopdn-01 2182 | grep broker
    /brokers/ids/0
    /brokers/ids/1
    /brokers/ids/2

 测试

创建topic

# kafka-topics.sh --zookeeper sht-sgmhadoopdn-01:2182,sht-sgmhadoopdn-02:2182,sht-sgmhadoopdn-03:2182 --create --partitions 3 --replication-factor 3 --topic test-topic
Created topic "test-topic".
# kafka-topics.sh --zookeeper sht-sgmhadoopdn-01:2182,sht-sgmhadoopdn-02:2182,sht-sgmhadoopdn-03:2182 --describe --topic test-topic
Topic:test-topic    PartitionCount:3    ReplicationFactor:3    Configs:
    Topic: test-topic    Partition: 0    Leader: 1    Replicas: 1,2,0    Isr: 1,2,0
    Topic: test-topic    Partition: 1    Leader: 2    Replicas: 2,0,1    Isr: 2,0,1
    Topic: test-topic    Partition: 2    Leader: 0    Replicas: 0,1,2    Isr: 0,1,2

 

生产者生产数据

# kafka-console-producer.sh --broker-list sht-sgmhadoopdn-01:9092,sht-sgmhadoopdn-02:9092,sht-sgmhadoopdn-03:9092 --topic test-topic
>Hello
>This is my fisrt Kafka !

 

消费者消费数据

# kafka-console-consumer.sh --bootstrap-server bootstrap-servers=sht-sgmhadoopdn-01:9092,sht-sgmhadoopdn-02:9092,sht-sgmhadoopdn-03:9092 --topic test-topic --from-beginning
Hello
This is my fisrt Kafka !

 

以上是关于Kafka 1.0.0集群安装的主要内容,如果未能解决你的问题,请参考以下文章

kafka 集群搭建

kafka1.0.0集群搭建

Kafka 集群配置SASL+ACL

安装单机kafka

kafka服务部署从单机到集群

滚动升级Kafka时出错