暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

MinIO常用命令

老柴杂货铺 2021-05-06
6433

分布式 Minio 可以让你将多块硬盘(甚至在不同的机器上)组成一个对象存储服务。由于硬盘分布在不同的节点上,分布式 Minio 避免了单点故障。

Minio 分布式模式可以搭建一个高可用的对象存储服务,你可以使用这些存储设备,而不用考虑其真实物理位置。



启动一个分布式 Minio 实例,你只需要把硬盘位置做为参数传给 minio server 命令即可,然后,你需要在所有其它节点运行同样的命令。

注意

分布式 Minio 里所有的节点需要有同样的 access 秘钥和 secret 秘钥,这样这些节点才能建立联接。为了实现这个,你需要在执行 minio server 命令之前,先将 access 秘钥和 secret 秘钥 export 成环境变量。

分布式 Minio 使用的磁盘里必须是干净的,里面没有数据。

下面示例里的 IP 仅供示例参考,你需要改成你真实用到的 IP 和文件夹路径。

分布式 Minio 里的节点时间差不能超过 3 秒,你可以使用 NTP 来保证时间一致。

在 Windows 下运行分布式 Minio 处于实验阶段,不建议用于生产环境。


官网:https://min.io

GitHub:https://github.com/minio


源码安装minio

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

chmod +x minio  

mkdir export1


示例:

启动分布式Minio实例,4节点,每节点2块盘,需要在4个节点上都运行下面的命令。


export MINIO_ACCESS_KEY=<ACCESS_KEY>

export MINIO_SECRET_KEY=<SECRET_KEY>

minio server http://192.168.1.11/export1 http://192.168.1.11/export2 \

               http://192.168.1.12/export1 http://192.168.1.12/export2 \

               http://192.168.1.13/export1 http://192.168.1.13/export2 \

               http://192.168.1.14/export1 http://192.168.1.14/export2 



docker安装minio

docker pull minio/minio

docker run -p 9090:9000 --name minio \

  -v etc/localtime:/etc/localtime \

  -v data/minio/data:/data \

  -v data/minio/config:/root/.minio \ -d minio/minio server data 



MinIO客户端的使用

虽然MinIO的网页端管理已经很方便了,但是官网还是给我们提供了基于命令行的客户端MinIO Client(简称mc),下面我们来讲讲它的使用方法。


常用命令

下面我们先来熟悉下mc的命令,这些命令和Linux中的命令有很多相似之处。


命令 作用

ls 列出文件和文件夹

mb 创建一个存储桶或一个文件夹

cat 显示文件和对象内容

pipe 将一个STDIN重定向到一个对象或者文件或者STDOUT

share 生成用于共享的URL

cp 拷贝文件和对象

mirror 给存储桶和文件夹做镜像

find 基于参数查找文件

diff 对两个文件夹或者存储桶比较差异

rm 删除文件和对象

events 管理对象通知

watch 监听文件和对象的事件

policy 管理访问策略

session 为cp命令管理保存的会话

config 管理mc配置文件

update 检查软件更新

version 输出版本信息


安装及配置

由于MinIO服务端中并没有自带客户端,所以我们需要安装配置完客户端后才能使用,这里以Docker环境下的安装为例。


下载MinIO Client 的Docker镜像:

docker pull minio/mc

在Docker容器中运行mc:

docker run -it --entrypoint=/bin/sh minio/mc

运行完成后我们需要进行配置,将我们自己的MinIO服务配置到客户端上去,配置的格式如下:

mc config host add <ALIAS> <YOUR-S3-ENDPOINT> <YOUR-ACCESS-KEY> <YOUR-SECRET-KEY> <API-SIGNATURE>

对于我们的MinIO服务可以这样配置:

mc config host add minio http://localhost:9000 minioadmin minioadmin S3v4


常用操作

查看存储桶和查看存储桶中存在的文件:

# 查看存储桶

mc ls minio

# 查看存储桶中存在的文件

mc ls minio/blog

minio


创建一个名为test的存储桶:

mc mb minio/test

共享avatar.png文件的下载路径:

mc share download minio/blog/avatar.png

查找blog存储桶中的png文件:

mc find minio/blog --name "*.png"

设置test存储桶的访问权限为只读:

# 目前可以设置这四种权限:none, download, upload, public

mc policy set download minio/test/

# 查看存储桶当前权限

mc policy list minio/test/


文章转载自老柴杂货铺,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论