Centos7 Kafka初次安装部署

    有时间了第一次研究kafka的部署,在这方面完全是小白,记录下来,也算是记录自己的成长和进步。。。

     环境:本地电脑安装的虚拟机,centos7系统。

     步骤:

     一:如果之前有linux系统的童鞋,要先查看一下自己的系统是否配置了jdk环境,检测命令:java -version 

  Centos7 Kafka初次安装部署

此种情况是我之前安装好了的,如果没有安装的童鞋,安装起来也很简单。在这里我是用的yum安装

1、查找java相关得列表:yum -y list java*(如果没有yum命令的,网上百度,这个安装很简单)

Centos7 Kafka初次安装部署

2、到这一步之后,就继续安装jdk:yum -y install java-1.8.0-openjdk*。这个过程可能要持续几分钟的时间,跟自己的网速有一定的关系。

3、等到完成之后,检查jdk是否安装成功:java -version。(默认安装路径为:/usr/lib/jvm)

4、查看java安装路径:which java

Centos7 Kafka初次安装部署

5、配置环境

   vi模式(有的是vim)进入到 /etc/profile/ 中 

Centos7 Kafka初次安装部署

按 i 进行编辑,在最后加入以下几行(jdk版本要和你之前yum下来的版本要一致)

export JAVA_HOME=/usr/lib/java/java-1.8.0-openjdk-1.8.0.161-0.b14.el7_4.x86_64 export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar.:$JAVA_HOME/lib/dt.jar.:$JAVA_HOME/lib/tools.jar export PATH=$PATH:$JAVA_HOME/bin

写好之后按ESC,:wq保存退出!

使环境变量生效命令:source /etc/profile

至此jdk安装成功。

二、下面要进行zookeeper环境搭建

1、下载Zookeeper并解压到制定的目录(或者提前进入到 cd /opt/目录下,创建文件夹zookeeper  mkdir zookeeper)

   $ wget http://www-eu.apache.org/dist/zookeeper/zookeeper-3.4.13/zookeeper-3.4.13.tar.gz

   $ tar -zxvf  zookeeper-3.4.13.tar.gz  -c  /opt/zookeeper

2、进入到zookeeper目录下的conf

   $ cd /opt/zookeeper/conf

3、拷贝zoo_sample.cfg文件重命名为zoo.cfg,然后修改dataDir属性

    # 数据的存放目录 dataDir=/home/hadoop/zkdata(根据个人需求自定义)

     # 端口,默认就是2181 clientPort=2181

4、配置环境:vi  /etc/profile/

在最后加上

export ZOOKEEPER_HOME=/opt/zookeeper (此处根据自己存放的目录,和配置jdk是类似的方法)

export PATH=$PATH:$ZOOKEEPER_HOME/bin

写好之后按ESC,:wq保存退出!

使环境变量生效命令:source /etc/profile

5、至此,zookeeper安装完成,检查是否正确安装

在zookeeper的bin目录下执行命令:

$ zkServer.sh start (启动)

Centos7 Kafka初次安装部署

安装完Zookeeper后,输入命令启动后,命令jps,看有没有QuorumPeerMain进程,有就是启动成功。

没有的话,进入Zookeeper的log目录下查看日志,有可能是端口被占用或者是其他原因,这一块就需要各位童鞋后续发现了。

$ zkServer.sh stop(停止)

三、kafka单节点环境部署

1、下载kafka并解压到制定的目录

   $ wget http://mirrors.tuna.tsinghua.edu.cn/apache/kafka/2.1.1/kafka_2.12-2.1.1.tgz 

   $ tar -zxvf  kafka_2.12-2.1.1.tgz   -c  /opt/kafka

2、进入kafka的config目录下,有一个server.properties,添加如下配置

# broker的全局唯一编号,不能重复 broker.id=0

# 监听 listeners=PLAINTEXT://:9092

# 日志目录 log.dirs=/home/kafka/kafka-logs(用户自定义)

# 配置zookeeper的连接(如果不是本机,需要该为ip或主机名) zookeeper.connect=localhost:2181(默认端口2181)

3、当时我看其他文档的时候没有这一步,导致一直启动不了,就是环境配置!和之前配置jdk和zookeeper一样,在后面加上

export KAFKA_HOME=/usr/local/kafka (路径要根据自己的路径来)

export PATH=$PATH:$KAFKA_HOME/bin

4、在kafka的bin目录下启动:

kafka-server-start.sh $KAFKA_HOME/config/server.properties

启动正常话会出现大概一两页的代码。

之后用jps命令检查进程,会看到有kafka 和 zookeeper的线程

5、最好再自己创建topic  确保已经搭建好

$ kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test

参数说明:

–zookeeper:指定kafka连接zk的连接url,该值和server.properties文件中的配置项{zookeeper.connect}一样

–replication-factor:指定副本数量

–partitions:指定分区数量

–topic:主题名称

查看所有topic

$ kafka-topics.sh --list --zookeeper localhost:2181 test

启动生产者

$ kafka-console-producer.sh --broker-list localhost:9092 --topic test

启动消费者。(在kafka的bin目录下启动)

$ kafka-console-consumer.sh --zookeeper localhost:2181 --topic test --from-beginning

 

至此kafka单节点环境已搭建完毕。至于后续的研究,后续再继续写。

不管怎么说,这是我的第一篇博文,也什么不对的地方希望大家指正!