1.erlang 安裝
wgettar -zxf otp_src_r14b01.tar.gz
cd otp_src_r14b01
./configure
make
make install 注意在make install 時使用root許可權
2. xmlto (
rabbitmq 編譯安裝時需要使用)
wgetyum install -y docbook-style-xsl
tar -zxf xmlto-0.0.23.tar.gz
cd xmlto-0.0.23
如果 機器上
3.******json安裝(python 2.6以下安裝)
wgetmd5=
58d9b1d8fa17ea4ce205cea088607e02
tar -zxf ******json-2.1.3.tar.gz
cd ******json-2.1.3
cp ******json 到 python安裝目錄下 如: /usr/local/lib/python2.5
cp -r ../******json /usr/lib64/python2.4/
4. rabbitmq安裝
wgettar -zxf rabbitmq-server-2.3.1.tar.gz
cd rabbitmq-server-2.3.1
make
make
target_dir
=/u/longcheer/rabbitmq
sbin_dir
=/u/longcheer/rabbitmq/sbin
man_dir
=/u/longcheer/rabbitmq/man install 注意在make install 時使用root許可權
5. 配置
rabbitmq
cd rabbitmq/sbin
rabbitmq-server檔案中有三個引數修改為本使用者可見目錄
#eralng控制檔案
config_file= /etc/rabbitmq/rabbitmq
#日誌檔案
log_base= /u/rabbitmq/logs
#資料庫檔案
mnesia_base= /u/rabbitmq/db
groupadd -g 10001 rabbitmquseradd -u 10001 -g 10001 rabbitmq
chown -r long:long rabbitmq
mkdir -pv /u/rabbitmq/logs
mkdir -pv /u/rabbitmq/db
chown rabbitmq:rabbitmq /u/rabbitmq/logs
chown rabbitmq:rabbitmq /u/rabbitmq/db
6.啟動
rabbitmq
cd rabbitmq/sbin./rabbitmq-server start
或設定後台執行
nohup ./rabbitmq-server start > nohup.out&
成功啟動後會有日下提示
:
activating rabbitmq plugins ...0 plugins activated:
+---+ +---+
| | | |
| | | |
| | | |
| +---+ +-------+
| |
| rabbitmq +---+ |
| | | |
| v2.3.1 +---+ |
| |
+-------------------+
amqp 0-9-1 / 0-9 / 0-8
licensed under the mpl. see
broker running
rabbitmq集群環境的搭建
乙個rabbitmq集 群中可以共享 user,vhost,queue,exchange等,所有的資料和狀態都是必須在所有節點上覆制的,乙個例外是,那些當前只屬於建立它的節點的訊息佇列,儘管它們可見且可被所有節點讀取。rabbitmq節點可以動態的加入到集群中,乙個節點它可以加入到集群中,也可以從集群環集群會進行乙個基本的負載均衡。
集群中有兩種節點:
1 記憶體節點:只儲存狀態到記憶體(乙個例外的情況是:持久的queue的持久內容將被儲存到disk)
2 磁碟節點:儲存狀態到記憶體和磁碟。
記憶體節點雖然不寫入磁碟,但是它執行比磁碟節點要好。集群中,只需要乙個磁碟節點來儲存狀態 就足夠了
如果集群中只有記憶體節點,那麼不能停止它們,否則所有的狀態,訊息等都會丟失。
rabbitmq的集群是依賴於
erlang的集群來工作的,所以必須先構建起erlang的集群環境。erlang的集群中各節點是通過乙個magic cookie來實現的,這個cookie存放在$home/.erlang.cookie 中,檔案是400的許可權。所以必須保證各節點cookie保持一致,否則節點之間就無法通訊。
-r-------- 1 long long
21 aug 1 08:08 .erlang.cookie
1 將其中一台節點上的
.erlang.cookie值複製下來儲存到其他節點上。或者使用scp的方法也可,但是要注意檔案的許可權和屬主屬組。
$ cat .erlang.cookieiyznfnjiuwabjueliufe
將值儲存到其他節點上
: 先更改檔案許可權,給予其可寫許可權:
$chmod 700 .erlang.cookie$ echo -n " iyznfnjiuwabjueliufe"
>
$home/.erlang.cookie
$chmod 400 .erlang.cookie
ps:此步驟建議在
rabbitmq啟動之前完成。
2 確保節點之間主機名稱可以相互解析。
182.71.** lct-ind-db1
182.71.** lct-ind-db2
前期準備工作已經完成,下面就來開始
$cd /u/rabbitmq/sbin$./rabbitmq-server –detached //三個節點都啟動
$./rabbitmqctl status //檢視狀態
$./rabbitmqctl reset 在
在 在 $/u/rabbitmq/sbin/rabbitmqctl status, ,
, ,
]},
改變節點型別,以
重啟集群節點:
$./rabbitmqctl stop
//關閉某乙個節點
$./rabbitmqctl status //檢視集群節點狀態
$./rabbitmq-server –detached
ps:在任何時候必須有乙個
disk node在執行。
節點退出集群,以
$./rabbitmqctl reset //如果只剩最後乙個節點,退出集群時使用force_reset
如果在 rabbitmq單機版服務開啟的過程中,改動erlang.cookie,就會在服務重啟後出現各種各樣的問題,所以建議在rabbitmq的服務開啟之前要把erlang.cookie配置好。如果出現問題,解決方法就是將服務停掉後執行以下命令:
rm –f /var/lib/rabbitmq/mnesia/rabbit/*
如果在rabbitmq-server的配置檔案中更改了資料庫存放目錄,則執行以下命令:
rm –f /path/to/rabbitmq/db/rabbit/*
重啟服務即可!
安裝rabbitmq集群
一.安裝 erlang rabbitmq 在10.0.0.45 10.0.0.57 10.0.0.58三個節點上安裝,然後開啟 rabbitmq 監控外掛程式 以下在root使用者操作 1.etc hosts增加 10.0.0.45 node1 10.0.0.57 node2 10.0.0.58 n...
RabbitMQ集群安裝
一 準備兩台虛擬機器 1 設定一台的別名為a,vi etc hostname 2 設定另一台的別名為b vi etc hostname 3 修改每乙個虛擬機器的hosts vi etc hosts 加入 2 安裝erlang,root使用者使用rpm安裝 2 先安裝socat yum install...
rabbitmq 集群的安裝
1 首先在3.5 3.6 3.12三颱機器上面安裝erlang並且配置好環境變數。make target dir soft rabbitmq sbin dir soft rabbitmq sbin man dir soft rabbitmq man install 如果在安裝rabbitmq的時候,...