docker搭建minio集群环境

1.简介

​ MinIO 是一个基于Apache License v2.0开源协议的对象存储服务。它兼容亚马逊S3云存储服务接口,非常适合于存储大容量非结构化的数据,例如图片、视频、日志文件、备份数据和容器/虚拟机镜像等,而一个对象文件可以是任意大小,从几kb到最大5T不等。

​ Minio使用纠删码erasure code来保护数据免受硬件故障和无声数据损坏。 即便丢失一半数量(N/2)的硬盘,仍然可以恢复数据。

2.基础环境

  1. centos 7
  2. Docker version 1.13.1
  3. docker-compose version 1.18.0

MinIO集群环境基于docker和docker-compose环境搭建。通过在一台机器中运行4个MinIO容器,来模拟4*2(每个容器2个data卷,表示每台MinIO服务有两个硬盘)个硬盘的集群环境,请提前安装好基础环境,以便后续操作。

3.安装步骤

3.1创建docker-compose文件

  1. 新建文件夹minio,在文件夹中新建文件docker-compose.yaml
  2. 在minio的github仓库中,复制官方的docker-compose.yaml文件的内容,并粘贴到新建的docker-compose.yaml文件中。
  3. yaml中定义有4个service,代表4个minio服务,每个服务下有两个存储卷,代表2个硬盘
#docker-compose.yaml
version: '3.7'

# starts 4 docker containers running minio server instances. Each
# minio server's web interface will be accessible on the host at port
# 9001 through 9004.
services:
  minio1:
    image: minio/minio:RELEASE.2020-08-08T04-50-06Z
    volumes:
      - data1-1:/data1
      - data1-2:/data2
    ports:
      - "9001:9000"
    environment:
      MINIO_ACCESS_KEY: minio
      MINIO_SECRET_KEY: minio123
    command: server http://minio{
   1...4}/data{
   1...2}
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:9000/minio/health/live"]
      interval: 30s
      timeout: 20s
      retries: 3

  minio2:
    image: minio/minio:RELEASE.2020-08-08T04-50-06Z
    volumes:
      - data2-1:/data1
      - data2-2:/data2
    ports:
      - "9002:9000"
    environment:
      MINIO_ACCESS_KEY: minio
      MINIO_SECRET_KEY: minio123
    command: server http://minio
好的,下面是使用docker搭建minio布式集群的详细步骤: 1. 安装DockerDocker Compose 您需要在您的机器上安装DockerDocker Compose。如果您还没有安装,请先安装2. 创建docker-compose.yml文件 在您的工作目录下创建一个名为docker-compose.yml的文件,并将以下内容复制到文件中。 ``` version: '3' services: minio1: image: minio/minio container_name: minio1 command: server http://minio{1...4}/data{1...4} ports: - "9001:9000" volumes: - ./data1:/data1 environment: MINIO_ACCESS_KEY: YOUR_ACCESS_KEY MINIO_SECRET_KEY: YOUR_SECRET_KEY restart: always minio2: image: minio/minio container_name: minio2 command: server http://minio{1...4}/data{1...4} ports: - "9002:9000" volumes: - ./data2:/data2 environment: MINIO_ACCESS_KEY: YOUR_ACCESS_KEY MINIO_SECRET_KEY: YOUR_SECRET_KEY restart: always minio3: image: minio/minio container_name: minio3 command: server http://minio{1...4}/data{1...4} ports: - "9003:9000" volumes: - ./data3:/data3 environment: MINIO_ACCESS_KEY: YOUR_ACCESS_KEY MINIO_SECRET_KEY: YOUR_SECRET_KEY restart: always minio4: image: minio/minio container_name: minio4 command: server http://minio{1...4}/data{1...4} ports: - "9004:9000" volumes: - ./data4:/data4 environment: MINIO_ACCESS_KEY: YOUR_ACCESS_KEY MINIO_SECRET_KEY: YOUR_SECRET_KEY restart: always ``` 3. 启动集群 在您的工作目录中运行以下Docker Compose命令,以启动Minio集群。 ``` docker-compose up -d ``` 这将在您的机器上启动四个Minio容器,每个容器都有一个自己的数据卷,并且它们都在同一网络中。 4. 访问Minio UI 您可以在浏览器中访问http://localhost:9001/,并使用您的访问密钥和秘密密钥登录Minio UI。您将看到一个名为“data1”的存储桶已经被创建。 5. 添加其他节点 如果您需要添加其他节点,请在docker-compose.yml文件中添加另一个服务,并使用相同的access key和secret key。您还需要在Minio UI中添加新的节点。 这些是使用Docker Compose搭建Minio布式集群的基本步骤。如果您需要更详细的指导,请查看Minio官方文档。
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值