1. 程式人生 > >搭建RabbitMQ叢集之Windows單機版

搭建RabbitMQ叢集之Windows單機版

Note:單機版叢集僅作為學習使用,生產環境務必使用多伺服器叢集。 1、配置Host節點、環境變數 127.0.0.1 node1 127.0.0.1 node2 127.0.0.1 node3 在E:\study\rabbitmq下解壓2個RabbitMQ資料夾,路徑分別為E:\study\rabbitmq\rabbitmq_server-3.6.12-1、E:\study\rabbitmq\rabbitmq_server-3.6.12-2。 設定環境變數: 變數名:RABBITMQ_BASE 變數值:E:\study\rabbitmq\baseconfig 2、修改rabbitmq-node1的配置檔案並啟動 2.1、修改rabbitmq_server-3.6.12-1\sbin\rabbitmq-env.bat
,在16行加入以下配置 set RABBITMQ_CONFIG_FILE=!RABBITMQ_HOME!\etc\rabbitmq-node1 set RABBITMQ_BASE=!RABBITMQ_BASE!\rabbitmq-cluster set RABBITMQ_NODENAME=[email protected]建議[email protected] set RABBITMQ_NODE_PORT=5672 2.2、修改rabbitmq_server-3.6.12-1\etc\rabbitmq-node1.config,修改384行的listener %% Change the port on which the HTTP listener listens, %% specifying an interface for the web server to bind to. %% Also set the listener to use SSL and provide SSL options. %% {listener, [{port, 15672
}, {ip, "127.0.0.1"}, {ssl, false}]} %% {ssl_opts, [{cacertfile, "/path/to/cacert.pem"}, %% {certfile, "/path/to/cert.pem"}, %% {keyfile, "/path/to/key.pem"}]}]}, 2.3、啟動node1並啟用外掛 開啟CMD命令列視窗,進入node1節點的sbin目錄, cd /d E:\study\rabbitmq\rabbitmq_server-3.6.12-1\sbin rabbitmq-server.bat 再開啟一個命令列視窗,進入sbin目錄,啟用外掛: rabbitmq-plugins.bat enable rabbitmq_management 2.3、檢測RabbitMQ執行狀態 2.3.1、執行指令:rabbitmqctl.bat status 返回結果: Status of node
[email protected]
[{pid,22556}, {running_applications, [{rabbitmq_management,"RabbitMQ Management Console","3.6.12"}, {rabbitmq_web_dispatch,"RabbitMQ Web Dispatcher","3.6.12"}, {rabbitmq_management_agent,"RabbitMQ Management Agent","3.6.12"}, 2.3.2、網頁檢視 瀏覽器開啟localhost:15672,確認Overview的Node節點Node的名字是:[email protected],確認Overview的Node節點Paths節點的Config file值為e:/study/rabbitmq/rabbitmq_server-3.6.12-1/etc/rabbitmq-node1.config(注意後面應該沒有not found才對)。
3、修改rabbitmq-node2的配置檔案並加入叢集 3.1、修改node2的配置並啟動 修改rabbitmq_server-3.6.12-2的rabbitmq-env.bat,將node1改為node2,RABBITMQ_NODE_PORT改為5673; 修改rabbitmq-node2.config,將listener埠改為15673。 啟動節點2,並啟用外掛。 3.2、參考2.3檢測RabbitMQ執行狀態 3.3、將node2節點加入叢集 命令列進入E:\study\rabbitmq\rabbitmq_server-3.6.12-2\sbin, rabbitmqctl.bat stop_app rabbitmqctl.bat join_cluster [email protected] rabbitmqctl.bat start_app 3.4、檢視叢集狀態 rabbitmqctl.bat cluster_status
開啟任一節點管理介面,將看到叢集資訊。 如果想往叢集中加入新節點,按照以上步驟加入node3、node4即可。
其他: 如果你不想部署多個RabbitMQ資料夾,可以參考文末連結,複製sbin的執行指令碼rabbitmqctl、rabbitmq-env、rabbitmq-plugins、rabbitmq-server,並修改其中的引數。 4、RabbitMQ叢集操作指令 4.1、使用者指令 新增使用者:rabbitmqctl add_user mq mqpwd 刪除使用者: rabbitmqctl delete_user username 修改密碼:rabbitmqctl change_password username newpassword 列出所有使用者:rabbitmqctl list_users 設定使用者許可權策略:rabbitmqctl set_user_tags mq administrator 角色說明 none 最小許可權角色 management 管理員角色 policymaker 決策者 monitoring 監控 administrator 超級管理員 4.2、許可權控制 建立虛擬主機: # rabbitmqctl add_vhost vhostpath 刪除虛擬主機: # rabbitmqctl delete_vhost vhostpath 列出所有虛擬主機: # rabbitmqctl list_vhosts 設定使用者許可權 # set_permissions [-p <vhostpath>] <user> <conf> <write> <read> <conf> <write> <read>的位置分別用正則表示式來匹配特定的資源,如'^(amq\.gen.*|amq\.default)$'可以匹配server生成的和預設的exchange,'^$'不匹配任何資源。 RabbitMQ會快取每個connection或channel的許可權驗證結果、因此許可權發生變化後需要重連才能生效。 清除使用者許可權 # rabbitmqctl clear_permissions [-p vhostpath] username 列出虛擬主機上的所有許可權 # rabbitmqctl list_permissions [-p vhostpath] 列出使用者許可權 # rabbitmqctl list_user_permissions username vhost授權:rabbitmqctl set_permissions -p / mq '.*' '.*' '.*' 改變節點型別為磁碟節點: rabbitmqctl stop_app rabbitmqctl change_cluster_node_type disc/ram –更改節點為磁碟或記憶體節點 rabbitmqctl start_app 4.3、叢集操作 rabbitmq-server:啟動節點和應用;rabbitmqctl stop:應用和節點都將被關閉; rabbitmqctl stop_app:僅僅關閉應用。 設定叢集的名字:rabbitmqctl set_cluster_name my_mq_name 將節點移出叢集(stop_app,然後reset節點): rabbitmqctl stop_app rabbitmqctl reset #從叢集中移除,刪除所有資料包括配置的使用者等,刪除持久化的訊息。 force_reset命令和reset的區別是無條件重置節點,不管當前管理資料庫狀態以及叢集的配置。如果資料庫或者叢集配置發生錯誤才使用這個最後 的手段。 注意:只有在停止RabbitMQ應用後,reset和force_reset才能成功。 RABBITMQ叢集重啟(叢集重啟時,最後一個掛掉的節點應該第一個重啟): 先在一個節點上執行 #rabbitmqctl force_boot #service rabbitmq-server start 在其他節點上執行 #service rabbitmq-server start 檢視cluster狀態是否正常(要在所有節點上查詢)。 #rabbitmqctl cluster_status 如果有節點沒加入叢集,可以先退出叢集,然後再重新加入叢集。 上述方法不適合記憶體節點重啟,記憶體節點重啟時會去磁碟節點同步資料 ,如果磁碟節點沒起來,記憶體節點一直失敗。 RabbitMQ的叢集節點包括記憶體節點、磁碟節點。顧名思義記憶體節點就是將所有資料放在記憶體,磁碟節點將資料放在磁碟。如果在投遞訊息時,打開了訊息的持久化,那麼即使是記憶體節點,資料還是安全的放在磁碟。
歡迎個人轉載,但須在文章頁面明顯位置給出原文連線;
未經作者同意必須保留此段宣告、不得隨意修改原文、不得用於商業用途,否則保留追究法律責任的權利。

【 CSDN 】:csdn.zxiaofan.com
【GitHub】:github.zxiaofan.com

如有任何問題,歡迎留言。祝君好運!
Life is all about choices! 
將來的你一定會感激現在拼命的自己!

相關推薦

搭建RabbitMQ叢集Windows單機

Note:單機版叢集僅作為學習使用,生產環境務必使用多伺服器叢集。 1、配置Host節點、環境變數 127.0.0.1 node1 127.0.0.1 node2 127.0.0.1 node3 在E:\study\rabbitmq下解壓2個RabbitMQ資料夾,路徑分

windows環境中單機搭建rabbitmq叢集

建議單機版叢集僅作為學習使用,生產環境最好使用多伺服器叢集來避免單點故障帶來的服務不可用,必竟單機版的集是偽叢集。 1:準備基礎檔案、環境變數   設定環境變數:   變數名:RABBITMQ_BASE   變數值:C:\Program Files\RabbitMQ Server(例:這個是安裝目錄的

初識HadoopHadoop單機搭建

最近閒來無事,和朋友志聲大神一起想學習Hadoop,最晚弄機器的弄到兩點多,今天動手和志聲一起安裝Hadoop的環境,剛開始也是一頭霧水啊,Hadoop官網 的教程我也是醉了,說的牛頭不對馬嘴,最後只能通過各種百度解決了問題,最後把安裝的一些操作都記錄下來,希望

redis學習筆記linux單機redis安裝

info 目錄 tar daemon exit 單機 技術分享 gre shutdown Redis安裝   下載最新穩定版本: 官網: https://redis.io/     第一步:將redis.tar.gz解壓:tar -zxvf redis-4.0.10.ta

docker簡易搭建RabbitMQ叢集

寫在前面:rabbitmq叢集與其他叢集有些不同,rabbitmq叢集同步的指是複製佇列,元資料資訊的同步,即同步的是資料儲存資訊;訊息的存放只會儲存在建立該訊息佇列的那個節點上。並非在節點上都儲存一個完整的資料。在通過非資料所在節點獲取資料時,通過元資料資訊,路由轉發到儲存資料節點上,從而

centos7搭建hadoop叢集xcall指令碼

在一些特定場景下,需要所有節點同時執行相同的命令,比如主機hadoop1執行ls命令,其他節點主機也同時執行ls命令,實現這種效果快捷方式一般有兩種: 1.使用工具,同一傳送執行命令,如SecureCRT,同時連線所有節點,在視窗下面可以直接輸入需要同時執行的命令。 優

centos7搭建hadoop叢集rsync和xsync

文章記錄於各個伺服器(或者虛擬機器等)已經配置了ssh免密登入,可執行下面操作,未配置ssh免密登入,可參考:https://blog.csdn.net/yhblog/article/details/84029535 此文章是基於centos7minimal版本的,純淨系統,所以還

Ubuntu下搭建spark2.4環境(單機

說明:單機版的Spark的機器上只需要安裝JDK即可,其他諸如Hadoop、Zookeeper(甚至是scala)之類的東西可以一概不安裝。 叢集版搭建:Spark2.2叢集部署和配置 一、安裝JDK1.8 1、下載JDK1.8,地址 2、將下載的檔案儲存在 /home/qq/j

CentOS 7不使用RPM安裝RabbitMQ 3.7.8單機

RabbitMQ是目前非常熱門的訊息中介軟體,憑藉其高可靠、高擴充套件、高可用及豐富的功能特性:TTL、死信佇列、延遲佇列、優先順序佇列、訊息持久化、映象佇列。 訊息中介軟體是指利用高效可靠的訊息傳遞機制進行與平臺無關的資料交流,並基於資料通訊來進行分散式系統的整合,能在不同平臺之間進行通訊,常被用來遮蔽各

在滴滴雲 DC2 雲伺服器上搭建 RabbitMQ 叢集

前言 訊息中介軟體已經成為分散式工程專案中不可或缺的一部分,市場上也呈現出各種各樣的開源 MQ,而 RabbitMQ 以其優秀的效能和易用的特點贏得了較好的口碑,本文將介紹 RabbitMQ 叢集的搭建與應用。 1.虛擬機器的準備 本文將介紹叢集安裝 RabbitMQ,所以需要

使用Docker-Compose搭建Rabbitmq叢集

1.使用映象搭建叢集,docker-compose.xml配置見下面的github具體配置 2.如果需要跨伺服器,參考 具體變更如下: 說完埠,下面提供一個三節點的docker-compose檔案。 rabbit1(10.106.136.7) 1

Solr 7.5.0 windows單機

章節目錄 第一節:下載solr                               第二節:解壓、啟動、訪問solr 第三節:使用命令新增/刪除 core      第四節:core相關配置檔案簡介及操作 第五節:IK分詞器                   

關於golang專案爬蟲 單機

爬蟲專案的應用範圍很廣泛  最近總結了一下爬蟲的專案 並記錄下來 爬蟲的最終版為 分散式併發處理爬蟲 但是我們分為三部分記錄 首先是單任務版的爬蟲記錄 此次我們爬取的是珍愛網的公開內容 由於其他網址有可能涉及私密資訊 所以選擇相親網站 宣告 本人爬取的內容只供自己練習

HBase1.2.0 windows單機安裝配置

1、首先從官網上下載HBase1.2.0安裝包 http://archive.apache.org/dist/hbase/ 2、解壓到指定目錄 3、修改conf/hbase-env.cmd set HBASE_MANAGES_ZK=true set H

Ambari搭建Hadoop叢集配置SSH免密登入

Ambari搭建Hadoop叢集時為了實現叢集之間的主機進行快速的聯機,我們需要對叢集的虛擬機器進行免密登入配置。下面來說說具體步驟。 前提:3臺虛擬機器。 1.修改主機名 a)首先root許可權下分別對3臺虛擬機器進行修改。修改的命令如下: sudo hostnam

大資料hadoop單機虛擬機器Vmware安裝教程

        為深入學習hadoop,需要在個人電腦中安裝cloudera_centos虛擬機器。本篇文件介紹的就是關於cloudera_centos虛擬機器的安裝教程。(推薦使用virtualbox

大數據測試hadoop單機環境搭建(超級詳細)

com jvm 末尾 內容 取數 搭建 cluster replicat specific 友情提示:本文超級長,請備好瓜子 Hadoop的運行模式 單機模式是Hadoop的默認模式,在該模式下無需任何守護進程,所有程序都在單個JVM上運行,該模式主要用於開發和調試map

redis單機偽分散式叢集搭建

    繼上一篇redis單機伺服器搭建成功之後,按如下方式進行叢集搭建。    搭建一個最小的叢集需要6臺機器(由節點投票機制決定至少需要3臺主節點,另外為了高可用每個主節點至少要備一個從節點,所以總共需要6個節點。這裡6個節點全部設在一臺機上,通過埠號來分別。實現偽分散式

RabbitMQ 3.6.1 升級至 3.7.9 版本(Windows 升級至Centos) centos安裝RabbitMQ 3.7.9 (使用RPM) Centos 7安裝RabbitMQ 3.7.8版本(單機)-不使用RPM

    隨著公司業務量的增加,原本部署在Windows伺服器的RabbitMQ叢集(3.6.1)總是出現莫名其妙的問題,經查詢官方Issue,確認是RabbitMQ 3.6.1 版本的bug。檢視從3.6.1 版本至 3.7.9 版本的變更日誌,可以發現RabbitMQ官方修復了不少bug

【Linux環境搭建】——Centos7下安裝配置單機RabbitMQ

前提準備好yum和wget環境說明系統 Centos7RabbitMQ版本 :rabbitmq-server-3.7.6-1.el7.noarch.rpm安裝Erlang因為RabbitMQ使用Erla