写点什么

大型分布式存储方案 MinIO 介绍,看完你就懂了!

作者:天使不哭
  • 2022 年 8 月 09 日
    江苏
  • 本文字数:2184 字

    阅读完需:约 7 分钟

1、MinIO 是什么?

官方解释:MinIO 是一个基于 Apache License v2.0 开源协议的对象存储服务。它兼容亚马逊 S3 云存储服务接口,非常适合于存储大容量非结构化的数据,例如图片、视频、日志文件、备份数据和容器/虚拟机镜像等,而一个对象文件可以是任意大小,从几 kb 到最大 5T 不等。


MinIO 是一个非常轻量的服务,可以很简单的和其他应用的结合,类似 NodeJS, Redis 或者 MySQL。

2、MinIO 有哪些优势?

2.1 开发文档全面

MinIO 作为一款基于 Golang 编程语言开发的一款高性能的分布式式存储方案的开源项目,有十分完善的官方文档。。


官网文档地址:https://docs.min.io/cn/

2.2 高性能

MinIO 号称是目前速度最快的对象存储服务器。在标准硬件上,对象存储的读/写速度最高可以高达 183 GB/s 和 171 GB/s。对象存储可以作为主存储层,用来处理 Spark、Presto、TensorFlow、H2O.ai 等各种复杂工作负载以及成为 Hadoop HDFS 的替代品。


MinIO 用作云原生应用程序的主要存储,和传统对象存储相比,云原生应用程序需要更高的吞吐量和更低的延迟。而这些都是 MinIO 能够达成的性能指标。


2.3 支持全面

目前 MinIO 支持市面主流的开发语言并且可以通过 SDK 快速集成快速集成使用。


2.4 AWS S3 标准兼容

亚马逊云的 S3 API(接口协议) 是在全球范围内达到共识的对象存储的协议,是全世界内大家都认可的标准。MinIO 在很早的时候就采用了 S3 兼容协议,并且 MinIO 是第一个支持 S3 Select 的产品. MinIO 对其兼容性的全面性感到自豪, 并且得到了 750 多个组织的认同, 包括 Microsoft Azure 使用 MinIO 的 S3 网关 - 这一指标超过其他同类产品的总和。


2.5 安装部署非常简单

MinIO 安装部署非常简单。MinIO 简单特性减少了出错的机会,节约了安装部署的时间,提供了可靠性,同时简单性又是性能的基础。Linux 环境下只需下载一个二进制文件然后执行,即可在几分钟内完成安装和配置 MinIO。配置选项和变体的数量保持在最低限度,这样让失败的配置概率降低到几乎接近于 0 的水平。MinIO 升级是通过一个简单命令完成的,这个命令可以无中断的完成 MinIO 的升级工作,并且不需要停机即可完成升级操作,大大降低总使用和运维成本。

2.6 开放全部源代码 + 企业级支持

MinIO 基于 Apache V2 license 100% 开放源代码 。这就意味着 MinIO 的用户能够自动的、无限制、自由免费使用和集成 MinIO、自由的创新和创造、 自由的去修改、自由的再次发行新的版本和软件. 确实, MinIO 强有力的支持和驱动了很多世界 500 强的企业。此外,其部署的多样性和专业性提供了其他软件无法比拟的优势。

2.7 容器化集成方便

MinIO 提供了与 k8s、etcd、docker 等主流容器化技术深度集成方案。

2.8 管理界面的支持

MinIO 服务安装后,可以直接通过浏览器登录系统,完成文件夹、文件的管理。非常方便使用。

3、MinIO 安装

3.1 Linux 下安装 MinIO

# 下载安装包wget https://dl.min.io/server/minio/release/linux-amd64/minio#运行命令chmod +x minio#启动 ./minio server /usr/software/minio/data# 后台进程启动nohup ./minio server /usr/software/minio/data  >  /usr/software/minio/minio.log 2>&1 &
复制代码

3.2 Widows 下安装 MinIO

1、直接安装启动


下载安装包


下载地址:https://dl.minio.io/server/minio/release/windows-amd64/minio.exe


管理员身份启用 cmd 窗口,然后定位到 minio.exe 文件夹执行如下命令:


.\minio.exe server D:\file\minio
复制代码


说明:D:\file\minio 为存储文件的目录


2、后台服务安装


  • 下载地址:https://github.com/winsw/winsw/releases

  • 将 WinSW.exe 复制到自己指定的目录,重命名为 minio-server.exe

  • 同目录下创建 minio-server.xml。特别注意,xml 和 exe 必须同名

  • 然后配置 minio-server.xml 文件,内容如下:


<service>    <id>minio-server</id>    <name>minio-server</name>    <description>minio文件存储服务/description>    <!-- 可设置环境变量 -->    <env name="HOME" value="%BASE%"/>    <executable>%BASE%\minio.exe</executable>    <arguments>server "%BASE%\data"</arguments>    <!-- <logmode>rotate</logmode> -->    <logpath>%BASE%\logs</logpath>    <log mode="roll-by-size-time">      <sizeThreshold>10240</sizeThreshold>      <pattern>yyyyMMdd</pattern>      <autoRollAtTime>00:00:00</autoRollAtTime>      <zipOlderThanNumDays>5</zipOlderThanNumDays>      <zipDateFormat>yyyyMMdd</zipDateFormat>    </log></service>
复制代码


  • 使用 cmd 命令 minio-server.exe install 安装服务

  • 安装完后,去服务中启动服务。启动成功就可以正常使用 minio 啦

  • 可以使用 minio-server.exe uninstall 来卸载服务


安装成功后,浏览器登录访问http://127.0.0.1:9000


如果浏览器出现如下界面,表示安装成功。然后使用默认登录名和密码 均为 minioadmin。为了安全考虑后期可再去修改。



注意:默认情况下,MinIO 使用端口 9000 来侦听传入的连接。如果你的平台默认阻止了该端口,则需要启用对该端口的访问。


以上是分享内容,感谢阅读,欢迎收藏、点赞、转发。您的支持是我最大的创作动力,有问题可以留言大家共同进步,后续为写一下如何集成到 Java、C#项目中去!


IT 技术分享社区


个人博客网站:https://programmerblog.xyz



文章推荐程序员效率:画流程图常用的工具程序员效率:整理常用的在线笔记软件远程办公:常用的远程协助软件,你都知道吗?51单片机程序下载、ISP及串口基础知识硬件:断路器、接触器、继电器基础知识

发布于: 刚刚阅读数: 3
用户头像

天使不哭

关注

热爱技术的程序员 2018.11.08 加入

热爱生活的程序员

评论

发布
暂无评论
大型分布式存储方案MinIO介绍,看完你就懂了!_存储_天使不哭_InfoQ写作社区