阿里云搞了台测试服务器,2核8G内存,准备折腾公司的新东西。。新项目准备用一下消息队列,实时通信处理流的量比较大,而且后续增长会更多,而且需要N个异步处理逻辑,需要实时监控到数据传输情况。之前用过rabbit,但只限于自己的小项目,没有铺开做东西,所以还是要有所记录点东西。
这次配置环境还算好,没有大问题。
java环境
apt-get install python-software-properties
add-apt-repository ppa:webupd8team/java
apt-get update
如果还是找不到 add-apt-repository,可以执行如下:
apt-get install add-apt-repository
java环境就算配置完成了。
erlang环境
下载了deb的包,不走apt安装,似乎源更新没用,装的还是老版本。安装deb,一些依赖就需要再单独安装。
依赖如下:
apt-get install libncurses5-dev
apt-get -f install
apt-get install libssl-dev
apt-get install m4
apt-get install unixodbc unixodbc-dev
apt-get install freeglut3-dev
apt-get install libwxgtk2.8-dev (这个无法安装,但应该没有影响)
apt-get install xsltproc
apt-get install fop
apt-get install tk8.5
依赖装好后,就可以执行安装erlang了。
dpkg -i esl-erlang_20.2.2-1-xenial_amd64.deb
如果有提示依赖缺少的话,自行查找相关,再安装即可。
rabbitmq安装
先安装socat
apt-get install socat
再安装deb包就好了
dpkg -i rabbitmq-server_3.6.14-1_all.deb
我居然下载的是3.6.14。。。最新已经是3.7了,但装好后才发现,原来是下错包了,先用着了。正好可以体验一下3.7升级后的提升会有多少。
这样就全部安装完毕了。
似乎安装后,就自动启动rabbitmq了,查看一下rabbitmq的运行状态:
rabbitmqctl -q status
还有一个web管理界面,但guest用户只允许loaclhost访问,所以肯定没法用了。想要外网开启,需要做以下几步骤:
- 先开启web访问的plugins
rabbitmq-plugins enable rabbitmq_management
- 创建新用户
rabbitmqctl add_user UserName(用户名) Password(密码)
- 分配权限
rabbitmqctl set_user_tags UserName(上一步创建的用户名) monitoring(权限)
权限有好几类:
超级管理员(administrator)
监控者(monitoring)
策略制定者(policymaker)
普通管理者(management)
可以给一个用户分配多个权限:
rabbitmqctl set_user_tags UserName monitoring policymaker
- 阿里云开启端口,安全策略加上15672端口,之后就能访问了
http://123.456.789.0:15672