设为首页 收藏本站
查看: 778|回复: 0

[经验分享] 在CentOS上安装RabbitMQ3.6.X

[复制链接]
发表于 2018-4-27 08:44:24 | 显示全部楼层 |阅读模式
  RabbitMQ3.6.1的安装方法跟以前的版本有点不一样,我在网上找了很多资料,基本都是3.1左右的版本,而且安装过程很繁琐,所以我花了一下午的时间研究如何实现最简安装。为了让大家少走弯路,就把安装过程记录了下来,也便于以后如果忘记了好查阅。3.6最大的特点就是不用再运行make命令了,而是直接解压就可以用。下面是具体步骤:
  

  1. 首先下载RabbitMQ,地址为:http://www.rabbitmq.com/install-generic-unix.html。这里我们下载的是generic unix的版本,下载的文件名为:rabbitmq-server-generic-unix-3.6.1.tar.xz。xz是一个使用LZMA压缩算法的无损数据压缩文件格式,是绝大数linux默认就带的一个压缩工具。其解压方式为xz -d {要解压的文件名},解压出来是一个tar文件,我就可以用tar文件的解压方法tar -xvf {解压出来的tar文件名}。
DSC0000.png
tar解压出来是一个叫rabbitmq_server-3.6.1的文件夹,为了便于管理我们把它移动到/usr/local/bin下。

DSC0001.png
到此为止RabbitMQ的基本安装就完成了,这个版本是不需要其他额外的编译和安装的。
2. 安装最新版的Erlang,因为RabbitMQ是基于Erlang开发的。记住:一定要用最新的版本,不然启动RabbitMQ时可能会出错,这个问题我开始弄了几个小时才发现是Erlang的版本太低的原因。

  去Erlang官网下载最新的Source File文件,地址是:http://www.erlang.org/downloads
DSC0002.png

  下载下来的文件名为:otp_src_18.2.1.tar.gz,我们用tar -zxvf解压就可以了。解压和生成otp_src_18.2.1文件夹,进入该文件夹,然后用./configure --prefix=/usr/local/bin/erlang --without-javac来配置,该命令可能会出现很多错误,基本都缺少相关的依赖,下面会列出具体的错误描述和解决方法。
  错误1:

Ignoring the --cache-file argument since it can cause the system to be erroneously configured
Disabling caching
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking for gcc... no
checking for cc... no
checking for cc... no
checking for cl... no
configure: error: no acceptable C compiler found in $PATH
See `config.log' for more details.  原因:缺少GCC编译器。解决方法:
yum install -y gcc-c++  错误2:
checking for tgetent in -ltinfo... no
checking for tgetent in -lncurses... no
checking for tgetent in -lcurses... no
checking for tgetent in -ltermcap... no
checking for tgetent in -ltermlib... no
configure: error: No curses library functions found
configure: error: /bin/sh '/software/otp_src_18.2.1/erts/configure' failed for erts  原因:未安装curses。解决方法:
yum -y install ncurses-devel  错误3:
crypto         : No usable OpenSSL found
jinterface     : Java compiler disabled by user
odbc           : ODBC library - link check failed
ssh            : No usable OpenSSL found
ssl            : No usable OpenSSL found  原因:缺少OpenSSL。解决方法:
yum install openssl-devel  错误4:
jinterface     : Java compiler disabled by user
odbc           : ODBC library - link check failed  原因:缺少ODBC  library。解决方法:
yum install unixODBC-devel  最后运行make和make insall命令,运行完之后,在/usr/local/bin下面就有erlang文件夹了。我们先把RabbitMQ和Erlang的可执行文件的路径加入path中,以便在任何地方都可以执行。这里我们直接改etc/profile文件,以便对所有用户起作用。在profile适当的位置加入:
export PATH=$PATH:/usr/local/bin/erlang/bin:/usr/local/bin/rabbitmq_server-3.6.1/sbin  配完后输入source /etc/profile让配置起作用,然后输入erl,如果出现以下画面则说明安装成功。
DSC0003.png

  最后输入rabbitmq-server,出现以下画面就说明RabbitMQ启动成功。
DSC0004.png

  如果要使用WEB管理界面,运行以下命令:
rabbitmq-plugins enable rabbitmq_management  WEB管理界面的端口默认是15672,默认用户名和密码都是guest。但要注意:用guest登陆必须使用localhost:15672登陆,而不能使用IP,因为guest是默认的超级用户,rabbitmq为了保证安全所以只能用localhost。如果要使用IP登陆,在Admin标签下重新添加个用户然后用他登陆就可以了。
  如果发现CentOS内部能够访问到WEB管理界面,但外部系统却无法访问,而外部系统和CentOS之间都能ping通,那应该是CentOS的防火墙屏蔽的15672端口的外部访问。CentOS7采用的是firewalld防火墙,我们可以通过如下命令开放15672端口:

firewall-cmd --zone=public --add-port=15672/tcp --permanent //如果出现success,则修改成功
systemctl restart firewalld.service //重启防火墙,之后应该就可以访问了  RabbitMQ通过amqp协议访问的监听端口是5672,如果你的Java等客户端程序出现访问超时,也可以用上面的方法让防火墙打开5672端口的访问。
DSC0005.png

  最后一个问题:我们有可能在启动RabbitMQ时遇到{ERROR: epmd error for host "****"}错误。这是因为你的主机名和ip不匹配,必须把当前的hostname放入/etc/hosts文件中。当RabbitMQ用上面的默认方法安装后,使用的地址是127.0.0.1,把当前的hostname追加到/etc/hosts文件中127.0.0.1后面就可以了。

  

  总结:RabbitMQ3.6的版本已经不需要以前那么复杂的安装过程,只用安装好Erlang就可以了。像Python等依赖软件只要是比较新的Linux发行版本基本都已经集成了。

  

  

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-452509-1-1.html 上篇帖子: CentOS 5.9下安装配置keepalived 下篇帖子: centos6升级 python到2.7
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表