rabbitmq安装
yum install gcc gcc-c++
yum install zlib zlin-devel
yum install -y unzip zip
yum -y install wget
- 安装Python
(1)erlang所需python必须要2.6以上(python就是erlang写的)
// 替换系统默认python2.6
wget http://www.python.org/ftp/python/2.7.6/Python-2.7.6.tgz
tar -zxvf Python-2.7.6.tgz
cd Python-2.7.6
./configure
make && make install
mv /usr/bin/python /usr/bin/python2.6.6.old
ln -s /usr/local/python27/bin/python /usr/bin/python
(2)python升级导致yum命令无法使用的解决办法
//查看yum版本
rpm -qa |grep yum
//查看python版本
whereis python
//如果安装了两个版本的Python, 查找yum和 yum-updatest文件,并编辑此py文件
[root@develop local]
/usr/bin/yum
[root@develop local]
将
- erlang安装
(1) erlang和rabbitmq版本匹配关系
这里总的意思就是建议使用19.3.6.4以上的版本,但是不要查过最新的版本,因为19.3.6.4之前有个rabbimq不接受连接的bug。
各版本mq安装需要的erlang版本
(2)安装
yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel
wget http:
tar -zxvf otp_src_R16B02.tar.gz
./configure --prefix=/usr/local/erlang --with-ssl -enable-threads -enable-smmp-support -enable-kernel-poll --enable-hipe --without-javac
make && make install
vi /etc/profile
export ERL_HOME=/usr/local/erlang
export PATH=$PATH:$ERL_HOME/bin
下载rabbitmq的rpm包
a) 引入秘钥:
Rpm –import https:
b) 会报错缺少这个依赖,解决办法:yum -y install socat
c) 因为我们erlang是编译安的,但是rabbitmq是rpm安装的,此时rpm安装会自动过去下载相关的依赖,这里centos配置的yum源不是最高版本的erlang,所以需要强制取消依赖。rpm -i --nodeps rabbitmq-server-3.7.5-1.el6.noarch.rpm跳过erlang的依赖去安装。
d) 采用service rabbitmq-server start的方式启动会报错failed to remove `/var/run/rabbitmq’: Directory not empty
解决办法:ln -s /usr/local/erlang/bin/erl /usr/bin/erl
e) 执行rpm安装命令时报错:groupadd: cannot open /etc/group
useradd: group 'rabbitmq' does not exist
用lsattr命令查看/etc/group的隐藏权限设定情况发现如下:
用chattr命令对/etc/group去除i权限位chattr -i /etc/group 有多少执行多少。