溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

CentOS7中如何安裝RabbitMQ

發布時間:2022-02-15 15:46:41 來源:億速云 閱讀:182 作者:iii 欄目:開發技術
# CentOS7中如何安裝RabbitMQ

## 前言

RabbitMQ是一個開源的消息代理和隊列服務器,用于在分布式系統中存儲轉發消息。它實現了高級消息隊列協議(AMQP),并支持多種消息傳遞模式。本文將詳細介紹在CentOS 7系統中安裝和配置RabbitMQ的完整過程,包括依賴安裝、Erlang環境配置、RabbitMQ服務管理以及基礎安全設置。

---

## 一、環境準備

### 1.1 系統要求
- CentOS 7.x 操作系統
- 最小化安裝建議2GB內存
- root或具有sudo權限的用戶

### 1.2 更新系統
在安裝前建議更新系統軟件包:
```bash
sudo yum update -y
sudo yum install epel-release -y

二、安裝Erlang環境

RabbitMQ基于Erlang編寫,需要先安裝Erlang運行時環境。

2.1 添加Erlang倉庫

# 導入倉庫密鑰
sudo rpm --import https://packages.erlang-solutions.com/ubuntu/erlang_solutions.asc

# 添加Erlang倉庫
cat <<EOF | sudo tee /etc/yum.repos.d/rabbitmq-erlang.repo
[rabbitmq-erlang]
name=rabbitmq-erlang
baseurl=https://packages.erlang-solutions.com/rpm/centos/7/\$basearch
gpgcheck=1
gpgkey=https://packages.erlang-solutions.com/rpm/erlang_solutions.asc
enabled=1
EOF

2.2 安裝Erlang

sudo yum install erlang -y

2.3 驗證安裝

erl -version

應顯示類似:Erlang (SMP,ASYNC_THREADS) (BEAM) emulator version 11.1.8


三、安裝RabbitMQ服務器

3.1 添加RabbitMQ倉庫

cat <<EOF | sudo tee /etc/yum.repos.d/rabbitmq.repo
[rabbitmq-server]
name=rabbitmq-server
baseurl=https://packagecloud.io/rabbitmq/rabbitmq-server/el/7/\$basearch
gpgcheck=1
gpgkey=https://packagecloud.io/rabbitmq/rabbitmq-server/gpgkey
repo_gpgcheck=1
enabled=1
EOF

3.2 安裝RabbitMQ

sudo yum install rabbitmq-server -y

3.3 啟動服務

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

3.4 檢查狀態

sudo systemctl status rabbitmq-server

正常應顯示active (running)


四、基礎配置

4.1 啟用管理插件

sudo rabbitmq-plugins enable rabbitmq_management

4.2 創建管理員用戶

sudo rabbitmqctl add_user admin your_password
sudo rabbitmqctl set_user_tags admin administrator
sudo rabbitmqctl set_permissions -p / admin ".*" ".*" ".*"

4.3 防火墻配置

sudo firewall-cmd --permanent --add-port={4369/tcp,5672/tcp,15672/tcp,25672/tcp}
sudo firewall-cmd --reload

五、訪問Web管理界面

通過瀏覽器訪問:

http://your_server_ip:15672

使用創建的管理員賬號登錄(admin/your_password)


六、高級配置

6.1 配置文件位置

主配置文件位于:

/etc/rabbitmq/rabbitmq.conf

6.2 修改默認端口示例

listeners.tcp.default = 5673
management.tcp.port = 15673

6.3 集群配置(簡要)

  1. 確保所有節點使用相同的Erlang cookie:
echo "MYRABBITMQCLUSTERCOOKIE" > /var/lib/rabbitmq/.erlang.cookie
  1. 加入集群:
rabbitmqctl stop_app
rabbitmqctl join_cluster rabbit@node1
rabbitmqctl start_app

七、常見問題解決

7.1 啟動失敗排查

journalctl -u rabbitmq-server -f

7.2 端口沖突處理

netstat -tulnp | grep 5672

7.3 重置節點狀態

rabbitmqctl stop_app
rabbitmqctl reset
rabbitmqctl start_app

八、安全加固建議

  1. 修改默認guest賬戶:
rabbitmqctl delete_user guest
  1. 啟用SSL加密:
listeners.ssl.default = 5671
ssl_options.cacertfile = /path/to/ca_certificate.pem
ssl_options.certfile   = /path/to/server_certificate.pem
ssl_options.keyfile    = /path/to/server_key.pem
  1. 定期備份配置:
rabbitmqctl export_definitions /backup/rabbitmq_definitions.json

九、性能調優

9.1 內存配置

/etc/rabbitmq/rabbitmq-env.conf中添加:

RABBITMQ_USE_LONGNAME=true
RABBITMQ_NODENAME=rabbit@hostname
RABBITMQ_SERVER_ERL_ARGS="+K true +A30 +P 1048576 -kernel inet_default_connect_options [{nodelay,true}]"

9.2 磁盤空間監控

rabbitmqctl set_disk_free_limit 1GB

9.3 連接數限制

vm_memory_high_watermark.relative = 0.6
max_connections = 1000

十、卸載RabbitMQ

  1. 停止服務:
sudo systemctl stop rabbitmq-server
  1. 移除軟件包:
sudo yum remove rabbitmq-server erlang
  1. 清理殘留文件:
sudo rm -rf /var/lib/rabbitmq/
sudo rm -rf /etc/rabbitmq/

結語

本文詳細介紹了在CentOS 7上安裝配置RabbitMQ的全過程。通過正確的安裝和配置,RabbitMQ可以成為您分布式系統中可靠的消息中間件。建議生產環境中結合監控工具如Prometheus和Grafana進行系統監控,并定期檢查官方安全公告更新補丁。

注意:所有配置修改后都需要重啟服務生效:

> sudo systemctl restart rabbitmq-server
> ```

如需更深入的集群配置和性能優化,建議參考官方文檔:
https://www.rabbitmq.com/documentation.html
向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

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