瘋狂創客圈 高併發 環境 視頻,陸續上線:php
小視頻以及所需工具的百度網盤連接,請參見 瘋狂創客圈 高併發社羣 博客html
Rabbitmq安裝主要依賴兩個rpm依賴包:** erlang和socat**。java
下載erlang, 在https://packagecloud.io/rabbitmq/erlang頁面選擇對應版本的erlang的rpm安裝包(centos7須要19.3以上版本)。這裏選擇的是版本爲22.0.6。node
瘋狂創客圈的網盤,有提供離線包python
將下載後的erlang安裝包上傳到Linux的/usr/local目錄,而後,使用rpm命令進行安裝,命令以下:linux
sudo rpm -ivh /usr/local/erlang-22.0.6-1.el6.x86_64.rpm
什麼是socat ?nginx
socat 是Linux系統下的一強大易用的網絡工具,名字來由是" Socket CAT",能夠看做是netcat的增強版,socat的官方網站:http://www.dest-unreach.org/socat/。socat是一個兩個獨立數據通道之間的雙向數據傳輸的繼電器。這些數據通道包含文件、管道、設備(終端或調制解調器等)、插座(Unix,IP4,IP6 - raw,UDP,TCP)、SSL、SOCKS4客戶端或代理CONNECT。 Socat支持廣播和多播、抽象Unix sockets、Linux tun/tap、GNU readline 和 PTY。它提供了分叉、記錄和進程間通訊的不一樣模式。socat的主要特色就是在兩個數據流之間創建通道;且支持衆多協議和連接方式:ip, tcp, udp, ipv6, pipe,exec,system,open,proxy,openssl,socket等。git
首先在http://www.rpmfind.net/linux/rpm2html/search.php?query=socat頁面上,找到匹配目標Linux(這裏是centos 7)系統的 rpm安裝包, 這裏選擇的是socat-1.7.3.2-2.el7.x86_64.rpm 安裝包。github
瘋狂創客圈的網盤,有提供離線包web
將下載後的socat安裝包上傳到Linux的/usr/local目錄,使用rpm命令進行安裝,命令以下:
sudo rpm -ivh /usr/local/socat-1.7.3.2-2.el7.x86_64.rpm
第一步:下載須要安裝的Rabbitmq版本
下載須要安裝的Rabbitmq版本,這裏爲3.7.17,CentOS系統下對應版本的下載地址爲:
瘋狂創客圈的網盤,有提供離線包
將安裝包上傳到Linux的/usr/local目錄,而後,使用rpm命令進行安裝,命令以下:
sudo rpm -ivh /usr/local/rabbitmq-server-3.7.17-1.el7.noarch.rpm
1 啓動RabbitMQ
啓動RabbitMQ消息服務器,能夠執行下面的命令:
sudo service rabbitmq-server start
2 RabbitMQ管理帳戶的配置
執行命令 rabbitmqctl add_user admin admin,設置帳戶密碼爲admin admin
rabbitmqctl add_user admin admin
3 爲管理員設置權限
執行命令 rabbitmqctl set_user_tags admin administrator,設置admin爲管理員權限
rabbitmqctl set_user_tags admin administrator
4 打開rabbitmq web管理
執行命令 rabbitmq-plugins enable rabbitmq_management,打開rabbitmq web管理。
rabbitmq-plugins enable rabbitmq_management
5 登錄管理端,並打開訪問權限
管理連接爲:http://192.168.233.128:15672,登錄帳戶密碼爲設置的admin admin
查看用戶權限,默認狀態下權限是不容許訪問(此時程序訪問5672端口是鏈接被拒絕)。
點擊用戶名,進入用戶頁面,直接點擊設置權限。此時刷新頁面回到Users頁面,權限變成可訪問。
6 中止
[root@localhost work]# service rabbitmq-server stop Redirecting to /bin/systemctl stop rabbitmq-server.service [root@localhost work]# service rabbitmq-server status Redirecting to /bin/systemctl status rabbitmq-server.service ● rabbitmq-server.service - RabbitMQ broker Loaded: loaded (/usr/lib/systemd/system/rabbitmq-server.service; enabled; vendor preset: disabled) Active: inactive (dead) since Thu 2019-12-05 07:29:11 PST; 8s ago Process: 27084 ExecStop=/usr/sbin/rabbitmqctl shutdown (code=exited, status=0/SUCCESS) Process: 1526 ExecStart=/usr/sbin/rabbitmq-server (code=exited, status=0/SUCCESS) Main PID: 1526 (code=exited, status=0/SUCCESS) Status: "Initialized" Nov 24 18:07:40 localhost.localdomain rabbitmq-server[1526]: Starting broker... Nov 24 18:07:40 localhost.localdomain rabbitmq-server[1526]: systemd unit for activation check: "rabbitmq-server.service" Nov 24 18:07:40 localhost.localdomain systemd[1]: Started RabbitMQ broker. Nov 24 18:07:42 localhost.localdomain rabbitmq-server[1526]: completed with 4 plugins. Dec 05 07:28:44 localhost.localdomain systemd[1]: Stopping RabbitMQ broker... Dec 05 07:28:49 localhost.localdomain rabbitmqctl[27084]: Shutting down RabbitMQ node rabbit@localhost running at PID 1526 Dec 05 07:28:57 localhost.localdomain rabbitmqctl[27084]: Waiting for PID 1526 to terminate Dec 05 07:28:57 localhost.localdomain rabbitmq-server[1526]: Gracefully halting Erlang VM Dec 05 07:29:11 localhost.localdomain rabbitmqctl[27084]: RabbitMQ node rabbit@localhost running at PID 1526 successfully shut down Dec 05 07:29:11 localhost.localdomain systemd[1]: Stopped RabbitMQ broker.
PS:常見問題
一. http://ip:15672不能訪問,確認兩點:1. 添加用戶、給用戶設置管理員權限、rabbitmq-plugins這三步是否執行成功。2. 使用firewall打開5672/15672端口。具體步驟以下:
sudo service firewalld start
firewall-cmd --zone=public --add-port=5672/tcp --permanent
firewall-cmd --zone=public --add-port=15672/tcp --permanent
sudo service firewalld start(若是系統不要求開啓防火牆,能夠在設置完之後再關閉它)
備註:即便防火牆處於關閉狀態,也應該先打開端口再關閉,不然在有些機器上會仍然端口不通。
或者 關閉防火牆
首先使用systemctl status firewalld 命令,查看防火牆的狀態,執行命令以下:
[root@localhost ~]# systemctl status firewalld
firewalld.service - firewalld - dynamic firewall daemon
Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)
Active: active (running) since 四 2019-07-25 19:15:01 CST; 18h ago
Docs: man:firewalld(1)
Main PID: 634 (firewalld)
Memory: 220.0K
CGroup: /system.slice/firewalld.service
└─634 /usr/bin/python -Es /usr/sbin/firewalld --nofork –nopid
結果中的Active: active (running) ,表示防火牆正在運行,實驗和測試環境,建議進行關閉。關閉防火牆的命令以下:
service firewalld stop
首先查看防火牆狀態:
service iptables status
永久性生效,重啓後不會復原
chkconfig iptables off
chkconfig iptables on
關閉:
即時生效,重啓後復原
具體,請關注 Java 高併發研習社羣 【博客園 總入口 】
最後,介紹一下瘋狂創客圈:瘋狂創客圈,一個Java 高併發研習社羣 【博客園 總入口 】
瘋狂創客圈,傾力推出:面試必備 + 面試必備 + 面試必備 的基礎原理+實戰 書籍 《Netty Zookeeper Redis 高併發實戰》