RabbitMQ安装与配置

1.1 操作系统选择与安装

1.1.1 环境信息

序号

IP地址

主机名

操作系统

备注

1

192.168.0.65

rabbitmq_2_65

Centos7.6 64位

磁盘节点

2

192.168.0.66

rabbitmq_2_66

Centos7.6 64位

内存节点

3

192.168.0.67

rabbitmq_2_67

Centos7.6 64位

内存节点

1.1.2 操作系统配置与安装

CPU:8C;

内存:64GB;

磁盘: 100GB

操作系统安装,略。

1.1.3 操作系统最优配置

1. 修改资源限制参数

vi /etc/security/limits.conf

* soft nproc 65535

* hard nproc 65535

* soft nofile 65535

* hard nofile 65535

* soft stack 65535

* hard stack 65535

#ulimit -a

echo "* - nproc 65535" > /etc/security/limits.d/90-nproc.conf

2. 关闭virbr0网卡工具

systemctl disable libvirtd

3. 关闭SELinux

vi /etc/selinux/config

将SELinux=enforcing改为 SELinux=disabled

4. 关闭防火墙

systemctl stop firewalld.service &&
systemctl disable firewalld.service

5. 安装NTP服务

yum install ntp –y

systemctl disable chronyd #禁用chrony,否则开机启动失败

配置 vi /etc/ntp.conf

echo " server 192.168.0.253" > /etc/ntp.conf

echo "restrict 192.168.0.253 nomodify notrap noquery" >> /etc/ntp.conf


systemctl enable ntpd && systemctl start ntpd

6. 安装NFS服务

yum install nfs-utils -y

systemctl enable nfs

1.1.4 操作系统安全配置

1. 启动core dump设置

core dump表示当程序异常终止或崩溃时,将进程此时的内存中的内容拷贝到磁盘文件中存储。

vi /etc/security/limits.conf,开启core dump。

找到【* soft core 0】行,将其修改为如下内容:

如设置成【* soft core 1048576】,即core dump文件大小是1G 。

2. history历史命令条数设置

减少root用户输入命令的历史记录长度,默认值为1000,

vi /etc/profile HISTSIZE= 的值不大于100。

3. 控制用户登录会话

设置登录超时控制用户登录会话时间。

vi /etc/profile 按以下要求编辑设置:

TMOUT=600

4. 口令策略

对口令策略进行安全设置,不允许存在简单密码,密码设置符合策略,如长度至少为8位,不存在空口令帐号。

修改vi /etc/login.defs,

PASS_MAX_DAYS 90 #密码最长使用天数90天

PASS_MIN_DAYS 1 #密码最短使用天数

PASS_WARN_AGE 28 #密码到期提前提醒天数

PASS_MIN_LEN 8 #密码最小长度为8。

5. 密码复杂度

对密码复杂度策略进行配置,密码应包含至少两种组合,增加密码重复使用限制。

vi /etc/pam.d/system-auth

password requisite pam_cracklib.so dcredit=-1 lcredit=-1 ucredit=-1 ocredit=-1 minlen=8

1.2 RabbitMQ普通集群配置

1.2.1 配置hosts文件

vi /etc/hosts //其他两台相同

192.168.0.65 rabbitmq-2-65

192.168.0.66 rabbitmq-2-66

192.168.0.67 rabbitmq-2-67

1.2.2 三个节点安装依赖包

yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel unixODBC-devel

1.2.3 源码安装三个节点安装erlang环境

#下载包:

cd /opt/

wget http://erlang.org/download/otp_src_23.2.tar.gz

#解压:

tar -zxvf otp_src_23.2.tar.gz
cd otp_src_23.2
./configure --prefix=/usr/local/erlang --without-javac

make && make install

#设置环境变量:

vi /etc/profile

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


1.2.4 三个节点配置安装RabbitMQ

#下载文件 :

cd /opt

wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.8.22/rabbitmq-server-generic-unix-3.8.22.tar.xz


#解压:

tar -xvf rabbitmq-server-generic-unix-3.8.22.tar

mv rabbitmq_server-3.8.22 /usr/local/

cd /usr/local

ln -s rabbitmq_server-3.8.22 rabbitmq

./rabbitmq-plugins enable rabbitmq_management

./rabbitmq-server &


#设置环境变量:

vi /etc/profile

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



测试访问:

http://192.168.0.65:15672


1.2.5 拷贝erlang.cookie

RabbitMQ的集群是依附于erlang的集群来工作的,所以必须先构建起erlang的集群景象。Erlang的集群中各节点是经由过程一个magic cookie来实现的,这个cookie存放在/var/lib/rabbitmq/.erlang.cookie中,文件是400的权限。所以必须保证各节点cookie一致,不然节点之间就无法通信。

[root@mq01 ~]# cat /var/lib/rabbitmq/.erlang.cookie

XAHPZVPYUQDWWJIOHUPQ


用scp的方式将01节点的.erlang.cookie的值复制到其他两个节点中。

#如果通过二进制安装在/root/.erlang.cookie,通过yum方式安装默认在以下路径

scp /var/lib/rabbitmq/.erlang.cookie root@192.168.0.66:/var/lib/rabbitmq/.erlang.cookie


scp /var/lib/rabbitmq/.erlang.cookie root@192.168.0.67:/var/lib/rabbitmq/.erlang.cookie



1.2.6 查看三个节点并添加管理服务,启动RabbitMQ

RabbitMQ提供了一个非常友好的图形化监控页面插件(rabbitmq_management),让我们可以一目了然看见Rabbit的状态或集群状态。

rabbitmq-plugins list //查看插件安装情况


rabbitmq-plugins enable rabbitmq_management //启用rabbitmq_management服务


rabbitmq-server start &


1.2.7 查看监听端口(插件监控的端口是15672)

netstat –ntap | grep 15672

1.2.8 将mq02、mq03作为内存节点加入mq01节点集群中

在mq02、mq03执行如下命令:

rabbitmqctl stop_app //停掉rabbit应用

rabbitmqctl join_cluster --ram rabbit@mq01 //加入到磁盘节点,--ram表示以内存方式

rabbitmqctl start_app //启动rabbit应用


1.2.9 查看集群状态

rabbitmqctl cluster_status


1.2.10 镜像队列配置

在主节点增加镜像队列配置

rabbitmqctl set_policy ha-all "^" '{"ha-mode":"all"}'

1.2.11 登录rabbitmq web管理控制台,创建新的队列

打开浏览器输入http://192.168.0.65:15672, 输入默认的Username:guest,输入默认的Password:guest ,默认不允许其他主机访问,需创建账号授权后登录。

#创建账号:

rabbitmqctl add_user 用户 密码

#设置用户角色

rabbitmqctl set_user_tags 用户 administrator

#设置用户权限

rabbitmqctl set_permissions –p "/" 用户  ".*" ".*" ".*"


访问http://192.168.0.65:15672,



登录后可以看到各节点状态



展开阅读全文

页面更新:2024-06-08

标签:队列   天数   节点   集群   口令   磁盘   操作系统   内存   密码   用户

1 2 3 4 5

上滑加载更多 ↓
推荐阅读:
友情链接:
更多:

本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828  

© CopyRight 2020-2024 All Rights Reserved. Powered By 71396.com 闽ICP备11008920号-4
闽公网安备35020302034903号

Top