引言
下載了個開源項目,需要搭建 Redis 和 RabbitMQ 環境,以下作個記錄。
環境
VMware Workstation Pro
CentOS-8.1.1911-x86_64-dvd1.iso
rabbitmq-server-3.8.3-1.el8.noarch.rpm
關於安裝的鏡像,rpm包,等文件
鏈接:https://pan.baidu.com/s/1kWDtBIMmwbtt7Q_MLBZJVQ
提取碼:rnpl
虛擬機安裝
安裝問題
下載好的 iso 文件,安裝虛擬機遇到問題:vmware虛擬機安裝CentOS8提示錯誤:section %package does not end with %end
需要開啟SVMMode:微星主板開啟虛擬化SVM Mode
IP問題
安裝好后啟動,使用 xshell 連接需要知道IP,關於IP問題:Centos8虛擬機安裝后IP問題
Erlang安裝
執行命令
yum -y install erlang
出現下面內容說明就成功了(或者執行命令 erl 查看)
RabbitMQ安裝
下載安裝包
Xftp上傳到虛擬機安裝
執行安裝命令
yum install -y rabbitmq-server-3.8.3-1.el8.noarch.rpm
出現下面內容說明就成功了
啟動RabbitMQ
出現下面內容說明就成功了(但是先別着急啟動,因為還需要修改配置文件設置允許遠程訪問,如果啟動了就按下面步驟來吧,沒有困難制造困難也要上……)
安裝web管理插件
執行命令
rabbitmq-plugins enable rabbitmq_management
修改配置文件使guest用可以遠程訪問
在修改配置文件前,瀏覽器訪問:
http://192.168.81.129:15672
這個 IP 是我虛擬機的 ip,修改為自己的 IP。(如果遇到訪問不了,有可能是防火牆的問題,見文章底部)
登錄 guest/guest 提示:User can only log in via localhost
解決方法:
修改配置文件 rabbit.app
vi /usr/lib/rabbitmq/lib/rabbitmq_server-3.8.3/ebin/rabbit.app
將:{loopback_users, [<<”guest”>>]} ,改為:{loopback_users, []},
重啟RabbitMQ
重啟報錯
修改.app 文件后重啟RabbitMQ報錯:ERROR: node with name "rabbit" already running on "localhost"
先停止再重啟(停止啟動命令)
停止
systemctl stop rabbitmq-server.service
啟動
systemctl start rabbitmq-server.service
運行狀態查看
rabbitmqctl status
重新登錄
刷新瀏覽器重新登錄
設置為開機自啟動
啟動RabbitMQ后設置為開機自啟動
執行命令:systemctl enable rabbitmq-server.service 即可。
[root@localhost xgcd]# chkconfig rabbitmq-server on Note: Forwarding request to 'systemctl enable rabbitmq-server.service'. [root@localhost xgcd]# [root@localhost xgcd]# systemctl enable rabbitmq-server.service [root@localhost xgcd]# [root@localhost xgcd]# [root@localhost xgcd]#
這就算告一段落了,然鵝,RabbitMQ 的學習之路才剛剛開始~~~
補充
防火牆問題
(我這里是將firewall禁用,啟用了iptables,並在配置文件中配置了15672和5672端口,也可查看:linux防火牆——iptables與firewall)
如果無法訪問到界面,那么有可能是服務器防火牆沒有關閉的問題,解決這個問題有兩種方式: 關閉防火牆或者配置15672和5672 端口可以通過 關閉防火牆:systemctl stop firewalld 或者禁用 systemctl disable firewalld 開發或者測試環境。 配置防火牆端口: 15672(ui管理端口):firewall-cmd --add-port=15672/tcp --permanent 5672(遠程連接端口):firewall-cmd --add-port=5672/tcp --permanent 最后 執行 firewall-cmd --reload 瀏覽器再次訪問 ,ok可以訪問了 作者:牡羊座_cc68 鏈接:https://www.jianshu.com/p/8aece9517533 來源:簡書 著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。
Unit iptables.service could not be found.
https://blog.csdn.net/qiushisoftware/article/details/90691460
RabbitMQ 命令行的操作
添加用戶:rabbitmqctl add_user username password 列出所有用戶:rabbitmqctl list_users 刪除用戶:rabbitmqctl delete_user username 清除用戶權限:rabbitmqctl clear_permissions -p vhostpath username 列出用戶權限:rabbitmqctl list_user_permissions username 修改密碼:rabbitmqctl change_password username newpassword 設置用戶權限:rabbitmqctl set_permissions -p vhostpath username ".*" ".*" ".*" 創建虛擬主機: rabbitmqctl add_vhost vhostpath 列出所以虛擬主機: rabbitmqctl list_vhosts 列出虛擬主機上的所有權限: rabbitmqctl list_permissions -p vhostpath 刪除虛擬主機: rabbitmqctl delete_vhost vhost vhostpath 移除所有數據,要在 rabbitmqctl stop_app 之后使用: rabbitmqctl reset 組成集群命令: rabbitmqctl join_cluster <clusternode> [--ram] 查看集群狀態: rabbitmqctl cluster_status 修改集群節點的存儲形式: rabbitmqctl change_cluster_node_type disc | ram 摘除節點:rabbitmqctl forget_cluster_node [--offline] 修改節點名稱:rabbitmqctl rename_cluster_node oldnode1 newnode1 [oldnode2 newnode2] [oldnode3 newnode3...]