在CentOS上安装和配置RabbitMQ,可以按照以下步骤进行:
更新系统包
sudo yum update -y
安装Erlang RabbitMQ依赖于Erlang,因此首先需要安装Erlang。
sudo yum install -y erlang
添加RabbitMQ仓库 创建一个新的YUM仓库文件来安装RabbitMQ。
sudo tee /etc/yum.repos.d/rabbitmq.repo <<EOF
[rabbitmq-server] name=RabbitMQ Repository baseurl=https://packagecloud.io/rabbitmq/rabbitmq-server/el/7/$basearch repo_gpgcheck=1 enabled=1 gpgcheck=1 gpgkey=https://packagecloud.io/rabbitmq/rabbitmq-server/gpgkey EOF
4. **安装RabbitMQ服务器**
```bash
sudo yum install -y rabbitmq-server
启动并启用RabbitMQ服务
sudo systemctl start rabbitmq-server
sudo systemctl enable rabbitmq-server
验证安装 检查RabbitMQ服务状态:
sudo systemctl status rabbitmq-server
访问管理界面(默认端口15672):
打开浏览器,访问 http://<your_server_ip>:15672/,默认用户名和密码是 guest/guest。
启用管理插件 如果尚未启用管理插件,可以使用以下命令启用:
sudo rabbitmq-plugins enable rabbitmq_management
创建用户和设置权限 创建一个新用户并设置权限:
sudo rabbitmqctl add_user myuser mypassword
sudo rabbitmqctl set_permissions -p / myuser ".*" ".*" ".*"
sudo rabbitmqctl set_user_tags myuser administrator
配置虚拟主机 创建一个新的虚拟主机并设置权限:
sudo rabbitmqctl add_vhost myvhost
sudo rabbitmqctl set_permissions -p myvhost myuser ".*" ".*" ".*"
配置防火墙 如果防火墙启用,需要允许RabbitMQ的默认端口:
sudo firewall-cmd --permanent --zone=public --add-port=5672/tcp
sudo firewall-cmd --permanent --zone=public --add-port=15672/tcp
sudo firewall-cmd --reload
配置SSL/TLS(可选) 如果需要加密通信,可以配置SSL/TLS。首先生成SSL证书和密钥:
sudo mkdir /etc/rabbitmq/ssl
sudo openssl req -newkey rsa:2048 -new -nodes -x509 -days 3650 -keyout /etc/rabbitmq/ssl/rabbitmq.key -out /etc/rabbitmq/ssl/rabbitmq.crt
sudo chmod 600 /etc/rabbitmq/ssl/rabbitmq.key
然后编辑RabbitMQ配置文件 /etc/rabbitmq/rabbitmq.conf 添加以下内容:
listeners.ssl.default = 5671
ssl_options.cacertfile = /etc/rabbitmq/ssl/rabbitmq.crt
ssl_options.certfile = /etc/rabbitmq/ssl/rabbitmq.crt
ssl_options.keyfile = /etc/rabbitmq/ssl/rabbitmq.key
ssl_options.verify = verify_peer
ssl_options.fail_if_no_peer_cert = true
重启RabbitMQ服务以应用更改:
sudo systemctl restart rabbitmq-server
通过以上步骤,你可以在CentOS上成功安装和配置RabbitMQ。根据实际需求,你可以进一步调整配置以满足特定的业务需求。