ansible+docker+docker-compose快速部署4节点高可用minio集群

目录

github项目地址

示例服务器列表

安装前

修改变量文件group_vars/all.yml

修改ansible主机清单

修改setup.sh安装脚本

用法演示

安装后验证

github项目地址

https://github.com/sulibao/ansible_minio_cluster.git

示例服务器列表

安装前

修改变量文件group_vars/all.yml

bash 复制代码
docker_data_dir: /app/docker_data   #docker数据存储目录
minio_data: /app/minio_data    #minio数据存储目录
minio_port: 9000              #minio页面端口
minio_console_port: 9001      #minio-console端口
image_minio: "registry.cn-chengdu.aliyuncs.com/su03/minio:RELEASE.2024-05-28T17-19-04Z"
# minio镜像
minio_ak: "admin"    #minio-ak
minio_sk: "admin@2025"   #minio-sk

修改ansible主机清单

bash 复制代码
[minio01]  #以下分别填写用于部署minio的4个节点IP地址
192.168.2.190
[minio_others01]
192.168.2.191
[minio_others02]
192.168.2.192
[minio_others03]
192.168.2.193

修改setup.sh安装脚本

bash 复制代码
vim setup.sh
export ssh_pass="sulibao"     #此项应为服务器root用户密码

用法演示

bash 复制代码
bash setup.sh

安装后验证

  • 命令行验证
bash 复制代码
docker exec -it minio_data-minio-1 bash   #进入任意一个节点任意一个minio容器
bash-5.1# mc alias set mycluster http://test1:9000 admin admin@2025   #为任意一个节点设置别名
mc: Configuration written to `/tmp/.mc/config.json`. Please update your access credentials.
mc: Successfully created `/tmp/.mc/share`.
mc: Initialized share uploads `/tmp/.mc/share/uploads.json` file.
mc: Initialized share downloads `/tmp/.mc/share/downloads.json` file.
Added `mycluster` successfully. 
bash-5.1# mc admin info mycluster    #查看集群状态,以下为正常4副本online状态
●  test1:9000
   Uptime: 16 minutes 
   Version: 2024-05-28T17:19:04Z
   Network: 4/4 OK 
   Drives: 1/1 OK 
   Pool: 1

●  test2:9000
   Uptime: 20 minutes 
   Version: 2024-05-28T17:19:04Z
   Network: 4/4 OK 
   Drives: 1/1 OK 
   Pool: 1

●  test3:9000
   Uptime: 54 seconds 
   Version: 2024-05-28T17:19:04Z
   Network: 4/4 OK 
   Drives: 1/1 OK 
   Pool: 1

●  test4:9000
   Uptime: 20 minutes 
   Version: 2024-05-28T17:19:04Z
   Network: 4/4 OK 
   Drives: 1/1 OK 
   Pool: 1

┌──────┬───────────────────────┬─────────────────────┬──────────────┐
│ Pool │ Drives Usage          │ Erasure stripe size │ Erasure sets │
│ 1st  │ 0.5% (total: 200 GiB) │ 4                   │ 1            │
└──────┴───────────────────────┴─────────────────────┴──────────────┘

4 drives online, 0 drives offline, EC:2
  • 页面上传文件验证数据目录是否同步
bash 复制代码
[root@test1 app]# ll minio_data/test/
total 0
drwxr-xr-x 2 root root 21 Apr  7 22:41 制作tomcat镜像.md
[root@test2 app]# ll minio_data/test/
total 0
drwxr-xr-x 2 root root 21 Apr  7 22:41 制作tomcat镜像.md
[root@test3 app]# ll minio_data/test/
total 0
drwxr-xr-x 2 root root 21 Apr  7 22:41 制作tomcat镜像.md
[root@test4 app]# ll minio_data/test/
total 0
drwxr-xr-x 2 root root 21 Apr  7 22:41 制作tomcat镜像.md
相关推荐
张青贤43 分钟前
Docker 常用使用命令
运维·docker·容器
东风微鸣1 小时前
管理大规模监控技术栈的最佳实践
docker·云原生·kubernetes·可观察性
~卷心菜~2 小时前
【Docker基础-镜像】--查阅笔记2
docker·容器
it界的哈士奇2 小时前
docker部署scylladb
运维·docker·容器·scylladb
小蓝波2 小时前
Docker部署jenkins
java·docker·jenkins
oceanweave5 小时前
【kind管理脚本-1】便捷使用 kind 创建、删除、管理集群脚本
docker·kubernetes·kind
小费的部落7 小时前
记 etcd 无法在docker-compose.yml启动后无法映射数据库目录的问题
数据库·docker·etcd
两点王爷9 小时前
docker 运行自定义化的服务-后端
运维·docker·容器
弧襪10 小时前
K8S-证书过期更新
云原生·容器·kubernetes
东风微鸣13 小时前
Grafana将弃用AngularJS-我们该如何迁移
docker·云原生·kubernetes·可观察性