当前位置: 代码网 > it编程>前端脚本>Golang > minio在Windows与centos的安装实践

minio在Windows与centos的安装实践

2024年08月06日 Golang 我要评论
在说minio之前说说什么是对象存储,我们可以看下阿里云OSS的解释。对象存储服务OSS(Object Storage Service)是一种海量、安全、低成本、高可靠的云存储服务,适合存放任意类型的文件。容量和处理能力弹性扩展,多种存储类型供选择,全面优化存储成本。官方解释:Minio 是个基于 Golang 编写的开源对象存储套件,基于Apache License v2.0开源协议,虽然轻量,却拥有着不错的性能。它兼容亚马逊S3云存储服务接口。

一、什么是minio

在说minio之前说说什么是对象存储,我们可以看下 阿里云oss 的解释。

官方解释:minio 是个基于 golang 编写的开源对象存储套件,基于apache license v2.0开源协议,虽然轻量,却拥有着不错的性能。它兼容亚马逊s3云存储服务接口。可以很简单的和其他应用结合使用,例如 nodejs、redis、mysql等。

minio号称是目前速度最快的对象存储服务器。在标准硬件上,对象存储的读/写速度最高可以高达183 gb/s和171 gb/s。对象存储可以作为主存储层,用来处理spark、presto、tensorflow、h2o.ai等各种复杂工作负载以及成为hadoop hdfs的替代品。 

二、minio特性

1. 云原生应用程序的存储
minio可以作为云原生应用程序的对象存储后端。它可以与kubernetes集成,多租户支持,作为存储卷使用,提供持久性存储和数据共享。

2. 大规模数据分析
minio可以用于存储和分析大规模的数据集。它可以与流行的大数据处理框架(如apache spark和apache hadoop)集成,提供高性能的数据访问和处理能力。

3. 备份和灾难恢复
minio可以用作备份和灾难恢复解决方案。它支持数据冗余和高可用性,可以在多个地理位置复制数据,以确保数据的安全性和可靠性。

4. 多媒体存储和分发
minio可以用于存储和分发多媒体内容,如图片、视频和音频文件。它可以与内容分发网络(cdn)集成,提供快速的内容传输和缓存功能。

5. iot数据存储和分析
minio可以用于存储和分析大规模的物联网(iot)数据。它可以处理来自传感器和设备的实时数据,并提供高性能的数据存储和查询功能。

6.高性能
作为一款高性能存储,在标准硬件条件下,其读写速率分别可以达到 55gb/s 和 35gb/s。并而 minio 支持一个对象文件可以是任意大小,从几kb到最大5t不等

7.可扩展
不同minio集群可以组成联邦,并形成一个全局的命名空间,并且支持跨越多个数据中心。

8.可对接多种后端存储:
除了minio自己的文件系统,还支持 das、 jbods、nas、google云存储和 azure blob存储。

三、术语解释

1、s3
simple storage service,简单存储服务,这个概念是amazon在2006年推出的,对象存储就是从那个时候诞生的。s3提供了一个简单web服务接口,可用于随时在web上的任何位置存储和检索任何数量的数据。

2、object
存储到 minio 的基本对象,如文件、字节流,anything...

3、bucket
用来存储 object 的逻辑空间。每个 bucket 之间的数据是相互隔离的。

4、drive
部署 minio 时设置的磁盘,minio 中所有的对象数据都会存储在 drive 里。

5、set
一组 drive 的集合,分布式部署根据集群规模自动划分一个或多个 set ,每个 set 中的 drive 分布在不同位置。一个对象存储在一个 set 上

四、windows下的安装

1、下载minio.exe

2、创建data和logs目录

在d盘下创建data和logs目录,分别用来存储数据和日志

3、启动

不指定日志输出目录启动

.\minio.exe server d:\minio\data --console-address ":9001" --address ":9000" 

 也可以指定日志输出目录启动

.\minio.exe server d:\minio\data --console-address ":9001" --address ":9000" > d:\minio\logs\minio.log

系统会在d:\minio\logs产生日志文件

minio.log的文件内容如下,指明了用户名为minioadmin和密码为minioadmin

4、登录

http://localhost:9001/

用户名为:minioadmin和密码为minioadmin

5、创建桶

 名称为zyf-bucket

6、上传文件

系统会产生如下文件

五、在centos下安装minio

1、创建minio文件夹,打开并下载minio
cd /usr/local
mkdir minio
cd minio
wget https://dl.min.io/server/minio/release/linux-amd64/minio

或者下载后直接拷贝到centos服务器上

2、为该文件添加可执行权限
chmod +x minio
3、创建minio存储文件目录data和日志目录logs
mkdir -p /usr/local/minio/data;
mkdir -p /usr/local/minio/logs;

4、启动

4.1、未指定访问端口号启动,启动后用户名和密码默认都为:minioadmin

./minio server /usr/local/minio/data

4.2、或者 指定访问端口

./minio server --address :9000 --console-address :9001 /usr/local/minio/data

4.3、后台启动,并指定端口号和日志路径

nohup ./minio server --address :9000 --console-address :9001 /usr/local/minio/data > /usr/local/minio/logs/minio.log 2>&1 &

查看日志

4.4、在4.3的基础上指定用户名和密码

minio_root_user=admin minio_root_password=12345678 nohup ./minio server --address :9000 --console-address :9001 /usr/local/minio/data > /usr/local/minio/logs/minio.log 2>&1 &

4.5、创建启动文件(用户名【必须>=3位】为zhangyanfen,密码【必须>=8】为 12345678)

在 /usr/local/minio/目录下,新建一个run.sh并编辑以下内容。注:用户名和密码自己设置

vim run.sh

内容如下:

#!/bin/bash
export minio_root_user=zhangyanfen
export minio_root_password=12345678
# nohup启动服务 指定文件存放路径 日志文件路径 
nohup ./minio server --address :9000 --console-address :9001 /usr/local/minio/data > /usr/local/minio/logs/minio.log 2>&1 &

为其赋予执行权限

chmod u+x run.sh

启动minio并查看日志

bash run.sh

# 查看日志

tail -200f /usr/local/minio/logs/minio.log

5、访问

http://localhost:9001 ,用户名:minioadmin  密码:minioadmin

6、创建桶,并上传文件文件

创建桶zyf-test,并上传文件2222.docx文件

参考文档:

https://zhuanlan.zhihu.com/p/259594073

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com