【博主使用的環境是阿里雲ecs服務器,操作系統為centos】
安裝erlang環境
RabbitMQ底層是Erlang語言,因此要先安裝erlang環境,就像你要運行Java程序就必須先安裝JRE/JDK。
這里使用RabbitMQ官方提供的腳本下載yum源
curl -s https://packagecloud.io/install/repositories/rabbitmq/rabbitmq-server/script.rpm.sh | sudo bash
sudo yum install -y erlang
安裝完成可以使用以下命令查看是否安裝成功
erl -v
# 如果出現下面信息說明安裝成功,這里安裝的是OTP/22版本
Erlang/OTP 22 [erts-10.4.4] [source] [64-bit] [smp:2:2] [ds:2:2:10] [async-threads:1] [hipe]
Eshell V10.4.4 (abort with ^G)
安裝RabbitMQ
RabbitMQ和Erlang有版本兼容性要求,血淚教訓,一定要選擇兼容的版本,具體信息可參考官網
RabbitMQ Erlang版本要求:https://www.rabbitmq.com/which-erlang.html
因為我安裝的Erlang的版本是OPT/22,所以RabbitMQ我選擇3.8.8
安裝RabbitMQ的方式有兩種:
-
wget命令從 github 源安裝,但是我嘗試的時候失敗了,大概因為要FQ,雲服務器不知道怎么配置
wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.8.8/rabbitmq-server-3.8.8-1.el6.noarch.rpm sudo yum install -y rabbitmq-server-3.8.8-1.el6.noarch.rpm
有條件的同學可以試一下,其實我更推薦下面這種
-
從 github 下載 rabbitMQ 的 rpm 文件,使用遠程連接工具把文件拉到 Linux,可以放到 home 目錄下。在 home 目錄下同樣使用 yum 命令安裝即可
sudo yum install -y rabbitmq-server-3.8.8-1.el6.noarch.rpm
github源地址:https://github.com/rabbitmq/rabbitmq-server/releases?after=v3.8.9
安裝完成后使用
rabbitmqctl status
可以查看是否安裝成功,如果沒有報錯說明安裝成功
最后以守護進程的方式運行 RabbitMQ
rabbitmq-server -detached
基本配置
開啟 WEB 后台管理插件
rabbitmq-plugins enable rabbitmq_management
創建運程登錄用戶
因為 rabbbitmq 的默認賬號(賬號guest,密碼guest)只允許在本地登錄,遠程登錄會失敗,因此我們需要創建新用戶並設置響應權限
-
查看當前用戶列表
rabbitmqctl list_users;
-
新增一個用戶
語法:
rabbitmqctl add_user {username} {password}
# 創建 root 用戶 rabbitmqctl add_user root root
-
設置用戶角色
語法:
rabbitmqctl set_user_tags {username} {tag...}
# 設置root為超級管理員 rabbitmqctl set_user_tags root administrator
-
設置用戶權限
語法是
rabbitmqctl set_permissions [-p vhost] {user}{conf}{write}{read}
rabbitmq默認的虛擬主機host為”/“rabbitmqctl set_permissions -p / root ".*" ".*" ".*"
如果你使用的是雲服務器,你可能還需要設置安全組,開放 5672 & 15672 這兩個端口(RabbitMQ server默認是5672端口,后台管理默認是25672端口)
做完上述操作,你應該可以遠程訪問 RabbitMQ