溫馨提示×

RabbitMQ集群在Debian上如何搭建

小樊
53
2025-05-26 21:04:27
欄目: 智能運維

在Debian上搭建RabbitMQ集群涉及多個步驟,包括安裝Erlang、配置RabbitMQ、設置集群以及啟用管理插件等。以下是一個詳細的步驟指南:

1. 安裝Erlang

首先,確保系統中已安裝Erlang,因為RabbitMQ是使用Erlang語言編寫的,它的運行需要依賴Erlang環境。

sudo apt-get update
sudo apt-get install -y erlang-nox

2. 安裝RabbitMQ

添加RabbitMQ官方倉庫的密鑰,然后更新系統源并安裝RabbitMQ。

curl -sLf "https://keys.openpgp.org/vks/v1/by-fingerprint/0A9AF2115F4687BD29803A206B73A36E6026DFCA" | sudo gpg --dearmor | sudo tee /usr/share/keyrings/com.rabbitmq.team.gpg >/dev/null

echo "deb [signed-by=/usr/share/keyrings/com.rabbitmq.team.gpg] http://ppa.launchpad.net/rabbitmq/rabbitmq-erlang/ubuntu focal main" | sudo tee /etc/apt/sources.list.d/rabbitmq.list
echo "deb [signed-by=/usr/share/keyrings/com.rabbitmq.team.gpg] http://ppa.launchpad.net/rabbitmq/rabbitmq-server/ubuntu focal main" | sudo tee -a /etc/apt/sources.list.d/rabbitmq.list

sudo apt-get update
sudo apt-get install -y rabbitmq-server

3. 配置RabbitMQ

3.1 配置Erlang Cookie

在每個RabbitMQ服務器上設置相同的Erlang Cookie,以確保節點可以相互通信。通常在 /var/lib/rabbitmq/.erlang.cookie 文件中設置。

sudo cp /var/lib/rabbitmq/.erlang.cookie /etc/ssl/private/
sudo chmod 400 /etc/ssl/private/.erlang.cookie
sudo chown root:rabbitmq /etc/ssl/private/.erlang.cookie

3.2 配置防火墻

確保只開放必要的端口,例如RabbitMQ的默認端口5672和管理插件的15672端口。

sudo ufw allow 5672/tcp
sudo ufw allow 15672/tcp
sudo ufw enable

4. 啟動RabbitMQ節點

在每個服務器上啟動RabbitMQ服務。

sudo systemctl start rabbitmq-server
sudo systemctl enable rabbitmq-server

5. 形成集群

使用 rabbitmqctl 命令行工具將節點加入集群。

# 在主節點上執行
sudo rabbitmqctl stop_app
sudo rabbitmqctl reset
sudo rabbitmqctl join_cluster rabbit@node1
sudo rabbitmqctl start_app

# 在其他節點上執行相同的命令,將node1替換為node2,node3等

6. 配置鏡像隊列

為了確保消息的高可用性,可以設置隊列鏡像。

sudo rabbitmqctl set_policy ha-all "^my_queue$" '{"ha-mode":"all","ha-sync-mode":"automatic"}'

7. 啟用管理插件(可選)

啟用RabbitMQ管理插件,提供一個基于Web的管理界面。

sudo rabbitmq-plugins enable rabbitmq_management

8. 訪問管理界面

默認情況下,管理界面可以通過 http://服務器IP地址:15672 訪問。使用默認的用戶名和密碼登錄,用戶名是 guest,密碼也是 guest。

請注意,在生產環境中,應該及時修改默認的用戶名和密碼以提高安全性。

以上步驟應該可以幫助你在Debian系統上成功搭建RabbitMQ集群。如果在安裝過程中遇到任何問題,可以參考RabbitMQ的官方文檔或尋求社區幫助。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女