Linux下安装RabbitMQ

Linux下安装配置启动RabbitMQ

Linux版本:Centos 7

RabbitMQ依赖erlang所以需要先安装erlang以及他需要的环境

1. 安装erlang

http://www.erlang.org/downloads 拿最新的版本
在这里插入图片描述
拼装命令 到/usr目录下执行(个人喜好)

  1. 下载安装包
wget  http://erlang.org/download/otp_src_21.2.tar.gz
  1. 解压安装包
tar -xvzf otp_src_21.2.tar.gz

改个名字

mv otp_src_21.2  otp_src
  1. 安装erlang需要的环境依赖
yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel unixODBC-devel
  1. 进入解压文件对erlang进行安装环境的配置
cd /usr/otp_src
./configure --prefix=/usr/erlang --without-javac 
  1. 编译安装
make
make install
  1. 验证erlang是否安装成功,并且配置环境变量
    验证
./bin/erl

在这里插入图片描述
配置全局变量

vim /etc/profile

在最后添加一行

export PATH=$PATH:/usr/otp_src/bin

:wq!保存并退出
应用刷新一下配置文件

source /etc/profile

安装RabittMQ

同理 https://www.rabbitmq.com/install-rpm.html
获取最新的 版本
(目前3.7的mq和21的erlang我暂时没有解决环境兼容问题,但可以用–nodeps 忽略掉强制走下去 ,所以我先使用3.6的)

  1. 下载安装包
wget https://www.rabbitmq.com/releases/rabbitmq-server/v3.6.8/rabbitmq-server-3.6.8-1.el7.noarch.rpm

跟着官网走
在这里插入图片描述

rpm --import https://www.rabbitmq.com/rabbitmq-release-signing-key.asc
yum install rabbitmq-server-3.6.8-1.el7.noarch.rpm

碰到选择 就输入y回车走下去

就安装成功了

以下是可能出现的问题
#########################
如果像我说的 提示因为如果安装的erlang与rabbitMQ要求的版本不符时,会提示16B什么的,缺少依赖,
这个可以忽略
–nodeps 如果该RPM包的安装依赖其它包,即使其它包没装,也强迫安装

rpm -i --nodeps rabbitmq-server-3.6.8-1.el7.noarch.rpm

##########################
提示缺少socat,则安装socat

yum install socat

如果安装socat也报错,先执行

yum makecache
yum install socat

###########################

配置MQ

1. rabbitmq.config配置

性能配置20-50%性能提升
在这里插入图片描述
rabbitmq.config需要放到/etc/rabbitmq目录下
rabbitmq.config配置文件的样本可以在/usr/share/doc/rabbitmq-server/ 或者 /usr/share/doc/rabbitmq-server-3.6.8/里找到rabbitmq.config.example的文件
所以我们只要复制过来 去掉example就好了

cp /usr/share/doc/rabbitmq-server-3.6.8/rabbitmq.config.example  /etc/rabbitmq

vim 打开
hipe_compile 属性改为true 取消注释 把后面逗号去掉
在这里插入图片描述
保存就ok了

2. rabbitmq-env.conf 设置

日志文件之类的
也是放到/etc/rabbitmq目录下
vim 直接打开

vim /etc/rabbitmq/rabbitmq-env.conf 

加两行

RABBITMQ_MNESIA_BASE=/usr/local/rabbitmq-server/data
RABBITMQ_LOG_BASE=/usr/local/rabbitmq-server/log

给个权限 没有文件夹得话创建一下

chmod -R 777 /usr/local/rabbitmq-server
这时候可以把服务启动一下

时间会有点久 等着 成功了就会跳出命令行

systemctl start rabbitmq-server.service

看看是否启动成功

rabbitmqctl status

在这里插入图片描述

3.设置开机自启

添加到启动项并设置开机自启

chkconfig rabbitmq-server on
systemctl enable rabbitmq-server.service
4.开启管理界面
rabbitmq-plugins enable rabbitmq_management 
5.设置账号

由于账号guest具有所有的操作权限,并且又是默认账号,出于安全因素的考虑,guest用户只能通过localhost登陆使用,并建议修改guest用户的密码以及新建其他账号管理使用rabbitmq。

  • 添加账号
rabbitmqctl add_user abc 123456
  • 设置用户角色
rabbitmqctl  set_user_tags  abc  administrator
  • 设置用户权限
rabbitmqctl set_permissions -p "/" abc ".*" ".*" ".*"

####################
以下是一些基本命令

  • 查看用户和角色 需要启动服务
rabbitmqctl list_users
  • 删除角色
rabbitmqctl  delete_user  Username

打开管理后台

访问 http://ip:15672/ 就可以看到管理后台了
用刚添加的账号登录进去
在这里插入图片描述
还能在界面上添加用户
在这里插入图片描述

需要注意的是 15672,5672端口防火墙之类的问题需要开启一下
### 安装 RabbitMQ 的步骤 #### 1. 安装 Erlang 依赖 RabbitMQ 是基于 Erlang 开发的,因此在安装 RabbitMQ 之前需要先安装 Erlang。 - **配置 Erlang 软件源** 在 CentOS 7 上,可以通过以下命令添加 Erlang 的软件源: ```bash curl -s https://packagecloud.io/install/repositories/rabbitmq/erlang/script.rpm.sh | sudo bash ``` - **更新本地缓存** 添加软件源后,更新本地软件包缓存: ```bash sudo yum makecache ``` - **安装 Erlang 包** 使用以下命令安装 Erlang: ```bash sudo yum install -y erlang ``` #### 2. 安装 RabbitMQ - **添加 RabbitMQ 软件源** 添加 RabbitMQ 的官方软件源: ```bash curl -s https://packagecloud.io/install/repositories/rabbitmq/rabbitmq-server/script.rpm.sh | sudo bash ``` - **安装 RabbitMQ** 使用以下命令安装 RabbitMQ: ```bash sudo yum install -y rabbitmq-server ``` - **生成本地服务** 安装完成后,RabbitMQ 会自动注册为系统服务。可以通过以下命令查看服务状态: ```bash sudo systemctl status rabbitmq-server ``` - **启动 RabbitMQ 服务** 使用以下命令启动 RabbitMQ 服务: ```bash sudo systemctl start rabbitmq-server ``` - **查看服务状态** 确认 RabbitMQ 服务是否正常运行: ```bash sudo systemctl status rabbitmq-server ``` #### 3. 配置 RabbitMQ - **开启防火墙** 如果系统启用了防火墙,需要开放 RabbitMQ 的端口(默认为 5672): ```bash sudo firewall-cmd --permanent --add-port=5672/tcp sudo firewall-cmd --reload ``` - **SELinux 配置** 如果启用了 SELinux,需要确保 RabbitMQ 的数据目录和日志目录有正确的权限: ```bash sudo chcon -R -t var_lib_t /var/lib/rabbitmq/ sudo chcon -R -t var_log_t /var/log/rabbitmq/ ``` - **给 RabbitMQ 指定目录** 如果需要更改 RabbitMQ 的数据存储目录,可以在 `/etc/rabbitmq/rabbitmq.conf` 文件中配置: ```bash sudo nano /etc/rabbitmq/rabbitmq.conf ``` 添加以下行以指定新的数据目录: ```conf data_dir = /new/path/to/rabbitmq/data ``` - **开启 Web 管理控制台插件** RabbitMQ 提供了一个 Web 管理插件,可以通过以下命令启用: ```bash sudo rabbitmq-plugins enable rabbitmq_management ``` - **创建 RabbitMQ 账号** 使用以下命令创建一个新的 RabbitMQ 用户并设置密码: ```bash sudo rabbitmqctl add_user admin password sudo rabbitmqctl set_user_tags admin administrator sudo rabbitmqctl set_permissions -p / admin ".*" ".*" ".*" ``` - **进入 Web 管理控制台** 安装完成后,可以通过浏览器访问 RabbitMQ 的 Web 管理界面: ``` http://<your-server-ip>:15672/ ``` 使用之前创建的用户名和密码登录。 #### 4. 配置持久化 为了确保 RabbitMQ 的消息在重启后不会丢失,需要进行持久化配置。 - **调整配置文件** 编辑 `/etc/rabbitmq/rabbitmq.conf` 文件,添加以下持久化相关配置: ```conf disk_free_limit.absolute = 2GB queue_index_embed_msgs_below = 4096 msg_store_file_size_limit = 16777216 ``` - **应用配置** 保存配置文件后,重启 RabbitMQ 服务以应用新的配置: ```bash sudo systemctl restart rabbitmq-server ``` #### 5. 源代码详细实现和代码解读 如果需要从源代码编译 RabbitMQ,可以参考 RabbitMQ 的官方文档,获取详细的编译和安装步骤。 --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值