ubuntu 16.04 安装rabbitmq
1. 系统更新
root@test-OptiPlex-3050:/usr/local/src# sudo apt-get update -y
root@test-OptiPlex-3050:/usr/local/src# sudo apt-get upgrade
2. 安装语言包
root@test-OptiPlex-3050:/usr/local/src# sudo apt-get install erlang-nox 进入erl版本之后ctrl+c 输入a退出
3. 密钥
root@test-OptiPlex-3050:/usr/local/src# sudo wget -O- https://www.rabbitmq.com/rabbitmq-release-signing-key.asc | sudo apt-key add -
--2022-07-05 08:44:45-- https://www.rabbitmq.com/rabbitmq-release-signing-key.asc
Resolving www.rabbitmq.com (www.rabbitmq.com)... 104.20.10.224, 104.20.11.224, 172.67.16.25, ...
Connecting to www.rabbitmq.com (www.rabbitmq.com)|104.20.10.224|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 3187 (3.1K) [application/pgp-signature]
Saving to: ‘STDOUT’
- 100%[========================>] 3.11K --.-KB/s in 0s
2022-07-05 08:44:46 (20.4 MB/s) - written to stdout [3187/3187]
OK
4.再次更新
sudo apt-get update
5.安装
sudo apt-get install rabbitmq-server
6 查看状态
通过service查看状态 启动 关闭
root@test-OptiPlex-3050:/usr/local/src# service rabbitmq-server status
● rabbitmq-server.service - RabbitMQ Messaging Server
Loaded: loaded (/lib/systemd/system/rabbitmq-server.service; enabled; vendor preset:
Active: active (running) since 二 2022-07-05 08:46:45 CST; 44s ago
Main PID: 6300 (rabbitmq-server)
CGroup: /system.slice/rabbitmq-server.service
├─6300 /bin/sh /usr/sbin/rabbitmq-server
├─6308 /bin/sh -e /usr/lib/rabbitmq/bin/rabbitmq-server
├─6393 /usr/lib/erlang/erts-7.3/bin/epmd -daemon
├─6447 /usr/lib/erlang/erts-7.3/bin/beam.smp -W w -A 64 -P 1048576 -K true -
├─6543 inet_gethost 4
└─6544 inet_gethost 4
7月 05 08:46:41 test-OptiPlex-3050 systemd[1]: Starting RabbitMQ Messaging Server...
7月 05 08:46:42 test-OptiPlex-3050 rabbitmq[6301]: Waiting for 'rabbit@test-OptiPlex-30
7月 05 08:46:42 test-OptiPlex-3050 rabbitmq[6301]: pid is 6308 ...
7月 05 08:46:45 test-OptiPlex-3050 systemd[1]: Started RabbitMQ Messaging Server.
lines 1-16/16 (END)
7. 开启web管理状态
root@test-OptiPlex-3050:/usr/local/src# rabbitmq-plugins enable rabbitmq_management
The following plugins have been enabled:
mochiweb
webmachine
rabbitmq_web_dispatch
amqp_client
rabbitmq_management_agent
rabbitmq_management
Applying plugin configuration to rabbit@test-OptiPlex-3050... started 6 plugins.
root@test-OptiPlex-3050:/usr/local/src# service rabbitmq-server restart
8. 配置访问用户
root@test-OptiPlex-3050:/usr/local/src# sudo rabbitmqctl add_user hett hett
Creating user "hett" ...
root@test-OptiPlex-3050:/usr/local/src# sudo rabbitmqctl list_users
Listing users ...
guest [administrator]
hett []
root@test-OptiPlex-3050:/usr/local/src# sudo rabbitmqctl set_user_tags hett administrator
Setting tags for user "hett" to [administrator] ...
root@test-OptiPlex-3050:/usr/local/src#
角色名有这几种:administrator,monitoring,policymaker,management,或其他自定义名称
administrator:超级管理员;可登陆管理控制台,可查看所有的信息,并且可以对用户,策略(policy)进行操作。
monitoring:监控者;可登陆管理控制台,同时可以查看rabbitmq节点的相关信息(进程数,内存使用情况,磁盘使用情况等)
policymaker:策略制定者;可登陆管理控制台, 同时可以对policy进行管理。但无法查看节点的相关信息
management:普通管理者;仅可登陆管理控制台,无法看到节点信息,也无法对策略进行管理。
其他:无法登陆管理控制台,通常就是普通的生产者和消费者
9. 授权
sudo rabbitmqctl set_permissions -p VHostPath User ConfP WriteP ReadP
例子1:
root@test-OptiPlex-3050:/usr/local/src# sudo rabbitmqctl set_permissions -p "/" hett ".*" ".*" ".*"
Setting permissions for user "hett" in vhost "/" ...
#注:hett是我的用户名,三个".*"中间用空格分开,别挨着 ; 这段命令意思是为虚拟地址为/ 下的admin用户分配权限
只有授权后外网才能访问
配置文件
root@test-OptiPlex-3050:/usr/local/src# nano /usr/lib/rabbitmq/lib/rabbitmq_server-3.5.7/ebin/rabbit.app
10 成功