设为首页 收藏本站
查看: 1204|回复: 0

[经验分享] Centos6.x Kafka集群部署

[复制链接]

尚未签到

发表于 2019-1-31 09:01:18 | 显示全部楼层 |阅读模式
  一、安装及配置(JDK、3台服务器都是需要安装)
  1、卸载原有JDK
yum -y remove java
  2、创建用户
useradd kafka
  3、安装及配置

tar -xvf jdk-8u181-linux-x64.tar.gz
chown -R kafka.kafka jdk1.8.0_181
mv jdk1.8.0_181 /usr/local/jdk
  4、设置环境变量

su - kafka
vim ~/.bash_profile 
export JAVA_HOME=/usr/local/jdk
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
source ~/.bash_profile
  5、查看当前jdk版本

su - kafka
[kafka@localhost ~]$ java -version  
java version "1.8.0_181"
Java(TM) SE Runtime Environment (build 1.8.0_181-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.181-b13, mixed mode)
  二、安装及配置(zookeeper)
1、下载安装包
https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.4.13/zookeeper-3.4.13.tar.gz
  2、安装及配置(zookeeper 3台服务器都是需要安装)

tar -xvf zookeeper-3.4.13.tar.gz 
mkdir /app
mv zookeeper-3.4.13 /app/zk
mkdir -p /app/zk/data
cp /app/zk/conf/zoo_sample.cfg /app/zk/conf/zoo_sample.cfg.bak20180903
cp /app/zk/conf/zoo_sample.cfg /app/zk/conf/zoo.cfg
mkdir /app/zk/data/zookeeper/ -p
chown -R kafka.kafka /app/zk
  配置参数说明:

server.id=host:port:port:表示了不同的zookeeper服务器的自身标识,作为集群的一部分,每一台服务器应该知道其他服务器的信息。
用户可以从"server.id=host:port:port" 中读取到相关信息。
在服务器的data(dataDir参数所指定的目录)下创建一个文件名为myid的文件,这个文件的内容只有一行,指定的是自身的id值。
比如,服务器"1"应该在myid文件中写入"1"。这个id必须在集群环境中服务器标识中是唯一的,且大小在1~255之间。
这一样配置中,zoo1代表第一台服务器的IP地址。第一个端口号(port)是从follower连接到leader机器的端口,第二个端口是用来进行leader选举时所用的端口。
所以,在集群配置过程中有三个非常重要的端口:clientPort=2181、port:2888、port:3888
  grep -n ^[a-Z] /app/zk/conf/zoo.cfg 
2:tickTime=2000
5:initLimit=10
8:syncLimit=5
12:dataDir=/app/zk/data/zookeeper
13:dataLogDir=/app/zk/data/logs
15:clientPort=2181
18:maxClientCnxns=60
26:autopurge.snapRetainCount=3
29:autopurge.purgeInterval=1
30:server.1=172.16.8.246:2888:3888
31:server.2=172.16.8.247:2888:3888
32:server.3=172.16.8.248:2888:3888
  vim /app/zk/bin/zkServer.sh 
125 ZOO_LOG_DIR="$($GREP "^[[:space:]]dataLogDir" "$ZOOCFG" | sed -e 's/.=//')"
126 if [ ! -w "$ZOO_LOG_DIR" ] ; then
127 mkdir -p "$ZOO_LOG_DIR"
128 fi
  启动zookeeper服务之前,还需要分别在三个zookeeper节点机器上创建myid

su - kafka
echo 1 >  /app/zk/data/zookeeper/myid
[kafka@localhost ~]$ cat  /app/zk/data/zookeeper/myid
1
su - kafka
echo 2 >  /app/zk/data/zookeeper/myid
[kafka@localhost ~]$ cat  /app/zk/data/zookeeper/myid
2
su - kafka
echo 3 >  /app/zk/data/zookeeper/myid
[kafka@localhost ~]$ cat  /app/zk/data/zookeeper/myid
3启动zookeeper服务
[kafka@localhost ~]$ /app/zk/bin/zkServer.sh start
ZooKeeper JMX enabled by default
Using config: /app/zk/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
[kafka@localhost ~]$ /app/zk/bin/zkServer.sh start
ZooKeeper JMX enabled by default
Using config: /app/zk/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
[kafka@localhost ~]$ /app/zk/bin/zkServer.sh start
ZooKeeper JMX enabled by default
Using config: /app/zk/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
[kafka@localhost ~]$ ps -ef|grep zookeeper
kafka      2053      1  7 20:36 pts/0    00:00:00 /usr/local/jdk/bin/java -Dzookeeper.log.dir=/app/zk/data/logs -Dzookeeper.root.logger=INFO,CONSOLE -cp /app/zk/bin/../build/classes:/app/zk/bin/../build/lib/*.jar:/app/zk/bin/../lib/slf4j-log4j12-1.7.25.jar:/app/zk/bin/../lib/slf4j-api-1.7.25.jar:/app/zk/bin/../lib/netty-3.10.6.Final.jar:/app/zk/bin/../lib/log4j-1.2.17.jar:/app/zk/bin/../lib/jline-0.9.94.jar:/app/zk/bin/../lib/audience-annotations-0.5.0.jar:/app/zk/bin/../zookeeper-3.4.13.jar:/app/zk/bin/../src/java/lib/*.jar:/app/zk/bin/../conf:/app/zk/bin/../build/classes:/app/zk/bin/../build/lib/*.jar:/app/zk/bin/../lib/slf4j-log4j12-1.7.25.jar:/app/zk/bin/../lib/slf4j-api-1.7.25.jar:/app/zk/bin/../lib/netty-3.10.6.Final.jar:/app/zk/bin/../lib/log4j-1.2.17.jar:/app/zk/bin/../lib/jline-0.9.94.jar:/app/zk/bin/../lib/audience-annotations-0.5.0.jar:/app/zk/bin/../zookeeper-3.4.13.jar:/app/zk/bin/../src/java/lib/*.jar:/app/zk/bin/../conf:.:/usr/local/jdk/lib/dt.jar:/usr/local/jdk/lib/tools.jar -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.local.only=false org.apache.zookeeper.server.quorum.QuorumPeerMain /app/zk/bin/../conf/zoo.cfg
  查看三个节点的zookeeper角色
节点1
[kafka@localhost ~]$ /app/zk/bin/zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /app/zk/bin/../conf/zoo.cfg
Mode: follower
  节点2
[kafka@localhost ~]$ /app/zk/bin/zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /app/zk/bin/../conf/zoo.cfg
Mode: follower
  节点3
[kafka@localhost ~]$ /app/zk/bin/zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /app/zk/bin/../conf/zoo.cfg
Mode: leader
  三、安装及配置(kafka)
下载安装包
http://mirrors.shu.edu.cn/apache/kafka/2.0.0/kafka_2.12-2.0.0.tgz
tar -xvf kafka_2.12-2.0.0.tgz
mv kafka_2.12-2.0.0  /app/kafka
chown -R kafka.kafka /app/kafka
cp /app/kafka/config/server.properties /app/kafka/config/server.properties.bak20180903

[root@localhost app]# grep -n ^[a-Z] /app/kafka/config/server.properties
21:broker.id=1
22:delete.topic.enable=true
31:listeners=PLAINTEXT://172.16.8.246:9092
42:num.network.threads=3
45:num.io.threads=8
48:socket.send.buffer.bytes=102400
51:socket.receive.buffer.bytes=102400
54:socket.request.max.bytes=104857600
60:log.dirs=/app/kafka/data
65:num.partitions=1
69:num.recovery.threads.per.data.dir=1
74:offsets.topic.replication.factor=1
75:transaction.state.log.replication.factor=1
76:transaction.state.log.min.isr=1
90:log.flush.interval.messages=10000
93:log.flush.interval.ms=1000
103:log.retention.hours=168
107:log.retention.bytes=1073741824
110:log.segment.bytes=1073741824
114:log.retention.check.interval.ms=300000
123:zookeeper.connect=172.16.8.246:2181,172.16.8.247:2181,172.16.8.248:2181
126:zookeeper.connection.timeout.ms=6000
136:group.initial.rebalance.delay.ms=0
  将安装目录拷贝,其他两个节点
scp -r kafka 172.16.8.247:/app/
scp -r kafka 172.16.8.248:/app/
chown -R kafka.kafka /app/kafka
  分别在三台服务相关参数
vim /app/kafka/config/server.properties
broker.id=1
listeners=PLAINTEXT://172.16.8.246:9092
  vim /app/kafka/config/server.properties
broker.id=2
listeners=PLAINTEXT://172.16.8.247:9092
  vim /app/kafka/config/server.properties
broker.id=3
listeners=PLAINTEXT://172.16.8.248:9092
  su - kafka
nohup /app/kafka/bin/kafka-server-start.sh /app/kafka/config/server.properties >/dev/null 2>&1 &
  su - kafka
/app/kafka/bin/kafka-topics.sh --create --zookeeper 172.16.8.246:2181,172.16.8.247:2181,172.16.8.248:2181 --replication-factor 1 --partitions 1 --topic qas
  分别在三台服务执行,查看结果为qas表示集群正常
[kafka@localhost app]$ /app/kafka/bin/kafka-topics.sh --list --zookeeper 172.16.8.246:2181,172.16.8.247:2181,172.16.8.248:2181
qas




运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-669864-1-1.html 上篇帖子: 深入了解Kafka基本原理 下篇帖子: kafka 安装和启动
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表