部署环境

1. CentOS-7
2. jdk1.7.0_99
3. zookeeper-3.4.6
4. kafka_2.9.2-0.8.1.1
5. SecureCRT远程连接工具(linux辅助工具,不必须)

用户信息

用户名:shaka
本机IP:192.168.253.136

说明

如下安装步骤必须按先后顺序安装,因为:kafka依赖zookeeper,zookeeper依赖jdk。所有操作均在shaka用户下,不涉及root权限
安装所用到的安装包均为通过SecureCRT工具导入

步骤

1. 安装JDK

- 将jdk-8u65-linux-x64.tar.gz放在~/目录下
- 解压缩:tar zxvf ~/jdk-8u65-linux-x64.tar.gz
- 配置JAVA_HOME: vi ~/.bath_profile
—在文件中添加如下代码

JAVA_HOME=/home/shaka/jdk1.7.0_99
export PATH=$PATH:$JAVA_HOME/bin

- 然后令配置文件生效:source ~/.bath_profile
- 验证安装结果:输入java -version显示安装版本既为成功

2. 安装zookeeper

- 新建文件夹:mkdir ~/zookeeper
- 将zookeeper-3.4.6.tar.gz放在~/zookeeper/目录下
- 解压缩:tar zxvf ~/zookeeper/zookeeper-3.4.6.tar.gz
- 修改配置文件:

1.切入配置文件目录:cd ~/zookeeper/zookeeper-3.4.6/conf/
2. 修改文件名:cp zoo_sample.cfg zoo.cfg
3. 修改配置文件:vi zoo.cfg
dataDir=/home/shaka/dep/zookeeper-3.4.6/data
dataLogDir=/home/shaka/dep/zookeeper-3.4.6/logs
server.1=192.168.253.136:4887:5887
4.修改bin目录权限:chmod u+x -R ~/zookeeper/zookeeper-3.4.6/bin/

- 启动zookeeper:

切换到zookeeper目录下: cd ~/zookeeper/zookeeper-3.4.6/
bin/zkServer.sh start

其他命令

命令

作用

bin/zkServer.sh status

查看ZK状态

bin/zkServer.sh stop

停止ZK服务

bin/zkCli.sh -server

启动ZK的客户端

bin/zkServer.sh restart

重启ZK服务

进入ZK客户端后,客户端命令

命令

作用

ls /

使用 ls 命令来查看当前 ZooKeeper 中所包含的内容

create /zk “test”

创建一个新的 znode节点“ zk ”以及与它关联的字符串

get /zk

确认 znode 是否包含我们所创建的字符串

set /zk “zkbak”

对 zk 所关联的字符串进行设置

delete /zk

将刚才创建的 znode 删除

quit

退出客户端

help

帮助命令

3. 安装kafka

- 新建文件夹:mkdir ~/kafka
- 将kafka_2.9.2-0.8.1.1.storm.zip放在~/kafka/目录下
- 解压缩:unzip ~/kafka/kafka_2.9.2-0.8.1.1.storm.zip
- 修改配置文件:

1.切入配置文件目录:cd ~/kafka/kafka_2.9.2-0.8.1.1/config/
2. 修改配置文件:vi server.properties 如下
broker.id=0
host.name=192.168.253.136
zookeeper.connect=192.168.253.136:2181
vi log4j.properties
log4j.appender.D.File =/home/shaka/kafka/kafka_2.9.2-0.8.1.1/logs/debug.log

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

3.修改sbin目录权限:chmod u+x -R ~/kafka/kafka_2.9.2-0.8.1.1/sbin

-启动kafka

切换到kafka目录下:c ~/kafka/kafka_2.9.2-0.8.1.1/

sbin/start-kafka.sh

测试

启动topic

bin/kafka-topics.sh --create --zookeeper 192.168.253.136:2181 --replication-factor 1 --partitions 1 --topic shaka
(IP不能是localhost)

启动consumer

bin/kafka-console-consumer.sh --zookeeper 192.168.253.136:2181 --topic shaka
(IP不能localhost)

启动productor

bin/kafka-console-producer.sh --broker-list 192.168.253.136:9092 --topic shaka
在productor端输入,看consumer端的输出