RabbitMQ 離線安裝(帶視頻)

瘋狂創客圈 《SpringCloud Nginx 高併發核心編程》高併發 架構師 必備【連接

在這裏插入圖片描述


瘋狂創客圈 高併發 環境 視頻,陸續上線:php

  • Windows Redis 安裝(帶視頻)
  • Linux Redis 安裝(帶視頻)
  • Windows Zookeeper 安裝(帶視頻)
  • Linux Zookeeper 安裝(帶視頻)
  • RabbitMQ 離線安裝(帶視頻)
  • Nacos 安裝(帶視頻)

小視頻以及所需工具的百度網盤連接,請參見 瘋狂創客圈 高併發社羣 博客html

依賴包安裝

Rabbitmq安裝主要依賴兩個rpm依賴包:** erlang和socat**。java

Rabbitmq依賴包的下載和安裝

下載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 依賴包的下載和安裝

什麼是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

如何下載socat?

首先在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離線包

將下載後的socat安裝包上傳到Linux的/usr/local目錄,使用rpm命令進行安裝,命令以下:

sudo rpm -ivh  /usr/local/socat-1.7.3.2-2.el7.x86_64.rpm

RabbitMQ 單節點安裝過程

第一步:下載須要安裝的Rabbitmq版本

下載須要安裝的Rabbitmq版本,這裏爲3.7.17,CentOS系統下對應版本的下載地址爲:

https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.7.17/rabbitmq-server-3.7.17-1.el7.noarch.rpm

瘋狂創客圈的網盤,有提供離線包

第二步:rpm命令進行安裝RabbitMQ

將安裝包上傳到Linux的/usr/local目錄,而後,使用rpm命令進行安裝,命令以下:

sudo rpm  -ivh  /usr/local/rabbitmq-server-3.7.17-1.el7.noarch.rpm

RabbitMQ的啓動和配置

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 高併發實戰

img


瘋狂創客圈 Java 死磕系列

  • Java (Netty) 聊天程序【 億級流量】實戰 開源項目實戰
相關文章
相關標籤/搜索