阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Zookeeper,zkui,Kafka 部署笔记

169次阅读
没有评论

共计 4433 个字符,预计需要花费 12 分钟才能阅读完成。

Zookeeper,zkui,Kafka 部署笔记

部署前的准备:

1. 为了方便统一后来 storm 的部署,最好是新建一个 storm 用户,然后切换到 storm 用户下操作;

 2.ifconfig 查看本机的 IP, 在之后的配置文件当中,需要输入本机名或者 localhost 的时候,最好是直接输入本机的 IP 地址,如果一开始输入的是主机名(localhost)或 127.0.0.1 的话,后续会出现许多的问题,如果在出现问题又不是操作错误的话就检查一下各个配置文件,看输入主机名的地方是不是没有改成 IP 地址;

3. 提前准备好需要的安装包,我这里准备的是 zookeeper-3.4.6.deploy.tar.gz、apache-maven-3.2.1.storm.zip、kafka_2.9.2-0.8.1.1.storm.zip,zkui.storm.zip;

4. 在虚拟机中输入 yum -y install lrzsz , 下载一个 rz 包,然后在操作时直接输入 rz 就能直接把文件导入到虚拟机中,我安装的是简化版的 linux,里面没有 unzip , 所以需要 yum -y install unzip 下载 unzip 用来解压结尾是 zip 的压缩包;

一、部署 Zookeeper:

1.su storm

2.mkdir zookeeper

3.cd zookeeper

4.rz  zookeeper-3.4.6.deploy.tar.gz    tar -xvf zookeeper-3.4.6.deploy.tar.gz

解压后 rm -r 删除压缩包 

5. cd zookepper-3.4.6  vim conf/zoo.cfg   修改配置文件:

dataDir=/home/storm/zookeeper/zookeeper-3.4.6/data(改成自己的目录)

dataLogDir=/home/storm/zookeeper/zookeeper-3.4.6/logs(改成自己的目录)

server.1=IP:4887:5887

#server.2=IP:4887:5887

#server.(…)=IP:4887:5887

6.cd .. 返回上一层查看 bin 下是否有执行权限,cd bin ,chmod +x * 或者 chmod +x bin/*

7. 启动 zookeeper(要切换到 zookeeper 下的目录) 执行:

[storm@slave02 zookeeper-3.4.6]$ bin/zkServer.sh start

启动后查看状态: bin/zkServer.sh status;(jps -l)

停止 zk 服务:bin/zkServer.sh stop 重启:bin/zkServer.sh restart 

zk 的初始化目录:get/zookeeper/quota

8. 启动 zookeeper 的客户端,进入客户端就可以进行一些简单的操作:bin/zkCli.sh -server 127.0.0.1:2181(不明白输入 192.168.197.142:2181 两者有啥区别,该输哪个)

命令行工具的一些简单操作如下:
    i. 显示根目录下、文件:ls  /  使用 ls 命令来查看当前 ZooKeeper 中所包含的内容
    ii. 创建文件,并设置初始内容:create /zk “test” 创建一个新的 znode 节点“zk”以及与它关联的字符串
    iii. 获取文件内容:get /zk 确认 znode 是否包含我们所创建的字符串
    iv. 修改文件内容:set /zk “zkbak” 对 zk 所关联的字符串进行设置
    v. 删除文件:delete /zk 将刚才创建的 znode 删除
    vi. 退出客户端:quit
    vii. 帮助命令:help

二、安装 zkui

1. 首先需要安装编译工具 mvn, 我是直接在家目录下导入 apache-maven-3.2.1.storm.zip 和 zkui.storm.zip,分别解压缩做好准备,先安装 mvn

2. 修改配置文件 vim ~/.bash_profile 添加以下命令:(注意修改完.bash_profile 类型的文件后要 source,要 source, 要 source)

##export mvn3
export  MVN_HOME=/home/storm/apache-maven-3.2.1(自己 mvn 的地址)
export  PATH=$PATH:$MVN_HOME/bin

3.source .bash_profile

4.cd zkui

5.mvn clean install(联网下载编译工具,下载过程中尽量保证不断网,否则会出问题,出问题了删了重新配 …)

6.ln -s target/zkui-2.0-SNAPSHOT-jar-with-dependencies.jar  zkui-2.0-SNAPSHOT-jar-with-dependencies.jar(给第一个 jar 创建一个软连接,软连接的名字是空格后的 jar, 通过后面的 jar 可以找到前面的 jar, 不需要到 jar 的目录下,类似于第二个 jar 是第一个 jar 的快捷方式)

7.vim config.cfg    修改 zkServer=192.168.197.142:2181

启动:nohup java -jar zkui-2.0-SNAPSHOT-jar-with-dependencies.jar &

查看:http://123.56.76.213:9090 或者 jps -l

登陆账号密码即可

三、部署 kafka

1. 导入 kafka_2.9.2-0.8.1.1.storm.zip,解压

2. 修改配置文件 config/server.properties:

broker.id=0;
host.name=192.168.197.142;
zookeeper.connect=192.168.197.142:2181 可逗号分隔配置多个

3. 确保 bin 和 sbin 都有执行权限 chmod +x sbin/* chmod +x bin/*

4. 修改配置文件 config/log4j.properties   vim log4j.properties

log4j.appender.D.File =/home/strom/kafka_2.9.2-0.8.1.1/logs/debug.log

log4j.appender.E.File = /home/strom/kafka_2.9.2-0.8.1.1/logs/error.log

5. 启动 kafka 服务 sbin/start-kafka.sh 查看是否启动:jps -l 

四、启动测试

1. 创建 topic    bin/kafka-topics.sh –create –zookeeper IP:2181 –replication-factor 1 –partitions 2 –topic topic-003-name(IP 不能是 localhost)()

2. 再开一个窗口,分别启动 productor 和 consumer

3. 启动 productor  

bin/kafka-console-producer.sh –broker-list 192.168.197.142:9092 –topic lilu

4. 启动 consumer(注意两个命令的区别,IP 后面的端口也是不一样的)

bin/kafka-console-consumer.sh –zookeeper 192.168.197.142:2181 –topic lilu

5. 在 productor 端输入,看 consumer 端的输出

6. 备注:在操作过程中 jps -l 的时候有时候会发现同时启动了多个 zk 或者 kafka,这个时候把多余的杀死 kill -USR2 3417(温柔的杀死)kill -9 3417(强制杀死,最好用前一个);如果操作过程没有问题那就是输入的命令有问题,再返回去自己检查看是哪里输错了

五、生成日志

1. 脚本准备 修改 shelllogger.sh

2. 启动 nohup sh shelllogger.sh &

我习惯用 bash ./shelllogger.sh & (运行这个脚本,生成 access.log) 注意:一定不要丢了 & 符号,如果没有 &,脚本会自动停止,crtl+c 就会杀死这个进程

3. 启动后输入 tail -f access.log  (查看是否在动态打印,就是程序是否运行着,如果运行就没什么问题,要是不动态就说明配置有问题)

4. 将日志实时传送到 kafka 指定主题中:

在 kafka 目录下执行

nohup tail -f /home/storm/access.log | bin/kafka-console-producer.sh –broker-list 192.168.197.142:9092 –topic name >logs/producer.log 2>&1 &

5. 总结一下,大多数遇到的问题都是命令输错了,或者是 IP 地址输错了,或者是 java 没安好,我还没有遇到 java 的问题,然后每次到启动 producer 的时候就会出问题,有的是配置文件没 source,还有是 ip 地址输的是主机名,还有是运行脚本文件的时候少了 &,还有是把 consumer 和 producer 命令输错了,然后其他的问题遇到了再补充。

ZooKeeper 学习总结  http://www.linuxidc.com/Linux/2016-07/133179.htm

Ubuntu 14.04 安装分布式存储 Sheepdog+ZooKeeper  http://www.linuxidc.com/Linux/2014-12/110352.htm

CentOS 6 安装 sheepdog 虚拟机分布式储存  http://www.linuxidc.com/Linux/2013-08/89109.htm

ZooKeeper 集群配置 http://www.linuxidc.com/Linux/2013-06/86348.htm

使用 ZooKeeper 实现分布式共享锁 http://www.linuxidc.com/Linux/2013-06/85550.htm

分布式服务框架 ZooKeeper — 管理分布式环境中的数据 http://www.linuxidc.com/Linux/2013-06/85549.htm

ZooKeeper 集群环境搭建实践 http://www.linuxidc.com/Linux/2013-04/83562.htm

ZooKeeper 服务器集群环境配置实测 http://www.linuxidc.com/Linux/2013-04/83559.htm

ZooKeeper 集群安装 http://www.linuxidc.com/Linux/2012-10/72906.htm

Zookeeper3.4.6 的安装 http://www.linuxidc.com/Linux/2015-05/117697.htm

本文永久更新链接地址 :http://www.linuxidc.com/Linux/2016-10/136100.htm

正文完
星哥说事-微信公众号
post-qrcode
 
星锅
版权声明:本站原创文章,由 星锅 2022-01-21发表,共计4433字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中