搭建集群 RabbitMQ SHELL脚本实战_03
原创
©著作权归作者所有:来自51CTO博客作者gblfy的原创作品,请联系作者获取转载授权,否则将追究法律责任
接上一篇:
(企业级) 搭建集群RabbitMQ 快速下载、安装、配置、部署_02
文章目录
一、shell脚本说明
1. 选择脚本的原因
- 集群部署重复执行命令频繁,执行命令非专业记不住,出错的概率大,风险高。
- 1.命令秩序执行一次
- 2.执行脚本非专业照样执行
- 3.出错概率小,风险小
注:执行脚本需要提供脚本的操作手册,请按照操作手册执行。
2. 脚本总览
脚本名称
| 说明
|
yum_install_tools_dep.sh
| 使用yum在线安装工具依赖脚本
|
wget_download_software
| 使用wget工具在线下载需要的软件包脚本
|
rpm_install_software
| 使用rpm方式安装下载的软件包脚本
|
config_rabbitmq_file.sh
| 安装完毕后,配置rabbitmq配置文件脚本
|
rabbitmq_guard_start.sh
| rabbitmq守护式启动脚本
|
rabbitmq__run_status.sh
| 查看rabbitmq运行状态脚本
|
start_rabbitmq_management.sh
| 启动rabbitmq管控台脚本
|
stop_rabbitmq_service.sh
| 关闭rabbitmq服务脚本
|
start_rabbitmq_service.sh
| 启动rabbitmq服务脚本2
|
join_cluster_node.sh
| 内存节点加入集群脚本
|
view_cluster_node_status.sh
| 查看rabbitmq集群节点运行状态脚本
|
二、脚本实战
2.1. 工具依赖包
#运行脚本
bash yum_install_tools_dep.sh
注如果不是root用户,请采用下面操作
#黑脚本赋予可执行权限
chmod u+x yum_install_tools_dep.sh
#运行脚本
./yum_install_tools_dep.sh
#脚本内容如下:
yum install build-essential openssl openssl-devel unixODBC unixODBC-devel make gcc gcc-c++ kernel-devel m4 ncurses-devel tk tc xz tcp_wrappers
2.2. wget 远程下载安装包
#运行脚本
bash wget_download_software.sh
注如果不是root用户,请采用下面操作
#黑脚本赋予可执行权限
chmod u+x wget_download_software.sh
#运行脚本
./wget_download_software.sh
#内容如下:
wget https://github.com/rabbitmq/erlang-rpm/releases/download/v22.2.6/erlang-22.2.6-1.el7.x86_64.rpm
wget http://repo.iotti.biz/CentOS/7/x86_64/socat-1.7.3.2-5.el7.lux.x86_64.rpm
wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.7.24/rabbitmq-server-3.7.24-1.el7.noarch.rpm
2.3. rpm安装软件
#运行脚本
bash rpm_install_software.sh
注如果不是root用户,请采用下面操作
#黑脚本赋予可执行权限
chmod u+x rpm_install_software.sh
#运行脚本
./rpm_install_software.sh
#内容如下:
rpm -ivh erlang-22.2.6-1.el7.x86_64.rpm
rpm -ivh socat-1.7.3.2-5.el7.lux.x86_64.rpm
rpm -ivh rabbitmq-server-3.7.24-1.el7.noarch.rpm
2.4. 编辑配置文件修改密码
#运行脚本
#格式 bash config_file.sh rabbitmq_server版本
bash config_file.sh rabbitmq_server-3.7.24
注如果不是root用户,请采用下面操作
#黑脚本赋予可执行权限
chmod u+x config_rabbitmq_file.sh
#运行脚本
#格式 ./config_file.sh rabbitmq_server版本
./config_rabbitmq_file.sh rabbitmq_server-3.7.24
#内容如下:
vim /usr/lib/rabbitmq/lib/$1/ebin/rabbit.app
将39行{loopback_users, [<<"guest">>]}
修改为{loopback_users, [guest]}
2.5. 启动RabbitMQ
#运行脚本
bash rabbitmq_guard_start.sh
注如果不是root用户,请采用下面操作
#黑脚本赋予可执行权限
chmod u+x rabbitmq_guard_start.sh
#运行脚本
#格式 ./config_file.sh rabbitmq_server版本
./rabbitmq_guard_start.sh
#内容如下:
rabbitmq-server start &
2.6. 查看RabbitMQ是否启动
#运行脚本
bash rabbitmq__run_status.sh
注如果不是root用户,请采用下面操作
#黑脚本赋予可执行权限
chmod u+x rabbitmq__run_status.sh
#运行脚本
./rabbitmq__run_status.sh
#内容如下:
lsof -i:5672
注:异常:-bash: lsof: 未找到命令
请执行yum install lsof
[root@ly-01 ~]# lsof -i:5672
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
beam.smp 8112 rabbitmq 78u IPv6 43624 0t0 TCP *:amqp (LISTEN)
[root@ly-01 ~]#
#rabbitmq只是安装成功了,但是没有图形化界面,需要安装rabbitmq管控台。
2.7. 启动RabbitMQ 管控台
#运行脚本
bash start_rabbitmq_management.sh
注如果不是root用户,请采用下面操作
#黑脚本赋予可执行权限
chmod u+x start_rabbitmq_management.sh
#运行脚本
./start_rabbitmq_management.sh
#添加内容如下:
rabbitmq-plugins enable rabbitmq_management
2.8. rabbitmq 服务关闭脚本
#运行脚本
bash stop_rabbitmq_service.sh
注如果不是root用户,请采用下面操作
#黑脚本赋予可执行权限
chmod u+x stop_rabbitmq_service.sh
#运行脚本
./stop_rabbitmq_service.sh
#添加内容如下:
rabbitmqctl stop_app
2.9. rabbitmq 服务启动脚本2
#运行脚本
bash start_rabbitmq_service.sh
注如果不是root用户,请采用下面操作
#黑脚本赋予可执行权限
chmod u+x start_rabbitmq_service.sh
#运行脚本
./start_rabbitmq_service.sh
#添加内容如下:
rabbitmqctl start_app
2.11. rabbitmq 内存节点加入集群节点
#运行脚本
#格式 bash join_cluster_node.sh 磁盘节点域名或者ip地址
#参考下面2个栗子,任选其一即可
bash join_cluster_node.sh ly-01
bash join_cluster_node.sh 192.168.43.242
注如果不是root用户,请采用下面操作
#黑脚本赋予可执行权限
chmod u+x join_cluster_node.sh
#运行脚本
#格式 ./join_cluster_node.sh 磁盘节点域名或者ip地址
#参考下面2个栗子,任选其一即可
./join_cluster_node.sh ly-01
./join_cluster_node.sh 192.168.43.242
#添加内容如下:
rabbitmqctl stop_app
rabbitmqctl join_cluster --ram rabbit@$1
rabbitmqctl start_app
2.12. 查看 rabbitmq 集群节点状态
#运行脚本
bash view_cluster_node_status.sh
注如果不是root用户,请采用下面操作
#黑脚本赋予可执行权限
chmod u+x view_cluster_node_status.sh
#运行脚本
./view_cluster_node_status.sh
#添加内容如下:
rabbitmqctl cluster_status
接下一篇:(企业级) RabbitMQ 普通集群配置_04