centos7下如何安装kafka

1497人浏览 / 0人评论 / 添加收藏

前言
       由于Kafka运行需要zookeeper配合,zookeeper需要运行在JVM上,所以需要安装JDK,zookeeper。Kafka 从2.0.0版本开始就不再支持 JDK7 及以下版本,本节就以 JDK8 为例来进行演示。

       使用系统:CentOS 7 64位。

前提:安装好jdk8,本文此处不再展开,可以百度进行搜索。

一、ZooKeeper安装与配置
        1.下载:
               下载地址:https://archive.apache.org/dist/zookeeper/zookeeper-3.4.12/

        2.解压:       
[root@node01 soft]# tar zxvf zookeeper-3.4.12.tar.gz
      3.配置环境变量
       1)向/etc/profile 配置文件中添加如下内容,并执行 source /etc/profile 命令使配置生效:

export ZOOKEEPER_HOME=/root/soft/zookeeper-3.4.12/
export PATH=$PATH:$ZOOKEEPER_HOME/bin
        2)修改 ZooKeeper 的配置文件。首先进入$ZOOKEEPER_HOME/conf目录,并将zoo_sample.cfg 文件修改为 zoo.cfg:

[root@node01 conf]# cp zoo_sample.cfg zoo.cfg
        3)然后修改 zoo.cfg 配置文件,zoo.cfg 文件的内容参考如下:

# ZooKeeper服务器心跳时间,单位为ms

tickTime=2000

# 允许follower连接并同步到leader的初始化连接时间,以tickTime的倍数来表示

initLimit=10

# leader与follower心跳检测最大容忍时间,响应超过syncLimit*tickTime,leader认为

# follower“死掉”,从服务器列表中删除follower

syncLimit=5

# 数据目录

dataDir=/tmp/zookeeper/data

# 日志目录

dataLogDir=/tmp/zookeeper/log

# ZooKeeper对外服务端口

clientPort=2181

       4)默认情况下,Linux 系统中没有/tmp/zookeeper/data 和/tmp/zookeeper/log 这两个目录,所以接下来还要创建这两个目录:

       [root@node1 conf]# mkdir -p /tmp/zookeeper/data

       [root@node1 conf]# mkdir -p /tmp/zookeeper/log

       5)在${dataDir}目录(也就是/tmp/zookeeper/data)下创建一个 myid 文件,并写入一个数值,比如0。myid 文件里存放的是服务器的编号。

       [root@node01 data]# touch myid
       [root@node01 data]# echo 0 > myid

       6)启动 Zookeeper 服务,详情如下:

[root@node01 zookeeper-3.4.12]# cd conf
[root@node01 conf]# zkServer.sh start
ZooKeeper JMX enabled by default
Using config: /root/soft/zookeeper-3.4.12/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
       7)可以通过 zkServer.sh status 命令查看 Zookeeper 服务状态,示例如下:

[root@node01 conf]# zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /root/soft/zookeeper-3.4.12/bin/../conf/zoo.cfg
Mode: standalone

 

二、kafka的安装与配置

2.1 使用wget命令,远程下载kafka

wget https://mirrors.tuna.tsinghua.edu.cn/apache/kafka/2.8.1/kafka_2.12-2.8.1.tgz  --no-check-certificate

2.2、解压文件
tar -zxvf ./kafka_2.12-2.8.1.tgz -C /usr/local/

修改名称: mv ./kafka_2.12-2.8.1.tgz kafka2.12

2.3、修改配置文件
cd kafka2.12
vim config/server.properties

修改其中的:

broker.id=0
log.dir=/usr/local/kafka/kafka-logs
#配置zookeeper管理kafka的路径
zookeeper.connect=localhost:2181
#配置kafka的监听端口
listeners=PLAINTEXT://:9092
#把kafka的地址端口注册给zookeeper,如果是远程访问要改成外网IP
advertised.listeners=PLAINTEXT://203.195.205.63:9092

2.4、启动
必须先启动zookeeper!!!

kafka启动命令:

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

kafka停止命令:

bin/kafka-server-stop.sh

2.5、测试是否通过
1、测试之前先通过kafka创建一个topic。进入到kafka目录下,接着通过下面命令创建一个kafka topic。

bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic testTopic

2、查看创建了多少个topic,可以使用以下命令进行查看。

bin/kafka-topics.sh --list --zookeeper localhost:2181

3、接下来通过生产者进行发送消息。

bin/kafka-console-producer.sh --broker-list localhost:9092 --topic testTopic

4、接着创建一个消费者来进行接收消息。

bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic testTopic --from-beginning

通过以上步骤,就成功安装kafka了,这个时候就可以通过java开发工具连接进行开发了。
 

全部评论