1. 程式人生 > >(一)linux上面搭建rabbitmq伺服器

(一)linux上面搭建rabbitmq伺服器

一、因為工作需要,用於業務解耦,要用到訊息中介軟體,並且選擇了rabbitmq,使用它就需要在linux伺服器上面搭建rabbitmq伺服器,經過網上搜索與實踐,先是在自己的私人伺服器上面搭建成功並且成功訪問,後續在公司測試環境與正式環境上面搭建成功,在多次實踐的過程中總結出搭建過程,並且踩了一些坑,因為過程是試驗他人的搭建過程,就不歸為原創了。

二、下面就是在linux伺服器上面搭建rabbitmq伺服器的過程:

1.依賴環境的安裝-如果需要用編譯安裝erlang語言環境,需要安裝C++編譯。
yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel unixODBC unixODBC-devel httpd python-simplejson

2.erlang語言環境的安裝(rabbitMq是用erlang分散式語言開發的)
安裝檔案獲取
wget http://erlang.org/download/otp_src_19.2.tar.gz

解壓erlang安裝包
tar -xzvf otp_src_19.2.tar.gz

進入erlang目錄
cd otp_src_19.2

編譯安裝erlang語言環境 prefix=/usr/local/erlang 為安裝目錄
./configure  --prefix=/usr/local/erlang --enable-smp-support  --enable-threads  --enable-sctp --enable-kernel-poll --enable-hipe  
--with-ssl --without-javac

erlang語言編譯配置選項:
–prefix 指定安裝目錄 
–enable-smp-support啟用對稱多處理支援(Symmetric Multi-Processing對稱多處理結構的簡稱)

–enable-threads啟用非同步執行緒支援

–enable-sctp啟用流控制協議支援(Stream Control Transmission Protocol,流控制傳輸協議)

–enable-kernel-poll啟用Linux核心poll

–enable-hipe啟用高效能Erlang –with-ssl 啟用ssl包 –without-javac 
不用java編譯

開始安裝編譯:
make && make install 

配置erlang環境變數
vim /etc/profile

export PATH=$PATH:/usr/local/erlang/bin

source /etc/profil

測試erlang安裝是否成功
erl Erlang/OTP 17 [erts-6.2] [source] [smp:2:2] [async-threads:10] [kernel-poll:false]
Eshell V6.2  (abort with ^G)
會輸出 erlang安裝版本號

3.安裝RabbitMQ
1)下載rabbitmq-server-3.6.9.tar.xz
wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.9/rabbitmq-server-generic-unix-3.6.9.tar.xz   

2)對於下載xz包進行解壓,首先先下載xz壓縮工具:
yum install xz 

3)對rabbitmq包進行解壓:
xz -d xz -d rabbitmq-server-generic-unix-3.6.9.tar.xz  
tar -xvf rabbitmq-server-generic-unix-3.6.9.tar

4)隨後移動至/usr/local/下 改名rabbitmq:
cp -r rabbitmq_server-3.6.9 /usr/local/rabbitmq 

5)這種下載的方式解壓後直接可以使用,無需再編譯安裝;
進入到rabbit檔案內,其命令檔案存在於sbin資料夾下,因此需要將sbin資料夾的路徑新增到PATH中:修改/etc/profile  
export PATH=/usr/local/rabbitmq/sbin:$PATH     
執行source /etc/profile使得PATH路徑更新,rabbitMQ安裝成功。 

6)隨後啟用MQ管理方式:
rabbitmq-plugins enable rabbitmq_management   #啟動後臺管理  
rabbitmq-server -detached   #後臺執行rabbitmq 

7)設定埠號,可供外部訪問:
iptables -I INPUT -p tcp --dport 15672 -j ACCEPT 
(不成功的話 #cd /etc/sysconfig #vim iptablesl裡面加,然後#service iptables restart|阿里雲的安全組中也要新增該埠的開放)

8)新增管理員賬號 
rabbitmqctl add_user rabbitadmin 123456

[
[email protected]
rabbitmq]$ sudo rabbitmqctl add_user rabbitadmin 123456 Creating user "rabbitadmin" 9)分配使用者標籤 rabbitmqctl set_user_tags rabbitadmin administrator [[email protected] rabbitmq]$ sudo rabbitmqctl set_user_tags rabbitadmin administrator Setting tags for user "rabbitadmin" to [administrator] 10)建立和賦角色完成後檢視並確認 rabbitmqctl list_users [
[email protected]
rabbitmq]$ sudo rabbitmqctl list_users Listing users rabbitadmin [administrator] guest [administrator] 該命令使使用者rabbitadmin具有‘/’這個virtual host中所有資源的配置、寫、讀許可權以便管理其中的資源 rabbitmqctl set_permissions -p / rabbitadmin '.*' '.*' '.*' 11)登入rabbitmq管理介面 瀏覽器輸入地址:http://伺服器IP地址:15672/