赞
踩
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
部署版本:
jdk-8u152-linux-x64.tar.gz
kafka_2.12-3.6.0.tgz
apache-zookeeper-3.8.3-bin.tar.gz
kafka-eagle-bin-3.0.1.tar.gz
kafka部署分为单机版本和集群版本,准备3台服务器
服务 | IP |
Kafka1 | 192.168.200.22 |
Kafka2 | 192.168.200.23 |
Kafka3 | 192.168.200.24 |
IP改成自己的!!!!
拷贝JDK、Kafka到服务器中并解压,配置环境变量
- # 编辑 profile
- vim /etc/profile
-
- # profile文件添加内容
- JAVA_HOME=/opt/jdk1.8.0_152
- KAFKA_HOME=/opt/kafka_2.12-3.6.0
- PATH=/opt/jdk1.8.0_152/bin:/opt/kafka/bin:$PATH
- export JAVA_HOME KAFKA_HOME PATH
-
- # 激活 profile
- source /etc/profile
-
- # 设置主机名
-
- hostnamectl set-hostname kafka1
- hostnamectl set-hostname kafka2
- hostnamectl set-hostname kafka3
-
- # 查询主机名
- hostname
拷贝zookeeper到服务器中并解压,修改zoo.cfg
配置文件
dataDir=/opt/apache-zookeeper-3.8.3-bin/data
server.1=192.168.200.22:2888:3888
server.2=192.168.200.23:2888:3888
server.3=192.168.200.24:2888:3888server.A=B:C:D
A是一个数字,表示这个是第几号服务器。集群模式下需要在zoo.cfg中dataDir指定的目录下创建一个文件myid,这个文件里面有一个数据就是A的值,Zookeeper启动时读取此文件,拿到里面的数据与zoo.cfg里面的配置信息比较从而判断到底是哪个server。
B是这个服务器的地址。
C是这个服务器Follower与集群中的Leader服务器交换信息的端口。
D是万一集群中的Leader服务器挂了,需要一个端口来重新进行选举,选出一个新的Leader,而这个端口就是用来执行选举时服务器相互通信的端口
在所有的zookeeper目录下创建data目录
mkdir data
zookeeper目录下创建data目录,在data目录创建myid文件并写内容
server.1服务器对应data目录下myid内容为1
server.2服务器对应data目录下myid内容为2
server.3服务器对应data目录下myid内容为3
启动zookeeper,3台zookeeper都启动后,查询状态,如果能看到 mode 表示集群配置完成
[root@w92-196-voip-test-1 bin]# ./zkServer.sh start
ZooKeeper JMX enabled by default
Using config: /opt/apache-zookeeper-3.8.3-bin/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
[root@w92-196-voip-test-1 apache-zookeeper-3.8.3-bin]# ./bin/zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /opt/apache-zookeeper-3.8.3-bin/bin/../conf/zoo.cfg
Client port found: 2181. Client address: localhost. Client SSL: false.
Mode: follower
解压kafka,修改配置文件
vim server.properties
broker.id=1
listeners=PLAINTEXT://192.168.200.22:9092
zookeeper.connect=192.168.200.22:2181,192.168.200.23:2181,192.168.200.24:2181broker.id=2
listeners=PLAINTEXT://1192.168.200.23:9092
zookeeper.connect=192.168.200.22:2181,192.168.200.23:2181,192.168.200.24:2181broker.id=3
listeners=PLAINTEXT://192.168.200.24:9092
zookeeper.connect=192.168.200.22:2181,192.168.200.23:2181,1192.168.200.24:2181
官网地址:EFAK
拷贝JDK、Kafka到服务器中并解压,配置环境变量
# 编辑 profile
vim /etc/profile# profile文件添加内容
JAVA_HOME=/opt/jdk1.8.0_152
KE_HOME=/opt/efak
PATH=$JAVA_HOME/bin:$KE_HOME/bin:$PATH
export JAVA_HOME KE_HOME PATH# 激活 profile
source /etc/profile
修改配置文件
efak.zk.cluster.alias=cluster1
cluster1.zk.list=192.168.200.22:2181,192.168.200.23:2181,192.168.200.24:2181efak.driver=com.mysql.cj.jdbc.Driver
efak.url=jdbc:mysql://192.168.200.20:3306/ke?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull
efak.username=root
efak.password=root
创建mysql数据库
docker run -p 3306:3306 --name mysql \
-v /mydata/mysql/log:/var/log/mysql \
-v /mydata/mysql/data:/var/lib/mysql \
-v /mydata/mysql/conf:/etc/mysql/conf.d \
-v /etc/localtime:/etc/localtime:ro \
-e MYSQL_ROOT_PASSWORD=root \
--restart=always \
-d mysql:5.7.35
启动测试
./ke.sh start
Welcome to
______ ______ ___ __ __
/ ____/ / ____/ / | / //_/
/ __/ / /_ / /| | / ,<
/ /___ / __/ / ___ | / /| |
/_____/ /_/ /_/ |_|/_/ |_|
( Eagle For Apache Kafka® )Version v3.0.1 -- Copyright 2016-2022
*******************************************************************
* EFAK Service has started success.
* Welcome, Now you can visit 'http://192.168.200.20:8048'
* Account:admin ,Password:123456
*******************************************************************
* <Usage> ke.sh [start|status|stop|restart|stats] </Usage>
* <Usage> https://www.kafka-eagle.org/ </Usage>
*******************************************************************
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。