简介
- MinIO是在Apache License v2.0下发布的对象存储服务器。它与Amazon S3云存储服务兼容。它最适合存储非结构化数据,如照片,视频,日志文件,备份和容器/ VM映像。对象的大小可以从几KB到最大5TB。
- 服务端,可通过web访问
- 客户端
对象存储方法
- bucket管理
- cp 远程本地相互拷贝,或远程与远程,本地与本地操作
- mirror 设置远程bucket与本地目录一致
对象获取方法
- cp
- share 创建http下载链接,有效期最长7天
- mirror 可设置watch,保持远程与本地同步更新
- watch event,间接操作,接收event通知,自定义操作
分布式minio
- 部署方法
-
在集群所有服务器上执行相同命令:e.g.
export MINIO_ACCESS_KEY=<ACCESS_KEY>
export MINIO_SECRET_KEY=<SECRET_KEY>
minio server http://192.168.1.1{1...8}/export1NOTE: {1...n} shown have 3 dots! Using only 2 dots {1..4} will be interpreted by your shell and won't be passed to minio server, affecting the erasure coding order, which may impact performance and high availability. Always use {1...n} (3 dots!) to allow minio server to optimally erasure-code data
-
-
注意事项
- 运行分布式MinIO的所有节点都需要具有相同的访问密钥和密钥才能连接节点。为此,在执行MinIO服务器命令之前,必须在所有节点上将访问密钥和密钥作为环境变量MINIO_ACCESS_KEY和MINIO_SECRET_KEY导出。
- 运行分布式MinIO的所有节点都需要处于同构环境中,即相同的操作系统,相同数量的磁盘和相同的互连。
- 如果需要设置域,则应定义并导出MINIO_DOMAIN环境变量,域名,详见
- MinIO分布式模式需要新目录。如果需要,可以与其他应用程序共享驱动器。您可以使用minio独有的子目录来完成此操作。例如,如果已在/ export下挂载卷,则将/ export / data作为参数传递给MinIO服务器。
- 运行分布式MinIO实例的服务器应该相隔不到3秒。您可以使用NTP作为最佳实践,以确保跨服务器的一致时间。
- 截至目前,在Windows上运行Distributed MinIO是实验性的。请谨慎行事。
- 冗余措施
- 擦除码, Reed Solomon。驱动器掉线数据恢复,bit rot保护
- 分片。默认N/2 data , N/2 parity
- 一致性: read-after-write 强一致性。go同步库,全部节点加锁
限制
- 擦除码使用限制(集群)
Item | Specification |
---|---|
Maximum number of servers per cluster | 32 |
Maximum number of Federated clusters | Unlimited |
Minimum number of servers | 02 |
Maximum number of drives per server | Unlimited |
Read quorum | N/2 |
Write quorum | N/2+1 |
- 浏览器使用限制
Item | Specification |
---|---|
Web browser upload size limit | 5 TiB |
- S3 API限制
Item | Specification |
---|---|
Maximum number of buckets | no-limit |
Maximum number of objects per bucket | no-limit |
Maximum object size | 5 TiB |
Minimum object size | 0 B |
Maximum object size per PUT operation | 5 TiB |
Maximum number of parts per upload | 10,000 |
Part size | 5 MiB to 5 GiB. Last part can be 0 B to 5 GiB |
Maximum number of parts returned per list parts request | 1000 |
Maximum number of objects returned per list objects request | 1000 |
Maximum number of multipart uploads returned per list multipart uploads request | 1000 |
client admin 工具
- 命令
command | description |
---|---|
service | stop, restart or get status of MinIO server |
info | display MinIO server information |
user | manage users(权限管理) |
policy | manage canned policies |
config | manage configuration file |
heal | heal disks, buckets and objects on MinIO server |
top | provide top like statistics for MinIO |
读写性能测试 (100MB)
- 运行环境:本地, i5-7Y54, 三星ssd MZNTY256HDHP-000
- 上传
item | time |
---|---|
read | 0m1.549s |
user | 0m0.594s |
sys | 0m1.172s |
- 下载
item | time |
---|---|
read | 0m0.912s |
user | 0m0.109s |
sys | 0m0.406s |