Minio 多节点配置

本文内容部分摘自https://www.cnblogs.com/luoyan01/p/9733837.html

minio分布式部署最少要求4个存储,我的环境是三台存储节点每台提供两块3.2T NVMe盘作为后端存储

export MINIO_ACCESS_KEY=admin
export MINIO_SECRET_KEY=admin123

./minio server \

http://192.168.3.1/mount1 \

http://192.168.3.1/mount11 \

http://192.168.3.2/mount2 \

http://192.168.3.2/mount22 \

http://192.168.3.3/mount3 \

http://192.168.3.3/mount33 

后台启动

nohup ./minio server http://192.168.3.192/export2 http://192.168.3.193/export3 http://192.168.3.194/export4 http://192.168.3.195/export5 > /opt/data/minio/minio.log 2>&1 &

做成服务

mc 命令添加bucket连接

#要添加一个或多个与Amazon S3兼容的主机,请按照以下说明操作。mc将所有配置信息存储在~/.mc/config.json文件中。

mc config host add <ALIAS> <YOUR-S3-ENDPOINT> <YOUR-ACCESS-KEY> <YOUR-SECRET-KEY> --api <API-SIGNATURE> --lookup <BUCKET-LOOKUP-TYPE>

<ALIAS>:别名,是云存储服务的简称,alias名称可以随意起
<YOUR-S3-ENDPOINT>:地址 minio服务的地址;本列是47.94.3.211:9000
<YOUR-ACCESS-KEY>:登陆AccessKey docker logs minio容器ID 可查看;
<YOUR-SECRET-KEY>:登陆SecretKey docker logs minio容器ID 可查看;
-- api <API-SIGNATURE>: 可选参数 默认情况下设置为S3v4;
--lookup <BUCKET-LOOKUP-TYPE>:可选参数,它用于指示服务器是否支持dns或路径样式url请求。它接受“dns”,“path”或“auto”作为有效值。
默认情况下,它设置为“auto“,SDK会自动确定要使用的URL查找类型。

本地使用的样例:

mc config host add  <alias>  http://172.20.0.3:9000 admin admin123456 [--api S3v4]

mc config host add  lemon01 http://172.20.0.1:9000 admin admin123456

mc config host add  lemon02 http://172.20.0.2:9000 admin admin123456 --api S3v4

mc config host add  lemon03 http://172.20.0.3:9000 admin admin123456 --api S3v2

#查看lemon01的文件,会发现里面的桶文件内容一致

mc ls lemon01

mc ls lemon02

mc ls lemon03

云存储示例:

1、Minio云存储

mc config host add minio http://47.94.3.211:9000 OUVC1I8KN22SHXVP02IX Uf5HvAsZYwHeXA02z2mdTtVcssZCYCMKJCQOLQAW

2、Amazon S3云存储

mc config host add s3 http://47.94.3.211:9000 OUVC1I8KN22SHXVP02IX Uf5HvAsZYwHeXA02z2mdTtVcssZCYCMKJCQOLQAW

3、Google云存储

mc config host add gcs http://47.94.3.211:9000 OUVC1I8KN22SHXVP02IX Uf5HvAsZYwHeXA02z2mdTtVcssZCYCMKJCQOLQAW --api S3v2


注意:Google云存储仅支持旧版签名版本2,因此您必须选择 - S3v2


测试:

我用的是Minio云存储

1、列出所有存储桶(bucket)

mc ls minio

#mc ls 后接<alias>别名

2、创建bucket01桶

mc mb minio/bucket01
#在连接别名minio下创建bucket01桶

3、复制对象”

mc cp xxx minio/bucket01

  

mc policy  set  download  lemon01/backup01 设置lemon01别名的backup01桶可下载属性

mc policy  set  upload lemon01/backup01  设置lemon01别名的backup01桶可上传属性

挂载

挂载通过s3fs-fuser,来进行挂载

两种方式都可以安装s3fs-fuse

  1. 二进制安装s3fs-fuse
    yum install automake fuse fuse-devel gcc-c++ git libcurl-devel libxml2-devel make openssl-devel
    
    git clone https://github.com/s3fs-fuse/s3fs-fuse.git
    
    cd s3fs-fuse
    
    ./autogen.sh
    
    ./configure
    
    make&&make install

  2. yum 安装s3fs-fuse
yum install -y s3fs-fuse

如果服务器无法联网需要搭建 yum 离线源

搭建yum离线安装源

如果离线环境的话,需要下载依赖包来搭建离线yum源

创建repo仓库文件目录

mkdir -p /test1

yumdownloader --resolve --destdir /test1  automake fuse fuse-devel gcc-c++ git libcurl-devel libxml2-devel make openssl-devel s3fs-fuse
#下载依赖包到 /test1

  tar -zcvf s3fs-fuse.tar.gz /test1

  #打个包上传到待装机器上

  rpm -ivh createrepo 

  createrepo /test1

  

配置本地yum源
vi /etc/yum.repos.d/s3fs-fuse.repo
[s3fs-fuse]
name=s3fs-fuse
baseurl=http://192.168.200.1/s3fs-fuse/
gpgcheck=0
enabled=1
  保存退出,然后执行:
  yum clean all
  yum makecache
  yum repolist enabled
 

s3fs安装完成后,我们可以挂载backup01(bucket)桶作为本地存储使用

echo "echo admin:admin123456"  >> /etc/passwd-s3fs
#
设置minio服务认证的用户名密码
s3fs -o passwd_file=/etc/passwd-s3fs -o use_path_request_style -o endpoint=us-east-1 -o url=http://172.20.0.1:9000 -o bucket=backup01 /test5
s3fs -o use_path_request_style -o endpoint=us-east-1 -o url=http://172.20.0.1:9000 -o bucket=bucket01 /test5 

#省略passwd_file选项执行效果也是一样的
s3fs -o use_path_request_style -o endpoint=us-east-1 -o url=http://172.20.0.3:9000 -o bucket=bucket01 /storage
passwd_file
# minio服务用户名密码文件,如果设置过了可以省略passwd_file参数,默认会从/etc/passwd-s3fs读取用户名密码
url
# Minio节点的URL
bucket
# 桶名

猜你喜欢

转载自www.cnblogs.com/2689116388-com/p/12885277.html
今日推荐