(一)CentOS Zookeeper+Kafka集群的安装部署

编写日期:2018-03-02

编写作者:mtsbv110

邮    箱:2532874889@qq.com

 

主机规划:192.168.9.131

JDK版本

jdk-7u79-linux-x64.gz

安装目录

/usr/local/jdk1.7.0_79

ZK版本

zookeeper-3.4.6.tar.gz

安装目录

/usr/local/node-01

Scala 版本

scala-2.11.4.tgz 

安装目录

/usr/local/scala

Kafka版本

kafka_2.9.2-0.8.1.tgz

安装目录

/usr/local/kafka

 

主机规划:192.168.9.132

JDK版本

jdk-7u79-linux-x64.gz

安装目录

/usr/local/jdk1.7.0_79

ZK版本

zookeeper-3.4.6.tar.gz

安装目录

/usr/local/node-01

Scala 版本

scala-2.11.4.tgz 

安装目录

/usr/local/scala

Kafka版本

kafka_2.9.2-0.8.1.tgz

安装目录

/usr/local/kafka

 

主机规划:192.168.9.133

JDK版本

jdk-7u79-linux-x64.gz

安装目录

/usr/local/jdk1.7.0_79

ZK版本

zookeeper-3.4.6.tar.gz

安装目录

/usr/local/node-01

Scala 版本

scala-2.11.4.tgz 

安装目录

/usr/local/scala

Kafka版本

kafka_2.9.2-0.8.1.tgz

安装目录

/usr/local/kafka

 

[root@jetsen-zk-01 ~]# hostnamectl --static set-hostname jetsen-zk-01

[root@jetsen-zk-02 ~]# hostnamectl --static set-hostname jetsen-zk-02

[root@jetsen-zk-03 ~]# hostnamectl --static set-hostname jetsen-zk-03

 

  • Zookeeper配置(提前配置JDK及环境变量)

 

JAVA_HOME=/usr/local/jdk1.7.0_79

ZOOKEEPER_HOME=/usr/local/node-01

PATH=$JAVA_HOME/bin:$ZOOKEEPER_HOME/bin:$PATH

CLASSPATH=$JAVA_HOME/jre/lib/ext:$JAVA_HOME/lib/tools.jar

export PATH JAVA_HOME CLASSPATH ZOOKEEPER_HOME

 

创建日志与数据存放目录

[root@jetsen-zk-01 conf]# mkdir -p /usr/local/node-01/data

[root@jetsen-zk-01 conf]# mkdir -p /usr/local/node-01/logs

 

[root@jetsen-zk-02 local]# mkdir -p /usr/local/node-02/data

[root@jetsen-zk-02 local]# mkdir -p /usr/local/node-02/logs

 

[root@jetsen-zk-03 local]# mkdir -p /usr/local/node-03/data

[root@jetsen-zk-03 local]# mkdir -p /usr/local/node-03/logs

 

修改配置文件

dataDir=/usr/local/node-0X/data

dataLogDir=/usr/local/node-0X/logs

 

clientPort=218X

 

server.1=jetsen-zk-01:2881:3881

server.2=jetsen-zk-02:2882:3882

server.3=jetsen-zk-03:2883:3883

 

在dataDir创建文件myid 值分别为1、2、3

 

分别启动/usr/local/nodeX/bin/zkServer.sh start启动zk

查看节点状态

[root@jetsen-zk-0X bin]#  ./zkServer.sh status

JMX enabled by default

Using config: /usr/local/node-0X/bin/../conf/zoo.cfg

Mode: leader

 

  • KafKa配置

在三台节点上解压scala-2.11.4.tgz并配置环境变量

JAVA_HOME=/usr/local/jdk1.7.0_79

ZOOKEEPER_HOME=/usr/local/node-01

SCALA_HOME=/usr/local/scala

PATH=$JAVA_HOME/bin:$ZOOKEEPER_HOME/bin:$SCALA_HOME/bin:$PATH

CLASSPATH=$JAVA_HOME/jre/lib/ext:$JAVA_HOME/lib/tools.jar

export PATH JAVA_HOME CLASSPATH ZOOKEEPER_HOME SCALA_HOME

 

[root@jetsen-zk-01 scala]# scala -version

Scala code runner version 2.11.4 -- Copyright 2002-2013, LAMP/EPFL

 

在三台节点上解压kafka_2.9.2-0.8.1.tgz,并且安装目录规划配置

配置kafka配置文件
[root@jetsen-zk-0X local]# vi /usr/local/kafka/config/server.properties

broker.id:依次增长的整数,0、1、2,集群中Broker的唯一id

zookeeper.connect=192.168.9.131:2181,192.168.9.132:2182,192.168.9.133:2183

 

安装slf4j

将课程提供的slf4j-1.7.6.zip上传到/usr/local目录下

unzip slf4j-1.7.6.zip

把slf4j中的slf4j-nop-1.7.6.jar复制到kafka的libs目录下面

 

解决kafka Unrecognized VM option 'UseCompressedOops'问题

if [ -z "$KAFKA_JVM_PERFORMANCE_OPTS" ]; then

  KAFKA_JVM_PERFORMANCE_OPTS="-server  -XX:+UseCompressedOops -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:+CMSClassUnloadingEnabled -XX:+CMSScavengeBeforeRemark -XX:+DisableExplicitGC -Djava.awt.headless=true"

fi

去掉-XX:+UseCompressedOops即可

 

  • 启动Kafka

(1)启动集群

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

 

(2)后台启动

bin/kafka-server-start.sh config/server.properties 1>/dev/null 2>&1 &

或者

nohup bin/kafka-server-start.sh config/server.properties &

[root@jetsen-zk-02 kafka]#  bin/kafka-server-start.sh  -daemon config/server.properties

 

(3)创建Topic:

[root@jetsen-zk-01 kafka]#

 bin/kafka-topics.sh --create --zookeeper 192.168.9.131:2181,192.168.9.132:2182,192.168.9.133:2183 --partitions 1 --replication-factor 1 --topic test

Created topic "test".

 

partitions指定topic分区数

(分区数,控制topic将分片成多少个log。可以显示指定,如果不指定则会使用broker(server.properties)中的num.partitions配置的数量)

 

replication-factor指定topic每个分区的副本数

(replication factor 控制消息保存在几个broker(服务器)上,一般情况下等于broker的个数。)

 

(4)启动生产者:

[root@jetsen-zk-01 kafka]# bin/kafka-console-producer.sh --broker-list 192.168.9.131:9092,192.168.9.132:9092,192.168.9.133:9092 --topic test

 

(5)启动消费者:

[root@jetsen-zk-01 kafka]# bin/kafka-console-consumer.sh --zookeeper 192.168.9.131:2181,192.168.9.132:2182,192.168.9.133:2183 --topic test --from-beginning

 

(6)查看topic列表:

[root@jetsen-zk-03 kafka]# bin/kafka-topics.sh --list --zookeeper 192.168.9.131:2181,192.168.9.132:2182,192.168.9.133:2183

 

(7)查看Topic详情:

[root@jetsen-zk-03 kafka]# bin/kafka-topics.sh --describe --zookeeper 192.168.9.131:2181,192.168.9.132:2182,192.168.9.133:2183 --topic test

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值