MinIO分布式文件存储
目录一、MinIO介绍1、MinIO是什么?2、MinIO的优势二、MinIO安装1、server端安装2、客户端安装三、MinIO界面上传文件及使用四、Go上传文件到MinIO一、MinIO介绍官网:MinIO Quickstart Guide| Minio中文文档1、MinIO是什么?MinIO 是一个基于Apache License v2.0开源协议的对象存储服务。它兼容亚马逊S3云存储服务
目录
一、MinIO介绍
官网:MinIO Quickstart Guide| Minio中文文档
1、MinIO是什么?
MinIO 是一个基于Apache License v2.0开源协议的对象存储服务。它兼容亚马逊S3云存储服务接口,非常适合于存储大容量非结构化的数据,例如图片、视频、日志文件、备份数据和容器/虚拟机镜像等,而一个对象文件可以是任意大小,从几kb到最大5T不等。
MinIO是一个非常轻量的服务,可以很简单的和其他应用的结合,类似 NodeJS, Redis 或者 MySQL。
2、MinIO的优势
常见的云存储例如:七牛云,阿里云等。缺点是要钱
私有的存储系统:fastdfs(安装部署超级蛋疼,要安装hadoop那一套,且没有界面...)、mongodb自带的GridFS(在使用上也有诸多不利),所以对照MinIO优点如下:
1)开发文档全面
MinIO作为一款基于Golang 编程语言开发的一款高性能的分布式式存储方案的开源项目,有十分完善的官方文档。
2)高性能
MinIO号称是目前速度最快的对象存储服务器。在标准硬件上,对象存储的读/写速度最高可以高达183 GB/s和171 GB/s。对象存储可以作为主存储层,用来处理Spark、Presto、TensorFlow、H2O.ai等各种复杂工作负载以及成为Hadoop HDFS的替代品。
MinIO用作云原生应用程序的主要存储,和传统对象存储相比,云原生应用程序需要更高的吞吐量和更低的延迟。而这些都是MinIO能够达成的性能指标。
3)SDK支持全面
目前MinIO支持市面主流的开发语言并且可以通过SDK快速集成快速集成使用。
4)安装部署简单
Linux环境下只需下载一个二进制文件然后执行,即可在几分钟内完成安装和配置MinIO。配置选项和变体的数量保持在最低限度,这样让失败的配置概率降低到几乎接近于0的水平。MinIO升级是通过一个简单命令完成的,这个命令可以无中断的完成MinIO的升级工作,并且不需要停机即可完成升级操作,大大降低总使用和运维成本。
5) 管理界面的支持
MinIO服务安装后,可以直接通过浏览器登录系统,完成文件夹、文件的管理。非常方便使用。
二、MinIO安装
1、server端安装
1)二进制安装
#下载安装包
wget https://dl.min.io/server/minio/release/linux-amd64/minio
#如果上述链接下载慢可以使用如下链接
#http://dl.minio.org.cn/server/minio/release/linux-amd64/minio
#赋权限
chmod +x /usr/local/minio
#启动minio,若data目录不存在要新建一个
./minio server /data
# 后台进程启动
nohup ./minio server /data > /usr/local/minio/minio.log 2>&1
注意:
- 启动显示的 appkey secretkey是默认登录账户,密码
- 二进制安装的配置文件 /data/.minio.sys/config
2)docker安装
docker pull minio/minio
docker run -p 9000:9000 \
-e MINIO_ACCESS_KEY=admin -e MINIO_SECRET_KEY=123123123 \
-v /data:/data \
minio/minio server /data
注意:
- docker安装的配置文件 /data/.minio.sys/config
- 没有则默认在
/var/lib/docker/vfs/dir/5d244e01a8e8144cd10cb1db0df559dfce6c3dd70a8ca376b1d5bc7138a62865/.minio.sys/config/ config.json
2、客户端安装
在MinIO Server安装完后默认提供浏览器去管理文件,虽然MinIO的网页端管理已经很方便了,可是官网仍是给咱们提供了基于命令行的客户端MinIO Client(简称mc)
注意:在安装客户端时,要将server端 minio服务关闭
1)二进制安装
GNU / Linux的 64位英特尔 https://dl.minio.io/client/mc/release/linux-amd64/mc
64位PPC https://dl.minio.io/client/mc/release/linux-ppc64le/mc
chmod +x mc
./mc –help
2)docker安装
docker pull minio/mc
docker run -it –entrypoint=/bin/sh minio/mc
客户端命令:
命令 | 做用 |
---|---|
ls | 列出文件和文件夹 |
mb | 建立一个存储桶或一个文件夹 |
cat | 显示文件和对象内容 |
pipe | 将一个STDIN重定向到一个对象或者文件或者STDOUT |
share | 生成用于共享的URL |
cp | 拷贝文件和对象 |
mirror | 给存储桶和文件夹作镜像 |
find | 基于参数查找文件 |
diff | 对两个文件夹或者存储桶比较差别 |
rm | 删除文件和对象 |
events | 管理对象通知 |
watch | 监听文件和对象的事件 |
policy | 管理访问策略 |
session | 为cp命令管理保存的会话 |
config | 管理mc配置文件 |
update | 检查软件更新 |
version | 输出版本信息 |
三、MinIO界面上传文件及使用
1)创建文件存储桶bucket
2)上传测试图片
3)获取取图片访问路径,可是这只是个临时的访问路径
4)要想获取一个永久的访问路径,须要修改存储桶的访问策略,咱们能够点击存储桶右上角的编辑策略按钮来修改访问策略;
这里有三种访问策略能够选择,一种只读、一种只写、一种可读可写,这里咱们选择只读便可,可是须要注意的是,访问前缀须要设置为*.*,不然会没法访问;
5)设置完成后,咱们只须要经过拷贝连接中的前一串路径便可永久访问该文件;
四、Go上传文件到MinIO
todo
更多推荐
所有评论(0)