建议使用以下浏览器,以获得最佳体验。 IE 9.0+以上版本 Chrome 31+ 谷歌浏览器 Firefox 30+ 火狐浏览器
请选择 进入手机版 | 继续访问电脑版
设置昵称

在此一键设置昵称,即可参与社区互动!

确定
我再想想
选择版块

行解大鹏

发帖: 113粉丝: 1

级别 : 注册会员

Rank: 2

发消息 + 关注

发表于2020-3-24 11:37:38 537 1
直达本楼层的链接
楼主
显示全部楼层
Kunpeng平台 emqx 4.0.5 版本移植安装指南

1 EMQX简介

    EMQX 基于 Erlang/OTP 平台开发的 MQTT 消息服务器,是开源社区中最流行的 MQTT 消息服务器

 

2 环境信息

2.1 环境信息


项目

版本

下载地址

CentOS

7.6

https://www.centos.org/download/

Kernel

4.14.0

包含在操作系统镜像中

CPU

鲲鹏920


服务器配置

16U16GB40GB


3 配置编译环境

3.1 配置yum源

配置yum源参考《KunPeng平台软件移植 Yum源配置参考》

说明:文档中的Yum源配置包含本地yum源、网络yum、华为yum源三种,本次使用本地yum源,其它方式保留在文档中,按需参考。

----结束

3.2 安装erlang/opt环境

步骤1   安装依赖包。

yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel perl-devel image.png

步骤2   下载erlang源码包。

cd /opt

wget http://erlang.org/download/otp_src_22.0.tar.gz

步骤3   解压erlang源码包

tar -zxvf otp_src_22.0.tar.gz

步骤4   设置安装目录

mkdir -p /usr/local/erl

cd otp_src_22.0

./configure --prefix=/usr/local/erl

步骤5   编译安装

make && make install

image.png

说明:编译过程的警告信息可以忽略,结束后使用echo $?查询编译结果,预期为0。

echo $?

image.png

步骤6   配置软链接和PATH

ln -s /usr/local/erl/bin/erl /usr/local/bin/erl

export PATH=$PATH: /usr/local/erl/bin

image.png

步骤7   测试验证

在命令行输入erl命令,显示如下,说明安装成功。

image.png 

----结

 

4 安装

说明:本文将介绍两种安装方式,请视具体情况选择其中一种安装方式。

表 4-1 安装方式说明

安装方式

安装说明

源码编译安装

源码安装,与环境内核无冲突,可定制,但是复杂度高。

rpm方式安装

rpm包方式,方便简单(当部署环境与本文档环境一致时,推荐使用本方式)。

4.1 源码编译安装

4.1.1 获取源码

步骤 1   下载emqx源码。

进入“/opt”目录下:

git clone https://github.com/emqtt/emq-relx

说明:如果是新机器需在”/etc/resolv.conf”中添加nameserver,防止找不到域名。

image.png

4.1.2 emqx编译

步骤 1    make编译。

cd emqx-rel

make

image.png

image.png

说明:

1)    编译过程会从github下载大量相关依赖包,中途可能会编译失败。失败后,只需重新make即可(可能需要make多次)。

2)    编译过程的警告信息可以忽略,结束后使用echo $?查询编译结果,预期为0。

----结

4.2 RPM方式安装

说明:附件中的rpm都是通过开源代码编译打包而成,并验证通过,打包过程参考”6 RPM打包“。

步骤 1   复制RPM包至服务器“ /opt”目录。

cp emqx-4.0.5-1.el7.aarch64.rpm /opt

步骤 2   安装RPM包。

cd /opt

rpm –ivh emqx-4.0.5-1.el7.aarch64.rpm

image.png

说明:使用yum localinstall emqx-4.0.5-1.el7.aarch64.rpm安装 RPM包,可以自动安装依赖;如使用rpm安装,则需要手动安装依赖。

----结束

5 运行和验证

5.1 验证准备

步骤 1  关闭防火墙。

1)     查看防火墙状态:systemctl status firewalld;

2)     若防火墙开启,则关闭防火墙:systemctl stop firewalld;

3)     再次查看防火墙状态,确保关闭。

说明:防火墙开启状态下,无法进行web访问。

image.png 

----结束

5.2 运行测试

步骤 1   启动emqx console。

cd /usr/local/emqx

cd _build/emqx/rel/emqx && ./bin/emqx console

出现如下画面表示console启动成功。

image.png 

 

步骤 2   web登录。

在浏览器输入IP:18083启动web,登录显示如下表示成功(默认用户名:admin,密码:public)。


image.pngimage.png 

----


6 RPM打包(参考)

说明:本段提供了RPM包制作的详细过程,当部署环境与本文档环境不兼容时,可参考此打包过程,自制RPM包,然后再安装到部署环境。

6.1 准备RPM 打包环境

步骤 1   安装rpmdevtools。

yum install rpmdevtools

image.png  

步骤 2   生成打包目录树。

cd ~/

rpmdev-setuptree

步骤 3   进入目录~/rpmbuild,应有如下文件夹:

cd ~/rpmbuild

                    image.png

说明:由于通过github下载安装,所以SOURCES目录并无压缩包,故直接下载至BUILD目录下,然后进行其他操作。

----结束         

6.2 编辑SPEC文件

步骤 1   生成SPEC文件模板。

1.切换目录至~/rpmbuild/SPECS

        cd ~/rpmbuild/SPECS

2生成模板文件bwa.spec

        rpmdev-newspec bwa

步骤 2   修改SPEC文件。

修改后emqx.spec文件内容(亦可见附件emqx.spec.zip)。

%define _emqxdir $RPM_BUILD_DIR/%{name}-%{version}

Name:           emqx

Version:       4.0.5

Release:        1%{?dist}

Summary:        Scalable Enterprise MQTT Broker

License:       GPL3.0

URL:           https://emqx.io

#Source0:       https://github.com/emqx/emqx-rel/archive/v4.0.5.zip

 

Prefix:        /usr/local

BuildRequires:       make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel perl-devel

 

%description

EMQ X Broker is a massively scalable, highly extensible distributed MQTT message broker written in Erlang/OTP.

 

%prep

if [ ! -d "/root/rpmbuild/BUILD/emqx-4.0.5/" ];then

    git clone https://github.com/emqtt/emq-relx emqx-4.0.5

fi

 

%build

cd $RPM_BUILD_DIR/emqx-4.0.5

make %{?_smp_mflags}

 

%install

rm -rf $RPM_BUILD_ROOT

mkdir -p $RPM_BUILD_ROOT/usr/local/emqx

cp -r %{_emqxdir}/* $RPM_BUILD_ROOT/usr/local/emqx/

 

%files

%license %{_prefix}/%{name}/LICENSE

 

%dir %{_prefix}/%{name}

%{_prefix}/%{name}/*

 

%changelog

* Wed Mar 18 2020 guweibo <youremail@xxx.xxx> - 4.0.5-1

- Update to 4.0.5

----结束

6.3 RPM打包

步骤 1   rpmlint检查SPEC文件或RPM包。

1.安装rpmlint

    yum install rpmlint

    image.png 

2.错误检查。

    说明:如果返回错误/警告,使用 “-i” 选项查看更详细的信息。但由于rpmlint检测较严格,一些错误可忽略,可根据实际情况结合检测结果进行修   改。

    rpmlint –i emqx.spec

      image.png 

步骤 2   构建RPM。

rpmbuild -bb emqx.spec

image.png 

image.png

步骤 3   查看生成的RPM包。

ls ~/rpmbuild/RPMS/aarch64

image.png

步骤 4   RPM包验证。

RPM包的验证,可参考”5 运行和验证“。

----结束


7 FAQ

7.1 RPM打包流程、示例及问题集

参考:https://bbs.huaweicloud.com/forum/thread-38327-1-1.html

7.2 基于鲲鹏云服务的EMQX编译安装(centos)

参考:https://bbs.huaweicloud.com/forum/thread-25031-1-1.html

7. 3 KunPeng平台软件移植 Yum源配置参考

参考:https://bbs.huaweicloud.com/forum/thread-47344-1-1.html

 


emqx.spec.zip 743 Bytes,下载次数:0

emqx-4.0.5-1.el7.aarch64.rpm.part4.rar 1.61 MB,下载次数:0

emqx-4.0.5-1.el7.aarch64.rpm.part1.rar 18 MB,下载次数:0

emqx-4.0.5-1.el7.aarch64.rpm.part3.rar 18 MB,下载次数:0

emqx-4.0.5-1.el7.aarch64.rpm.part2.rar 18 MB,下载次数:0

举报
分享

分享文章到朋友圈

分享文章到微博

阿奇@汪汪...

发帖: 41粉丝: 18

级别 : 版主

Rank: 7Rank: 7Rank: 7

发消息 + 关注

发表于2020-3-24 12:00:13
直达本楼层的链接
沙发
显示全部楼层

很详细,很好

点赞 评论 引用 举报

游客

富文本
Markdown
您需要登录后才可以回帖 登录 | 立即注册