IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> 使用DockerCompose部署RabbitMQ集群 -> 正文阅读

[系统运维]使用DockerCompose部署RabbitMQ集群

Tips: 本流程使用的操作系统是 Centos7, 采用 docker-compose的方式部署

一、步骤

  1. 准备三台机器, 分别修改主机名称为 node1, node2, node3
hostnamectl set-hostname node1
hostnamectl set-hostname node2
hostnamectl set-hostname node3
  1. 按照规划,修改/etc/hosts文件 (请根据实际情况,规划数据节点、内存节点、监控节点):
节点名称IP节点类型
node1178.108.224.8主节点
node2178.108.224.9内存节点
node3178.108.224.10内存节点
## vi /etc/hosts 文件, 增加下面内容

178.108.224.8 node1
178.108.224.9 node2
178.108.224.10 node3
  1. 准备好 rabbitmq.yaml文件(详见下面附件), 放在 /opt/rabbitmq 目录下
  1. 在3个节点,分别执行 rabbit_install.sh 文件. (详见下面附件)
  1. 在主节点执行下面命令
docker exec rabbitmq /bin/bash -c 'rabbitmqctl stop_app'
docker exec rabbitmq /bin/bash -c 'rabbitmqctl reset'
docker exec rabbitmq /bin/bash -c 'rabbitmqctl start_app'
docker exec rabbitmq /bin/bash -c 'rabbitmq-plugins enable rabbitmq_management'
  1. 在从节点执行下面命令
## 加入主节点
docker exec rabbitmq /bin/bash -c 'rabbitmqctl stop_app'
docker exec rabbitmq /bin/bash -c 'rabbitmqctl reset'
docker exec rabbitmq /bin/bash -c 'rabbitmqctl join_cluster --ram rabbit@node1'
docker exec rabbitmq /bin/bash -c 'rabbitmqctl start_app'
  1. 开启统计
## 进入容器,将 /etc/rabbitmq/conf.d//management_agent.disable_metrics_collector.conf 中的值改为 false
docker exec -it rabbitmq /bin/bash
echo 'management_agent.disable_metrics_collector = false' > /etc/rabbitmq/conf.d//management_agent.disable_metrics_collector.conf

## 然后重启容器
docker restart rabbitmq

最终效果如下:

在这里插入图片描述

附一、rabbit_install.sh 文件内容

## 安装docker
sudo yum install -y yum-utils device-mapper-persistent-data lvm2 
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo yum install -y https://download.docker.com/linux/centos/7/x86_64/stable/Packages/containerd.io-1.2.6-3.3.el7.x86_64.rpm
sudo yum install -y docker-ce docker-ce-cli containerd.io

## 通过pip安装 docker-compose
yum install -y python36
pip3 install --upgrade pip
pip3 install docker-compose -i https://pypi.mirrors.ustc.edu.cn/simple/ 

## 重启docker服务
systemctl restart docker

## 开放 4369 & 5672 &15672 & 25672 端口, 注意:如果是机器是在云平台上,记得要去修改安全组的下行规则
firewall-cmd --permanent --zone=public --add-port=4369/tcp
firewall-cmd --permanent --zone=public --add-port=5672/tcp
firewall-cmd --permanent --zone=public --add-port=15672/tcp
firewall-cmd --permanent --zone=public --add-port=25672/tcp
firewall-cmd --reload
systemctl restart firewalld.service


## 创建必要的目录 & 赋权限 -- 用于在 rabbitmq.yaml 文件中挂载
docker stop rabbitmq
docker rm rabbitmq
rm /var/lib/rabbitmq -rf
rm /var/log/rabbitmq -rf
mkdir /var/lib/rabbitmq
mkdir /var/log/rabbitmq
chmod 777 /var/lib/rabbitmq
chmod 777 /var/log/rabbitmq
echo 'rabbitmq_cluster_cookie' > /var/lib/rabbitmq/.erlang.cookie
chmod 600 /var/lib/rabbitmq/.erlang.cookie

## 拉取 rabbitmq镜像
docker pull rabbitmq:latest

## 启动rabbitmq
docker-compose -f /opt/rabbitmq/rabbitmq.yaml up -d

附二、rabbitmq.yaml 文件内容

version: '3.1'
services:
  rabbitmq:
    image: rabbitmq:latest       
    network_mode: "host" # 网络模式使用主机模式 
    container_name: rabbitmq
    privileged: true
    volumes:    
      - /var/lib/rabbitmq:/var/lib/rabbitmq   # 挂载数据   
      - /var/log/rabbitmq:/var/log/rabbitmq   # 挂载日志
      - /usr/share/zoneinfo/Asia/Shanghai:/etc/localtime
    environment:
      - RABBITMQ_DEFAULT_USER=smart
      - RABBITMQ_DEFAULT_PASS=123456
    restart: always
  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-03-12 18:00:11  更:2022-03-12 18:04:17 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/16 1:27:15-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码