由于公司很早就搭建了mq的環(huán)境,測(cè)試環(huán)境單節(jié)點(diǎn)單實(shí)例,最近頻繁出問(wèn)題,包括落盤文件過(guò)多導(dǎo)致磁盤爆滿等,所以決定將中間件服務(wù)器做成集群模式,為保證遷移后順暢使用,都是使用的跟之前一樣的老版本。
裕華網(wǎng)站建設(shè)公司成都創(chuàng)新互聯(lián)公司,裕華網(wǎng)站設(shè)計(jì)制作,有大型網(wǎng)站制作公司豐富經(jīng)驗(yàn)。已為裕華上千余家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\外貿(mào)網(wǎng)站制作要多少錢,請(qǐng)找那個(gè)售后服務(wù)好的裕華做網(wǎng)站的公司定做!
安裝erlang環(huán)境
tar -xvf otp_src_17.3.tar.gz
mkdir /usr/local/erlang
make && make install
ln -s /usr/local/erlang/bin/erl /usr/local/bin/erl
ERLANG_HOME=/usr/local/erlang
PATH=$ERLANG_HOME/bin:$PATH
export ERLANG_HOME
export PATH
安裝編譯環(huán)境
yum install perl
yum install ncurses-devel
yum -y install gcc gcc-c++
yum -y install xmlto
yum install nc zip unzip
安裝rabbitmq
tar -zxvf rabbitmq-server-3.1.5.tar.gz
make
make install TARGET_DIR=/server/rabbitmq SBIN_DIR=/server/rabbitmq/sbin MAN_DIR=/server/rabbitmq/man
mkdir /etc/rabbitmq
./rabbitmq-plugins enable rabbitmq_management
組成集群
同步三臺(tái)的.erlang.cookie,在/root下
分別啟動(dòng)三臺(tái) /server/rabbitmq/sbin/rabbitmq-server --detached
加入集群,hosts文件中的name要與主機(jī)名保持一致
rabbitmqctl stop_app
rabbitmqctl reset
rabbitmqctl join_cluster rabbit@public1
rabbitmqctl start_app
另外一臺(tái)同上,加入public1
查看狀態(tài)
rabbitmqctl cluster_status
至此集群搭建完成,沒(méi)有配置文件,一切按系統(tǒng)默認(rèn)的方式運(yùn)轉(zhuǎn),這里我需要修改落盤文件的存儲(chǔ)位置到一個(gè)大一點(diǎn)的硬盤,新增配置文件
vim /etc/rabbitmq/rabbitmq-env.conf
內(nèi)容:
RABBITMQ_MNESIA_BASE=/server/rabbitmq/data/mnesia
RABBITMQ_LOG_BASE=/server/rabbitmq/data/logs
將啟動(dòng)命令寫到/etc/rc.local后發(fā)現(xiàn)開機(jī)不能自啟,查看日志提示節(jié)點(diǎn)拒絕連接,分析啟動(dòng)命令后發(fā)現(xiàn)開機(jī)自啟--/home后邊沒(méi)有指定cookie文件的位置,但手動(dòng)執(zhí)行會(huì)自動(dòng)指定,不知道是什么原因,需探究一下Linux開機(jī)自啟的原理,暫時(shí)忽略掉這個(gè)問(wèn)題,修改rc.local為
su - root -c "source /etc/profile && /server/rabbitmq/sbin/rabbitmq-server --detached &"
至此徹底完成