继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

Kafka集群搭建与配置

慕虎7371278
关注TA
已关注
手记 1299
粉丝 202
获赞 875
  1. 准备工作

  2. 安装java环境

  3. 搭建zookeeper集群

  4. 搭建kafka集群

1. 准备工作

1.1 安装包

jdk-8u162-linux-x64.tar
zookeeper-3.4.12.tar
kafka_2.11-2.0.0 .tgz

1.2 准备至少3台主机(ubuntu系统)

如果没有物理机,也可以弄3台虚拟机。ubuntu系统不会安装的话可以自己百度哦,这里就不细说了。

作者用的是虚拟机,下面是3台电脑的配置

主机名IP地址硬件配置
kafka-1192.168.1.424CPU、4G内存、128G存储
kafka-2192.168.1.414CPU、4G内存、128G存储
kafka-3192.168.1.474CPU、4G内存、128G存储

2. 安装JAVA环境

准备安装包 jdk-8u162-linux-x64.tar

在每台主机下执行下面步骤:

将安装包移到/usr/local目录下

mv jdk-8u162-linux-x64.tar.gz /usr/local

解压文件

tar -zxvf jdk-8u162-linux-x64.tar.gz

重命名文件夹为java

mv jdk-8u162-linux-x64 java

用vim打开/etc/profile文件(Linux下配置系统环境变量的文件)

vim /etc/profile

按i进入编辑模式,在文件末尾添加如下JAVA环境变量

export JAVA_HOME=/usr/local/javaexport JRE_HOME=/usr/local/java/jreexport CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib:$JRE_HOME/libexport PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin

添加环境变量后,结果如下图所示,按 esc 退出编辑模式,然后输入:+wq ,按回车保存(也可以按shift + zz 进行保存)。


webp

配置环境变量

最后,需要让该环境变量生效,执行如下代码:

source /etc/profile

检验JAVA是否安装成功

echo $JAVA_HOME     # 检验变量值java -version
java
javac

如果设置正确的话,java -version 会输出 java 的版本信息,java 和 javac 会输出命令的使用指导。

3. 搭建zookeeper集群

准备安装包 zookeeper-3.4.12.tar

在每台主机上执行下面步骤:

将安装包移到/usr/local目录下

mv zookeeper-3.4.12.tar /usr/local

解压文件

tar -zxvf zookeeper-3.4.12.tar

重命名文件夹为zookeeper

mv zookeeper-3.4.12 zookeeper

配置zookeeper环境变量,首先打开profile文件

vim /etc/profile

按i进入编辑模式,在文件末尾添加zookeeper环境变量

#set zookeeper environmentexport ZK_HOME=/usr/local/zookeeperexport PATH=$ZK_HOME/bin:$PATH

保存文件后,让该环境变量生效

source /etc/profile

打开zookeeper配置文件

cp /usr/local/zookeeper/conf/zoo_sample.cfg /usr/local/zookeeper/conf/zoo.cfg
vim /usr/local/zookeeper/zoo.cfg

修改zookeeper配置文件

#修改数据文件夹路径dataDir=/usr/local/zookeeper/data#在文件末尾添加server.1=192.168.1.42:2888:3888server.2=192.168.1.41:2888:3888server.3=192.168.1.47:2888:3888#其它不变

创建数据文件夹

mkdir /usr/local/zookeeper/data

创建myid文件

mkdir /usr/local/zookeeper/data/myid

在myid文件中添加本机的 server ID,在本例中对应关系如下

主机名IP地址zookeepermyid
kafka-1192.168.1.42server.11
kafka-2192.168.1.41server.22
kafka-3192.168.1.47server.33

所以,在kafka-1中执行下面命令

echo "1" > /usr/local/zookeeper/data/myid  #kafka-1主机myid

在kafka-2中执行下面命令

echo "2" > /usr/local/zookeeper/data/myid  #kafka-2主机myid

在kafka-3中执行下面命令

echo "3" > /usr/local/zookeeper/data/myid  #kafka-3主机myid

在每台电脑上启动zookeeper

 /usr/local/zookeeper/bin/zkServer.sh start

全部启动后,查看启动结果

 /usr/local/zookeeper/bin/zkServer.sh status

webp

kafka-1启动结果

webp

kafka-2启动结果

webp

kafka-3启动结果

4. 搭建kafka集群

准备安装包 kafka_2.11-2.0.0 .tgz

在每台主机上执行下面步骤:

将安装包移到/usr/local目录下

mv kafka_2.11-2.0.0 .tgz /usr/local

解压文件

tar -zxvf kafka_2.11-2.0.0 .tgz

重命名文件夹为zookeeper

mv kafka_2.11-2.0.0 kafka

配置kafka环境变量,首先打开profile文件

vim /etc/profile

按i进入编辑模式,在文件末尾添加kafka环境变量

#set kafka environmentexport KAFKA_HOME=/usr/local/kafka
PATH=${KAFKA_HOME}/bin:$PATH

保存文件后,让该环境变量生效

source /etc/profile

在kafka-1主机中修改server.properties配置文件

打开配置文件

vim /usr/local/kafka/config/server.properties

修改配置如下(IP地址应该根据实际情况填写)

broker.id=1listeners=PLAINTEXT://192.168.1.42:9092zookeeper.connect=192.168.1.41:2181,192.168.1.42:2181,192.168.1.47:2181

在kafka-2主机中修改server.properties配置文件

打开配置文件

vim /usr/local/kafka/config/server.properties

修改配置如下(IP地址应该根据实际情况填写)

broker.id=2listeners=PLAINTEXT://192.168.1.41:9092zookeeper.connect=192.168.1.41:2181,192.168.1.42:2181,192.168.1.47:2181

在kafka-3主机中修改server.properties配置文件

打开配置文件

vim /usr/local/kafka/config/server.properties

修改配置如下(IP地址应该根据实际情况填写)

broker.id=3listeners=PLAINTEXT://192.168.1.47:9092zookeeper.connect=192.168.1.41:2181,192.168.1.42:2181,192.168.1.47:2181

启动kafka(要确保zookeeper已启动)

在每台主机上分别启动kafka

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

在其中一台虚拟机(192.168.1.47)创建topic

/usr/local/kafka/bin/kafka-topics.sh --create --zookeeper 192.168.1.47:2181 --replication-factor 3 --partitions 1 --topic test-topic

查看创建的topic信息

/usr/local/kafka/bin/kafka-topics.sh --describe --zookeeper 192.168.1.47:2181 --topic test-topic

结果如下图所示:

webp

topic信息

搭建成功啦



作者:杨赟快跑
链接:https://www.jianshu.com/p/bdd9608df6b3


打开App,阅读手记
1人推荐
发表评论
随时随地看视频慕课网APP