Minio分布式集群搭建部署

分布式 Minio 可以让你将多块硬盘或者多台服务器组成一个对象存储服务。由于硬盘分布在不同的节点上,分布式 Minio 避免了单点故障。Minio分布式模式可以帮助你搭建一个高可用的对象存储服务,你可以使用这些存储设备,而不用考虑其真实物理位置

Minio分布式集群搭建

1、首先我们准备4台服务器:

节点

目录

192.168.1.1

/opt/minio/data

192.168.1.2

/opt/minio/data

192.168.1.3

/opt/minio/data

192.168.1.4

/opt/minio/data

从官网获取Minio:

https://dl.min.io/server/minio/release/linux-amd64/minio

2、创建目录:

mkdir -p /opt/minio/{run,data1,data2}

3、上传Minio到/opt/minio/run

可通过xftp或者rz命令(不懂者自行百度)进行上传 

4、集群启动文件配置

# vim /opt/minio/run/run.sh

#!/bin/bash

export MINIO_ACCESS_KEY=admin

export MINIO_SECRET_KEY=adminbfd123

/opt/minio/run/minio server --config-dir /etc/minio \

--address :9029 \

http://192.168.1.1/opt/minio/data1 http://192.168.1.1/opt/minio/data2 \

http://192.168.1.2/opt/minio/data1 http://192.168.1.2/opt/minio/data2 \

http://192.168.1.3/opt/minio/data1 http://192.168.1.3/opt/minio/data2 \

http://192.168.1.4/opt/minio/data1 http://192.168.1.4/opt/minio/data2

Minio默认9000端口,在配置文件中加入–address “127.0.0.1:9029” 可更改端口

注意 :

MINIO_ACCESS_KEY:用户名,长度最小是5个字符

MINIO_SECRET_KEY:密码,密码不能设置过于简单,不然minio会启动失败,长度最小是8个字符

–config-dir:指定集群配置文件目录

5、创建Minio.server

# vim /usr/lib/systemd/system/minio.service

[Unit]

Description=Minio service

Documentation=https://docs.minio.io/

[Service]

WorkingDirectory=/home/data/minio/run

ExecStart=/home/data/minio/run/run.sh

Restart=on-failure

RestartSec=5

[Install]

WantedBy=multi-user.target

6、权限修改

# chmod +x /usr/lib/systemd/system/minio.service && chmod +x /opt/minio/run/minio && chmod +x /opt/minio/run/run.sh

7、启动集群

# systemctl daemon-reload

# systemctl start minio

# systemctl enable minio

查看集群状态

# systemctl status minio.service

注意:启动集群时一定要检查自己的防火墙是否是关闭状态,如果不是关闭状态,则会出错。

8、测试搭建是否成功

浏览器访问IP和对应端口号即可进行访问,可创建bucket进行测试,如果创建失败,则说明集群某一步搭建不成功。

Minio分布式集群搭建部署_第1张图片

使用 nginx 负载均衡

前面单独对每个节点进行访问显然不合理,通过使用 nginx 代理,进行负载均衡则很有必要。简单的配置如下:

upstream http_minio {

    server 192.168.222.10:9001;

    server 192.168.222.10:9002;

    server 192.168.222.10:9003;

    server 192.168.222.10:9004;

}

server{

    listen       8888;

    server_name  192.168.222.10;

    ignore_invalid_headers off;

    client_max_body_size 0;

    proxy_buffering off;

    location / {

        proxy_set_header   X-Real-IP $remote_addr;

        proxy_set_header   X-Forwarded-Host  $host:$server_port;

        proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;

        proxy_set_header   X-Forwarded-Proto  $http_x_forwarded_proto;

        proxy_set_header   Host $http_host;

        proxy_connect_timeout 300;

        proxy_http_version 1.1;

        chunked_transfer_encoding off;

        proxy_ignore_client_abort on;

        proxy_pass http://http_minio;

    }

}

挂载为本地目录

1. s3fs安装

在milvus所在机器上

# yum install -y epel-release

# yum install -y s3fs-fuse

2. 启动

s3fs -o passwd_file=/etc/s3fs/passwd-s3fs -o use_path_request_style \

-o url=http://172.18.17.16:59030 -o allow_other -o cipher_suites=AESGCM \

-o kernel_cache -o max_background=1000 -o max_stat_cache_size=100000 \

-o multipart_size=128 -o parallel_count=30 -o multireq_max=30 \

-o dbglevel=warn -o bucket=ssl /data/share/ssl

你可能感兴趣的:(java)