MinIO对象存储在Windows中的部署方法
本文介绍在Windows电脑中,下载、部署对象存储系统MinIO的方法。
MinIO是一个高性能的对象存储系统,它兼容亚马逊AWS S3 API接口,专为存储大规模数据而设计;其使用开源协议,能够提供与Amazon S3云存储相同的API接口,使得用户可以方便地在本地部署类似S3的存储服务,或者构建私有云环境。
首先,我们需要下载MinIO。下载MinIO有浏览器与命令行2
种下载方式,如果在浏览器中下载,大家可以直接访问其官方下载网站(https://min.io/open-source/download?platform=windows)。如下图所示,选择对应系统版本,并下载Server版本的安装包。
上述下载将得到一个.exe
格式文件,如下图所示。
在任意路径创建一个文件夹,作为MinIO的安装路径,建议放在非系统盘的根目录下,并将文件夹命名为MinIO
;随后,在这个文件夹内再新建3
个文件夹,这3
个文件夹可以分别命名为bin
、data
与log
,分别存储二进制文件、数据与日志,如下图所示。当然,上述这4
个文件夹的名称大家可以随意指定,只要没有中文即可。
随后,将前述得到的.exe
格式文件剪切到bin
文件夹内,如下图所示。
当然,如果用命令行下载,直接在命令行执行以下代码即可;就是记得将最后引号里的路径,修改为你的下载路径。
PS> Invoke-WebRequest -Uri "https://dl.min.io/server/minio/release/windows-amd64/minio.exe" -OutFile "C:\minio.exe"
无论用哪一种方法下载,都将下载得到的.exe
格式文件剪切到上述bin
文件夹内即可。
随后,在bin
文件夹空白处右键,打开终端,如下图所示。
分别在其中输入如下代码并执行。这2
句代码是在Windows操作系统中设置环境变量的命令,分别用来配置MinIO服务的根用户和密码。其中,username
与password
(也就是具体的用户名和密码)大家可以自行设置。
setx MINIO_ROOT_USER username
setx MINIO_ROOT_PASSWORD password
执行上述代码,如下图所示。
随后,关掉当前终端,然后再在这个bin
文件夹内开启一个新的终端,并输入如下代码。
.\minio.exe server D:\MinIO\data --console-address "127.0.0.1:9000" --address "127.0.0.1:9005"
其中,这条命令是用来启动MinIO服务器的。.\minio.exe
指向MinIO可执行文件(也就是前面我们下载得到的minio.exe
文件)的路径;后面的server
用来告诉MinIO需要运行在“服务器”模式下,是启动MinIO服务所必需的命令;再靠后的D:\MinIO\data
是存储MinIO数据的目录,也就是前面我们创建的那个data
文件夹,大家需要修改为自己的路径。
随后,--console-address "127.0.0.1:9000"
用以指定MinIO控制台(即MinIO的Web用户界面)监听的IP地址和端口,也就是后面我们用浏览器打开MinIO时,需要输入的地址。--address "127.0.0.1:9005"
用以指定MinIO服务监听的对象存储API请求的IP地址和端口——例如假设后续我们需要在一个Spring Boot项目中使用MinIO,那就得在Spring Boot项目里配置MinIO信息时,填写这个地址和端口。
执行上述代码,如下图所示。
随后,点击上图中黄色框内的地址,即可在浏览器中打开MinIO;填写用户名和密码,也就是前面我们设定的那个用户名和密码,如下图所示。
这里需要额外提一句:如果在上述过程中,出现与证书(license)相关的问题,那么大概率是下载的时候下载错版本了(下载成MinIO的企业版了,这个相当于是个收费版本);所以一定要用本文开头给出的链接来下载。
随后,如果没问题,我们就会进入如下图所示的页面。如果需要创建Bucket,就点击下图中对应位置即可。
创建Bucket时,需要配置对应的属性;一般情况下,选择默认配置即可,如下图所示。
随后,我们就可以在MinIO页面左侧的“Buckets”中,看到我们创建的所有Bucket了,如下图所示。
对于部分应用场景,可能需要我们将Bucket的权限设置为“Public”,那么在下图所示位置设置即可。
此外,MinIO的文件存储方式和常规的文件存储还是有一定差距的。例如,我在我的MinIO中上传了几张图片,在下图左侧,可以看到其在MinIO的浏览器页面中,就是正常显示的.jpg
文件;但在MinIO真正的存储路径中,可以看到每1
张照片其实是1
个文件夹,如下图右侧所示。
而打开上述任意1
个文件夹,都可以看到其中是1
个.meta
文件,如下图所示。
不过对于这种文件组织结构,网上有人说是新版本MinIO的特性,也有人说是老版本的,具体到底是哪一个我也不太清楚了。
至此,大功告成。
欢迎关注:疯狂学习GIS