在安装环境之前,相信已经了解了为什么要使用中间件?以及使用中间件的好处?
主要优势: 1: 系统解耦 2: 异步调用 3: 容纳流量
中间件的主要用来 : 存储消息和转发消息的, 这个消息可以定义为 通信载体 --》 通信载体可以定义为任何的请求报文和响应报文。
rabbitmq使用erlang语言开发,所以无论在哪个系统上面,想要使用rabbitmq中间件,必须先安装依赖erlang。
安装过很多次erlang和mq, 但是最后是有问题,各种各样的问题。 它的主要问题是: 版本的匹配,可以参考官网,或者百度mq和erlang的版本匹配。
这里做一个笔记: 选择erlang版本是:20.3 对应的包 otp_src_20.3.tar.gz
而rabbitmq-server的版本是: 这个安装方式选择了 rpm包安装: rabbitmq-server-3.7.6-1.el7.noarch.rpm
上面的资源文件可以参考我的上传资源进行下载。
具体安装步骤:
我参考的主要是: https://www.linuxidc.com/Linux/2018-01/150600.htm
然后是以下的操作步骤:
安装包已经下载好了
tar -xvf otp_src_20.3.tar.gz
ll
mkdir /usr/local/erlang
cd otp_src_20.3
./configure --prefix=/usr/local/erlang --without-Javac
下面是编译: make && make install 需要的依赖:
yum -y install gcc-c++
yum -y install ncurses-devel
1yum -y install openssl
yum -y install openssl-devel
yum -y install unixODBC-devel
必须的一个操作
make && make install
ERL_HOME=/usr/local/erlang
PATH=$ERL_HOME/bin:$PATH
export ERL_HOME PATH
1. 关闭与启动
① 到指定目录:cd/etc/init.d
② 停止:rabbitmq-server stop
③ 启动:rabbitmq-server start
④ 查看是否停止/启动成功:ps -ef |grep rabbitmq
rpm -ivh --nodeps rabbitmq-server-3.7.10-1.el7.noarch.rpm
[root@localhost ~]# rpm -ivh --nodeps rabbitmq-server-3.7.10-1.el7.noarch.rpm
警告:rabbitmq-server-3.7.10-1.el7.noarch.rpm: 头V4 RSA/SHA1 Signature, 密钥 ID 6026dfca: NOKEY
准备中... ################################# [100%]
正在升级/安装...
1:rabbitmq-server-3.7.10-1.el7 ################################# [100%]
[root@localhost ~]#
运行RabbitMQ需要首先开放15672和5672端口:
[root@MiWiFi-R3-srv ~]# firewall-cmd --zone=public --add-port=15672/tcp --permanent
[root@MiWiFi-R3-srv ~]# firewall-cmd --zone=public --add-port=5672/tcp --permanent
[root@MiWiFi-R3-srv ~]# firewall-cmd --reload
[root@MiWiFi-R3-srv ~]# rabbitmq-plugins enable rabbitmq_management
[root@MiWiFi-R3-srv ~]# rabbitmq-server
正常启动以后,我们可以在本地使用浏览器中访问管理页面:http://<虚拟机IP>:15672/
http://192.168.5.130:15672/
[root@MiWiFi-R3-srv ~]# rabbitmqctl add_user hongdu hongdu
[root@MiWiFi-R3-srv ~]# rabbitmqctl set_user_tags hongdu administrator
[root@MiWiFi-R3-srv ~]# rabbitmqctl set_permissions -p / hongdu '.*' '.*' '.*'
[root@MiWiFi-R3-srv ~]# rabbitmq-server -detached
/usr/lib/rabbitmq/bin/rabbitmq-env: 第 400 行:exec: erl: 未找到
rpm -e --nodeps 要卸载的软件包
https://blog.csdn.net/wudinaniya/article/details/80809353
值得参考:
linux公社
rabbitmq-server-3.7.6-1.el7.noarch.rpm
rabbitmq-server-3.7.6-1.el7.noarch.rpm
https://dl.bintray.com/rabbitmq/all/rabbitmq-server/3.7.6/rabbitmq-server-3.7.6-1.el7.noarch.rpm
---------------------------zookeeper 防火墙端口问题
[root@centos7 ~]# firewall-cmd --zone=public --add-port=80/tcp --permanent
查询端口号80 是否开启:
[root@centos7 ~]# firewall-cmd --query-port=80/tcp
重启防火墙:
[root@centos7 ~]# firewall-cmd --reload
查询有哪些端口是开启的:
[root@centos7 ~]# firewall-cmd --list-port
命令含义:
--zone #作用域
--add-port=80/tcp #添加端口,格式为:端口/通讯协议
--permanent #永久生效,没有此参数重启后失效
关闭firewall:
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动