RabbitMQ 介绍 和 安装

RabbitMQ介绍

RabbitMQ是一个在AMQP基础上完成的,可复用的企业消息系统。他遵循Mozilla Public License开源协议。
AMQP,即Advanced Message Queuing Protocol, 一个提供统一消息服务的应用层标准高级消息队列协议,是应用层协议的一个开放标准,为面向消息的中间件设计。基于此协议的客户端与消息中间件可传递消息,并不受客户端/中间件不同产品,不同的开发语言等条件的限制。Erlang中的实现有 RabbitMQ等。
主要特性:
保证可靠性:使用一些机制来保证可靠性,如持久化、传输确认、发布确认
灵活的路由功能
可伸缩性:支持消息集群,多台RabbitMQ服务器可以组成一个集群
高可用性:RabbitMQ集群中的某个节点出现问题时队列任然可用
支持多种协议
支持多语言客户端
提供良好的管理界面
提供跟踪机制:如果消息出现异常,可以通过跟踪机制分析异常原因
提供插件机制:可通过插件进行多方面扩展

RabbitMQ安装及配置

1.安装前准备,

(1)如果之前安装过erlang,先删除

yum remove erlang*

(2)安装C++编译环境,下方选择一个

yum -y install make gcc gcc-c++
yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel unixODBC unixODBC-devel httpd python-simplejson

(3)下载erlang和rabbitMQ

#安装到cpt目录
[root@localhost ~]# cd /opt
[root@localhost opt]# 

# 下载erlang
wget http://www.erlang.org/download/otp_src_20.1.tar.gz

# 下载rabbitMQ
wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.7.0/rabbitmq-server-generic-unix-3.7.0.tar.xz

2.安装erlang

解压erlang安装包

tar -xvf otp_src_20.1.tar.gz

进入解压文件夹

cd otp_src_20.1

指定安装目录及安装配置(需要先安装并配置JDK)

# erlang指定安装在/usr/local/erlang目录 
./configure --prefix=/usr/local/erlang --enable-smp-support --enable-threads --enable-sctp --enable-kernel-poll --enable-hipe --with-ssl --without-javac

编译与安装

make && make install

配置erlang环境变量

vi /etc/profile

将 export PATH=$PATH:/usr/local/erlang/bin 添加到文件末尾:如:
在这里插入图片描述
完成之后按Esc 键 :wq保存并退出

重新加载profile文件

source /etc/profile

3.安装RabbitMQ
解压RabbitMQ安装包,于下载的安装包为xz文件,先将xz解压为tar
回opt目录

[root@localhost otp_src_20.1]# cd ../
[root@localhost opt]# xz -d rabbitmq-server-generic-unix-3.7.0.tar.xz
[root@localhost opt]# ls
apache-tomcat-7.0.79         containerd    jdk-8u191-linux-x64.tar.gz  logstash-7.7.0.tar.gz  nginx-1.18.0.tar.gz  otp_src_20.1.tar.gz
apache-tomcat-7.0.79.tar.gz  jdk1.8.0_191  logstash-7.7.0              nginx-1.18.0           otp_src_20.1         rabbitmq-server-generic-unix-3.7.0.tar
[root@localhost opt]# tar -xvf rabbitmq-server-generic-unix-3.7.0.tar

xz -d rabbitmq-server-generic-unix-3.7.0.tar.xz

在这里插入图片描述
再解压缩tar文件

tar -xvf rabbitmq-server-generic-unix-3.7.0.tar

启动RabbitMQ,进入到解压的RabbitMQ的sbin目录

cd rabbitmq_server-3.7.0/sbin

启动

./rabbitmq-server -detached

查看进程

ps aux|grep rabbit
#ps a 显示现行终端机下的所有程序,包括其他用户的程序。
#ps u   以用户为主的格式来显示程序状况。
#ps x   显示所有程序,不以终端机来区分。

在这里插入图片描述
4.启动管理界面
启动RabbitMQ的管理系统插件(需进入sbin目录)

./rabbitmq-plugins enable rabbitmq_management
[root@localhost sbin]# ./rabbitmq-plugins enable rabbitmq_management
The following plugins have been configured:
  rabbitmq_management
  rabbitmq_management_agent
  rabbitmq_web_dispatch
Applying plugin configuration to rabbit@localhost...
The following plugins have been enabled:
  rabbitmq_management
  rabbitmq_management_agent
  rabbitmq_web_dispatch

started 3 plugins.
[root@localhost sbin]# 

进入网页访问 http://192.168.230.135:15672
在这里插入图片描述
添加用户(命令模式)

# 插件目录    root 名称 root 密码
[root@localhost sbin]# ./rabbitmqctl add_user root root 

设置用户权限

[root@localhost sbin]# ./rabbitmqctl set_user_tags root administrator
Setting tags for user "root" to [administrator] ...
[root@localhost sbin]# 

登录成功
在这里插入图片描述

5.放行端口

查看并放行端口

netstat -tlnp
firewall-cmd --add-port=15672/tcp --permanent
firewall-cmd --add-port=5672/tcp --permanent

在这里插入图片描述
也可以直接关闭防火墙:
CentOS7:


#关闭防火墙 
systemctl stop firewalld
#开机禁用 
systemctl disable firewalld
#查看状态
systemctl status firewalld

在这里插入图片描述
CentOS6:

#1.永久性生效,重启后不会复原
#开启: 
chkconfig iptables on
#关闭: 
chkconfig iptables off

#2.即时生效,重启后复原
#开启: 
service iptables start
#关闭: 
service iptables stop

#3.查询TCP连接情况:
netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'

#4.查询端口占用情况:
netstat   -anp   |   grep  portno(例如:netstat –apn | grep 80
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

jq1223

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值