一、因为工作需要,用于业务解耦,要用到消息中间件,并且选择了rabbitmq,使用它就需要在linux服务器上面搭建rabbitmq服务器,经过网上搜索与实践,先是在自己的私人服务器上面搭建成功并且成功访问,后续在公司测试环境与正式环境上面搭建成功,在多次实践的过程中总结出搭建过程,并且踩了一些坑,因为过程是试验他人的搭建过程,就不归为原创了。
二、下面就是在linux服务器上面搭建rabbitmq服务器的过程:
1.依赖环境的安装-如果需要用编译安装erlang语言环境,需要安装C++编译。
yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel unixODBC unixODBC-devel httpd python-simplejson
2.erlang语言环境的安装(rabbitMq是用erlang分布式语言开发的)
安装文件获取
wget http://erlang.org/download/otp_src_19.2.tar.gz
解压erlang安装包
tar -xzvf otp_src_19.2.tar.gz
进入erlang目录
cd otp_src_19.2
编译安装erlang语言环境 prefix=/usr/local/erlang 为安装目录
./configure --prefix=/usr/local/erlang --enable-smp-support --enable-threads --enable-sctp --enable-kernel-poll --enable-hipe
--with-ssl --without-javac
erlang语言编译配置选项:
–prefix 指定安装目录
–enable-smp-support启用对称多处理支持(Symmetric Multi-Processing对称多处理结构的简称)
–enable-threads启用异步线程支持
–enable-sctp启用流控制协议支持(Stream Control Transmission Protocol,流控制传输协议)
–enable-kernel-poll启用Linux内核poll
–enable-hipe启用高性能Erlang –with-ssl 启用ssl包 –without-javac
不用java编译
开始安装编译:
make && make install
配置erlang环境变量
vim /etc/profile
export PATH=$PATH:/usr/local/erlang/bin
source /etc/profil
测试erlang安装是否成功
erl Erlang/OTP 17 [erts-6.2] [source] [smp:2:2] [async-threads:10] [kernel-poll:false]
Eshell V6.2 (abort with ^G)
会输出 erlang安装版本号
3.安装RabbitMQ
1)下载rabbitmq-server-3.6.9.tar.xz
wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.9/rabbitmq-server-generic-unix-3.6.9.tar.xz
2)对于下载xz包进行解压,首先先下载xz压缩工具:
yum install xz
3)对rabbitmq包进行解压:
xz -d xz -d rabbitmq-server-generic-unix-3.6.9.tar.xz
tar -xvf rabbitmq-server-generic-unix-3.6.9.tar
4)随后移动至/usr/local/下 改名rabbitmq:
cp -r rabbitmq_server-3.6.9 /usr/local/rabbitmq
5)这种下载的方式解压后直接可以使用,无需再编译安装;
进入到rabbit文件内,其命令文件存在于sbin文件夹下,因此需要将sbin文件夹的路径添加到PATH中:修改/etc/profile
export PATH=/usr/local/rabbitmq/sbin:$PATH
执行source /etc/profile使得PATH路径更新,rabbitMQ安装成功。
6)随后启用MQ管理方式:
rabbitmq-plugins enable rabbitmq_management #启动后台管理
rabbitmq-server -detached #后台运行rabbitmq
7)设置端口号,可供外部访问:
iptables -I INPUT -p tcp --dport 15672 -j ACCEPT
(不成功的话 #cd /etc/sysconfig #vim iptablesl里面加,然后#service iptables restart|阿里云的安全组中也要添加该端口的开放)
8)添加管理员账号
rabbitmqctl add_user rabbitadmin 123456
[yf482@bogon rabbitmq]$ sudo rabbitmqctl add_user rabbitadmin 123456
Creating user "rabbitadmin"
9)分配用户标签
rabbitmqctl set_user_tags rabbitadmin administrator
[yf482@bogon rabbitmq]$ sudo rabbitmqctl set_user_tags rabbitadmin administrator
Setting tags for user "rabbitadmin" to [administrator]
10)创建和赋角色完成后查看并确认
rabbitmqctl list_users
[yf482@bogon rabbitmq]$ sudo rabbitmqctl list_users
Listing users
rabbitadmin [administrator]
guest [administrator]
该命令使用户rabbitadmin具有‘/’这个virtual host中所有资源的配置、写、读权限以便管理其中的资源
rabbitmqctl set_permissions -p / rabbitadmin '.*' '.*' '.*'
11)登录rabbitmq管理界面
浏览器输入地址:http://服务器IP地址:15672/