CentOs7安装Kafka2.3.0+zookeeper_3.
2019-12-04 本文已影响0人
许荣磊
1、JDK的依赖
安装jdk8或以上,此处略写
2、安装zookeeper_3.4.14(kafka 内集成有zookeeper,如要做集群,还是独自安装zookeeper比较好)
- 下载
#cd到指定的目录 cd /opt wget http://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.4.14/zookeeper-3.4.14.tar.gz #解压到指定的位置 tar -zxvf zookeeper-3.4.14.tar.gz #进入zookeeper的配置路径 cd /opt/zookeeper-3.4.14/conf/ #复制一个配置文件 cp zoo_sample.cfg zoo.cfg #创建两个文件夹 mkdir /opt/zookeeper/zookeeper-3.4.14/logs mkdir /opt/zookeeper/zookeeper-3.4.14/data #修改配置文件 cd /opt/zookeeper-3.4.14/conf vi zoo.cfg
- 详细配置如下:
#ZK中的一个时间单元。ZK中所有时间都是以这个时间单元为基础,进行整数倍配置的。例如,session的最小超时时间是2*tickTime tickTime=2000 #Follower在启动过程中,会从Leader同步所有最新数据,然后确定自己能够对外服务的起始状态。Leader允许F在 initLimit 时间内完成这个工作。通常情况下,我们不用太在意这个参数的设置。如果ZK集群的数据量确实很大了,F在启动的时候,从Leader上同步数据的时间也会相应变长,因此在这种情况下,有必要适当调大这个参数了 initLimit=10 #在运行过程中,Leader负责与ZK集群中所有机器进行通信,例如通过一些心跳检测机制,来检测机器的存活状态。如果L发出心跳包在syncLimit之后,还没有从F那里收到响应,那么就认为这个F已经不在线了。注意:不要把这个参数设置得过大,否则可能会掩盖一些问题 syncLimit=5 #存储快照文件snapshot的目录。默认情况下,事务日志也会存储在这里。建议同时配置参数dataLogDir, 事务日志的写性能直接影响zk性能 dataDir=/opt/zookeeper/zookeeper-3.4.14/data #事务日志输出目录。尽量给事务日志的输出配置单独的磁盘或是挂载点,这将极大的提升ZK性能 dataLogDir=/opt/zookeeper/zookeeper-3.4.14/logs #客户端连接server的端口,即对外服务端口,一般设置为2181吧 clientPort=2181 #第一个端口用于F和L之间的数据同步和其它通信,第二个端口用于Leader选举过程中投票通信,server.x这里的x是一个数字,与myid文件中的id是一致的 #server.1=127.0.0.1:2888:3888
- 在data目录下创建myid文件,并写入对应ip的机器编号
cd /opt/zookeeper-3.4.14/data/ vim myid #在里面填入1
- 保存zookeeper 的环境变量
cd ~ vim .bash_profile
- 看到加入配置是:
#导入zookeeper环境变量 export ZOOKEEPER_HOME=/opt/zookeeper-3.4.14/ export PATH=ZOOKEEPER_HOME/bin:$PATH
- 保证配置生效
source .bash_profile
- zookeeper/bin目录添加到PATH环境变量
cat > /etc/profile.d/zkServer.sh << EOF export PATH=/opt/zookeeper-3.4.14/bin:$PATH EOF source /etc/profile.d/zkServer.sh
- 启动|停止|状态Zookeeper
zkServer.sh start|stop|status
3、安装kafka(V2.3.0)
- 下载
# cd到指定的目录 cd /opt #下载 wget 或者 curl -O wget http://mirrors.tuna.tsinghua.edu.cn/apache/kafka/2.3.0/kafka_2.12-2.3.0.tgz tar -xzf kafka_2.12-2.3.0.tgz ln -s kafka_2.12-2.3.0 kafka rm -rf kafka_2.12-2.3.0.tgz #创建kafka日志配置目录 cd /opt/kafka_2.12-2.3.0/logs/ mkdir kafka #修改配置文件 cd /opt/kafka_2.12-2.3.0/config/ vi service.properties
- 主要修改如下【其余默认】:
log.dirs=/opt/kafka_2.12-2.3.0/logs/kafka listeners=PLAINTEXT://外网ip:9092
- kafka/bin目录添加到PATH环境变量
cat > /etc/profile.d/kafka.sh << EOF export PATH=/opt/kafka/bin:$PATH EOF source /etc/profile.d/kafka.sh
- 启动kafka【后台启动,守护线程】
#启动 ./bin/kafka-server-start.sh -daemon config/server.properties #查看线程 netstat -tunlp|egrep "(2181|9092)"