目录

一、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云存储服务接口,非常适合于存储大容量非结构化的数据,例如图片、视频、日志文件、备份数据和容器/虚拟机镜像等,而一个对象文件可以是任意大小,从几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

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐