Centos7 安装配置 RabbitMQ3.6

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/gaokcl/article/details/82804519

Centos7 安装配置 RabbitMQ3.6

$$ zero,说明:

0,参考:https://www.linuxidc.com/Linux/2016-03/129557.htm

1,   前言:网上安装只有安装成功的例子,错误的例子解决方案要自己找(也能提高自己)

2,这里是我安装的实例

3,安装的东西是崭新的

4,很多人喜欢将下载的软件保存到 /usr/local/webserver/中(目前流行的)

不过,我喜欢放在 家目录中( pwd ==> /root ),方便自己观看与删除软件安装包

通常软件安装在 /usr/local/ 下(目前流行的,在该目录下新建文件夹安装 如:/usr/local/php )

5, 这是 yum 源码包 安装。 网上有 rpm包安装,请参考  https://blog.csdn.net/zhaogangyyxf/article/details/79614464

一,erlang安装

1、在安装erlang之前先安装下依赖文件(这一步不要忘掉了, 不然后面./configure的时候要报错):

 [root@localhost ~]# yum install gcc glibc-devel make ncurses-devel openssl-devel xmlto

 [root@localhost ~]# yum install yum install setroubleshoot -y

 [root@localhost ~]# yum install socat

  2、到erlang官网去下载erlang安装包

   官网地址: http://www.erlang.org/downloads

 [root@localhost ~]# wget -c http://erlang.org/download/otp_src_21.0.tar.gz

 [root@localhost ~]# tar -zxvf otp_src_21.0.tar.gz

 [root@localhost ~]# cd otp_src_21.0/

3、编译安装( 我这里指定编译安装后放在/usr/local/erlang目录里面,这个你们可以改成其他的 ):

 [root@localhost ~]# otp_src_21.0]# mkdir /usr/local/erlang

 [root@localhost ~]# otp_src_21.0]# ./configure --prefix=/usr/local/erlang

 [root@localhost ~]# otp_src_21.0]# make && make install

  4、测试安装是否成功:

 [root@localhost ~]# cd /usr/local/erlang/bin/ 

 [root@localhost bin]# ./erl

若出现以下界面,则说明我们erlang配置OK了    

  输入【 halt(). 】 退出控制台

 > halt().

【 或者 】 : 使用下面的测试 erlang 是否安装成功:

注意 erl 要可以使用( vim /etc/profile ==> 在末尾加入这么一行即可:export PATH=$PATH:/usr/local/erlang/bin ==> source /etc/profile ==> 配置全局环境变量):

    [root@localhost ~]# erl -version

二、安装rabbitmq

  1、到官网下载最新安装包:http://www.rabbitmq.com/releases/rabbitmq-server/

[root@localhost ~]# cd usr/local   #  rabbitmq 不用编译安装,解压到 usr/local/下 即可

[root@localhost local]# wget -c http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.15/rabbitmq-server-generic-unix-3.6.15.tar.xz

一般下载慢,可以在Windows10上直接下载(  erlang 同理,只不过安装包要对应好安装的系统  )可以使用  xshell  与 xftp 

解压:

[root@localhost local]# xz -d rabbitmq-server-generic-unix-3.6.15.tar.xz 

[root@localhost local]# tar -xvf rabbitmq-server-generic-unix-3.6.15.tar

[root@localhost local]# rm -rf rabbitmq-server-generic-unix-3.6.15.tar      # 删除 rabbitmq 安装包

[root@localhost local]# mv rabbitmq-server-generic-unix-3.6.15  rabbitmq   # mv 在同一个目录下是重命名,不同目录下是拷贝

2、配置rabbitmq的环境变量(这个跟上面的erlang配置以及java的环境变量差不多)

 [root@localhost ~]# vim /etc/profile

 在末尾加入以下配置:export PATH=$PATH:/usr/local/rabbitmq/sbin

 更新配置文件:[root@localhost ~]# source /etc/profile

三,使用:

1,运行RabbitMQ需要首先开放15672和5672端口:

参数介绍:

@1、 firwall-cmd:是Linux提供的操作firewall的一个工具;

@2、--permanent:表示设置为持久;

@3、--add-port:标识添加的端口;

 [root@localhost ~]# firewall-cmd --zone=public --add-port=15672/tcp --permanent # 不加 --permanent  是临时修改
 [root@localhost ~]# firewall-cmd --zone=public --add-port=5672/tcp --permanent
 [root@localhost ~]# firewall-cmd --reload   #  重载生效刚才的端口设置

2,rabbitmq的基本操作:

    启动:rabbitmq-server -detached

    关闭:rabbitmqctl stop

    查看状态:rabbitmqctl status

&1, 启动使用:

   [root@localhost ~]# rabbitmq-plugins enable rabbitmq_management  # 配置 web界面

   [root@localhost ~]# rabbitmq-server    # 或者 rabbitmq-server -detached  或者 
    
                                            rabbitmqctl stop   ==>  rabbitmq-server

&2,访问管理页面:http://192.168.?.?:15672 端口默认为15672

&3,默认来宾用户:guest, 来宾用户密码:guest

3,开启rabbitmq远程访问

    添加用户:rabbitmqctl add_user ad admin123  // ad是用户名,admin123是用户密码

    添加权限:rabbitmqctl set_permissions -p "/" ad "." "." ".*"

    修改用户角色:rabbitmqctl setusertags ad administrator

    然后就可以远程访问了,然后可直接配置用户权限等信息

  4、rabbitmq常用命令

    add_user

    delete_user

    change_password

    list_users

    add_vhost

    delete_vhost

    listvhostssetpermissions [-p ]

    clear_permissions [-p ]

    list_permissions [-p ]

    listuserpermissions

    list_queues [-p ] [ ...]

    list_exchanges [-p ] [ ...]

    list_bindings [-p ]

    list_connections [ ...]

四,错误与问题(解决):

1,有时会报启动rabbitmq,提示ERROR: node with name "rabbit" already running on "localhost":

  [root@localhost ~]# rabbitmq-server

  ERROR: node with name "rabbit" already running on "localhost"

semodule -l|grep rabbitmq

ps aux|grep epmd

ps aux|grep erl

kill  -9   进程号

rabbitmq-server   或者         rabbitmqctl stop   ==>  rabbitmq-server

2,查看端口号,配置环境变量后(rabbitmq会开机自启动),注意:rpm包安装的要自己设置开机自启动

&& 三种开机自启动的方法

ln -s                    在/etc/rc.d/rc.d目录中建立/etc/init.d/服务的软链接(代表0~6七个运行级别之一)

chkonfig                命令行运行级别设置

ntsysv                   伪图形运行级别设置

全文地址请点击:https://blog.csdn.net/qq32863631/article/details/78631174?utmsource=copy

3,账号密码都是   guest      。 登录rabbitmq报错User can only log in via localhost

 在访问管理界面使用guest用户登录时出现login failed错误。

 到服务器上查询日志显示出现错误的原因是:HTTP access denied: user ‘guest’ - User can only log in via localhost。

解决:

  1,rabbitmq从3.3.0开始禁止使用guest/guest权限通过除localhost外的访问。我的是3.6

  2,如果想使用guest/guest通过远程机器访问,需要在rabbitmq配置文件中(找到/rabbitmq_server-3.6.14/ebin下面的rabbit.app文件)中设置 
  loopback_users为[]。

  3,找到/rabbitmq_server-3.6.15/ebin(我的:/usr/local/rabbitmq/ebin)下面的rabbit.app文件文件完整内容如下(注意后面的半角句号): ,

     [root@localhost ~]# cd /usr/local/rabbitmq/ebin

     [root@localhost ebin]# vim rabbit.app

  4,找到:loopback_users里的<<”guest”>>删除。

      /loopback_users  回车  

  [{rabbit, [{loopback_users, []}]}].

  5,然后重启:

  systemctl restart rabbitmq-server.service  或者    rabbitmqctl stop   ==>  rabbitmq-server

猜你喜欢

转载自blog.csdn.net/gaokcl/article/details/82804519