上一章主要说明了安装kafka前期的一些步骤,包括安装jdk1.8、zookeeper等,接下来主要就是通过源码编译安装emqx了,由于emqx是由erlang语言编写的,要想通过源码来编译安装emqx,那指定少不了erlang了。
1、安装erlang(这里推荐Erlang/OTP 22及以上)
(1)下载otp_src_23.3.tar.gz压缩包,通过wget下载很慢,可以去网上找一下百度网盘资源,也可以私信我发给你
wget http://erlang.org/download/otp_src_23.3.tar.gz
(2)解压到当前文件夹
tar -zxvf otp_src_22.3.tar.gz
(3)安装erlang需要很多依赖、插件的支持,下面的依赖依次安装(不出意外安装的都很快,如下图所示即安装成功)
yum install -y perl
yum install -y ncurses-devel
yum install -y openssl openssl-devel
yum install -y unixODBC-devel
yum install -y gcc-c++
(4)配置安装(下图的警告没有影响,照样可以使用)
mkdir /usr/local/software/erlang //创建erlang的安装路径
./configure --prefix=/usr/local/software/erlang //后面跟的是你erlang所安装的地址
(5)编译安装(注意执行编译命令一直要在erlang的目录下,不然会报错找不到makefile文件,编译需要一段时间,耐心等待,有一些警告是可以忽略的)
make && make install
(6)开始配置环境,打开/etc/profile文件
export PATH=$JAVA_HOME/bin/:$PATH:/usr/local/software/erlang/bin:$PATH //PATH后面的地址根据安装实际地址来
(7)验证erlang是否安装成功(出现如下图所示即安装成功)
source /etc/profile //更新配置文件
erl //进入erlang
2、安装高版本的git(由于后面的rebar编译和emqx编译都需要高版本的git,通过yum安装的版本较低,普遍为1.8,满足不了后面emqx编译的要求,所以先提前安装了)
(1)下载高版本的git压缩包(下载不了就去官网下载好上传到服务器,Releases · git/git · GitHub)
wget https://www.kernel.org/pub/software/scm/git/git-2.9.0.tar.gz
(2)解压缩
tar -xvzf git-2.9.0.tar.gz
(3)下载编译工具
yum -y groupinstall "Development Tools"
(4)下载git依赖包
yum -y install zlib-devel perl-ExtUtils-MakeMaker asciidoc xmlto openssl-devel
(5) 配置安装
./configure --prefix=/usr/local/software/git-2.9.0
(6)编译安装(大概一分钟时间)
make && make install
(7)配置环境变量。打开/etc/profile文件
export PATH="/usr/local/software/git-2.9.0/bin:$PATH"
(8)检查是否安装成功
source /etc/profile //更新配置文件
git --version //查看git版本
3、安装rebar3(安装erlang之后,自然少不了erlang的构建工具rebar3了)
(1)下载rebar3源码
git clone https://github.com/erlang/rebar3.git
(2)解压zip压缩包
unzip rebar3-main.zip
(3)配置安装(这个过程很慢,容易卡死,多试几次)如下图所示配置成功
cd rebar3-main
./bootstrap
(4)配置安装之后会生成一个rebar3文件,进行编译安装
./rebar3 local install
(5)配置环境变量,打开/etc/profile文件,默认情况下都是此环境变量
export PATH=/root/.cache/rebar3/bin:$PATH
(6)更新配置文件,查看rebar3是否安装成功(如下图所示安装成功)
source /etc/profile //更新配置文件
rebar3 --version //查看rebar3的版本
4、安装emqx,集成kafka插件
(1)我在github上找到已经集成kafka插件的emqx源码,直接拉下来编译安装即可
git clone https://github.com/ULTRAKID/emqx.git
(2)进入emqx,执行make,编译安装(过程及其缓慢,我编译了一天...所以有条件的就翻外网,因为都是从github上下载依赖)
cd emqx/
make
(3)编译完成的目录,多了一个_build目录
(4)修改kafka配置,由于已经集成了kafka插件,所以有点配置还是需要自己手动配置,比如topic和ip等
cd emqx/_build/emqx/rel/emqx/etc/plugins/
vi emqx_plugin_kafka.conf
(5)启动emqx(进入bin目录下)
cd emqx/_build/emqx/rel/emqx/bin/
./emqx start
(6)emqx是有图形化界面的,地址为系统本机ip地址,端口为18083,如果没有关闭防火墙的话就需要开放一下端口了,界面的登陆账号密码为 admin public。
(7)开启kafka插件,前提是得先启动kafka,emqx的消息转发到kafka的topic默认是emqx-topic,可以在上面的配置文件中修改,一旦有消息发送,kafka的topic自动创建。
5、测试emqx转发数据到kafka的流程
(1)进入emqx的图形用户界面,在设置中可以调成中文,进入工具->websocket一栏
(2)点击连接到emqx,在下方可以模拟发送数据到emqx,topic随便定义,这个是emqx的topic,跟kafka的topic没有关系。
(3)点击发送之后,在kafka监听一下,看是否能获取到数据
(4)能获取到数据,代表插件已集成并成功启动,如果没收到数据的话看看ip地址是否对应,不推荐使用localhost,直接用本机系统ip会省去一些麻烦。
到此,emqx集成kafka插件已完成,后面搭建kafka集群的时候也可同样操作,之后就是安装一下存储中间件了,influxdb、mysql等,kafka监听到的数据也是需要存储的嘛,那就等下一章再写咯?!
本文转载自: https://blog.csdn.net/qq_46092784/article/details/127878353
版权归原作者 程序小猿洁 所有, 如有侵权,请联系我们删除。
版权归原作者 程序小猿洁 所有, 如有侵权,请联系我们删除。