前提:三台服务器。由于kafka是依赖与zookeeper的,所以必须要下载zookeeper,然后下载kafka
zookeeper:
下载zookeeper:在linux中/usr/local/下面运行下面命令进行下载
wget https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.4.14/zookeeper-3.4.14.tar.gz
解压命令:tar -zxvf zookeeper-3.4.14.tar.gz
加压完毕后会看见一个zookeeper-3.4.14的文件夹。
执行命令:cd /usr/local/zookeeper-3.4.14/conf
执行命令:mv zoo_sample.cfg zoo.cfg (将文件名修改一个,必须要修改)
执行命令:vi zoo.cfg
找到dataDir修改值为/usr/local/zookeeper-3.4.14/data
在zookeeper-3.4.14下面创建文件夹data (命令是mkdir data)
在最后面添加(注意里面的 ip是你需要安装zookeeper的主机 ip)
server.0=ip:2888:3888
server.1=ip:2888:3888
server.2=ip:2888:3888
保存退出(命令:按下Esc键,输入 :wq)
退出后进入data目录新建文件myid(命令:touch myid)进入myid文件中第一行写0,然后保存退出。
然后将这个zookeeper的整个文件夹复制到另外两台服务器中(命令:scp zookeeper-3.4.14 ip:/usr/local/)这里的 ip 是你要复制到哪台机器的 ip
同理进入到另外两天机器中将里面的myid打开修改一下值分别是1和2(比如:机器1的myid里面的值是0,机器2里面的myid里面的是1,机器3里面的myid里面是2)
最后关闭防火墙启动zookeeper
关闭防火墙命令:systemctl stop firewalld.service
启动zookeeper命令:进入到bin目录下执行 ./zkServer.sh start(每一台机器都要执行关闭防火墙和启动 zookeeper 的命令)
kafka:
下载kafka,进入到 local目录(cd /usr/local)执行下载命令: wget http://mirror.bit.edu.cn/apache/kafka/2.2.0/kafka_2.11-2.2.0.tgz
下载完毕进行解压 命令: tar -zxvf kafka_2.11-2.2.0.tgz
解压完毕会到kafka_2.11-2.2.0的文件夹,打开进入到 config目录执行命令:vi server.properties
修改(下面修改的内容在三台服务器中都要做,变动 broker.id的值不同,分别是 0, 1, 2,ip不同)
broker.id=0
listeners=PLAINTEXT://ip:9092 (这里的 ip 是当前的主机 ip 端口就是9092默认的)
zookeeper.connect=ip:2181,ip:2181,ip:2181 (这里的 ip 是你前面安装的三个zookeeper的机器 ip,zookeeper的端口默认是2181)
然后启动kafka,进入到bin目录下执行命令 然后敲两下回车: nohup ./kafka-server-start.sh ../config/server.properties 2>&1 &
查看是否启动成功执行命令: ps -ef|grep kafka
出现下面图片展示的内容说明启动成功
kafka和zookeeper一样也是需要scp到其他另外两台机器中去,然后修改一下broker.id和ip以及zookeeper的链接就好了
到此就安装完毕,不要怕麻烦,成长需要一步一步积累,按上面的步骤执行一定可以。
明天写一下springcloud stream方式集成kafka的集群