发布于2022年11月4日3年前 CentOS7部署MinIO服务器&VPS使用MinIO Client备份数据 重要数据备份是很重要的,本博客也遇到了几次意外,但是都从备份中恢复了。以往都是定期手动备份站点目录和数据库,耗时又费力。在此探索一种新的方式,在一台存储空间较大的VPS(俗称大盘机)上部署MinIO服务端,客户机通过MinIO Client将文件备份到大盘机。 MinIO 是一个基于Apache License v2.0开源协议的对象存储服务。它兼容亚马逊S3云存储服务接口,非常适合于存储大容量非结构化的数据,例如图片、视频、日志文件、备份数据和容器/虚拟机镜像等,而一个对象文件可以是任意大小,从几kb到最大5T不等。MinIO是一个非常轻量的服务,可以很简单的和其他应用的结合,类似 NodeJS, Redis 或者 MySQL。 服务端部署 根据MinIO官方文档描述,MinIO服务端部署非常简单,几条命令即可完成安装,然后我们再创建一个systemd配置文件用于开机自启即可。 依次输入以下两行命令,下载二进制文件至/usr/local/bin,并赋予其可执行权限。 wget -P /usr/local/bin https://dl.min.io/server/minio/release/linux-amd64/minio chmod +x /usr/local/bin/minio 依次输入以下两行命令,创建MinIO工作目录,尝试手动运行服务。记录回显的Endpoint、AccessKey、SecretKey等信息,尝试在浏览器中输入Endpoint中的地址,输入AccessKey和SecretKey登陆。检查正常后按Ctrl + C停止MinIO。若不成功,请检查MinIO是否正常运行,并检查系统防火墙配置是否放行9000端口。 mkdir /srv/MinIO minio server /srv/MinIO CentOS7使用firewalld防火墙,使用以下第一条命令在防火墙规则中添加开放9000端口的TCP通信,另勿忘使用第二条命令重载防火墙。 firewall-cmd --zone=public --add-port=9000/tcp --permanent firewall-cmd --reload 运行以下命令,在/etc/systemd/system/目录下创建minio.service配置文件,并使用vi编辑器打开。tips:Alt+.可快速输入上一命令中的变量。 touch /etc/systemd/system/minio.service vi /etc/systemd/system/minio.service 在vi编辑器中输入以下内容,按ESC键,输入:wq,保存退出。 [Unit] Description=MinIO object storage server After=network.target [Service] Type=simple ExecStart=/usr/local/bin/minio server /srv/MinIO Restart=on-failure [Install] WantedBy=multi-user.target 6.运行以下命令,启动服务,并添加开机启动,此时通过浏览器应该能正常访问到网页即证明配置完成。 ``` systemctl start minio systemctl enable minio ``` 客户端配置 客户端的配置依然很简单。 使用wget下载文件到,并赋予其可执行权限。 wget -P /usr/local/bin/ https://dl.min.io/client/mc/release/linux-amd64/mc chmod +x /usr/local/bin/mc 使用以下命令添加上文部署好的MinIO对象存储服务器信息。其中,Alias是云存储服务的简称。API-SIGNATURE是可选参数。默认情况下,它设置为“S3v4”。 mc config host add <ALIAS> <YOUR-S3-ENDPOINT> <YOUR-ACCESS-KEY> <YOUR-SECRET-KEY> <API-SIGNATURE> 例如: mc config host add MinIO http://10.145.87.224:9000 Do24SZ3JDWEKDWPZ5DV2O KL7Hjas76BdI4msWYEZh3FH*Sh4B+gH&SvGc3z5Ub 在我们上面添加的MinIO下,创建一个名为blog的存储桶(bucket)。 mc mb MinIO/blog 运行以下命令将blog.lexsion目录下的文件同步到名为MinIO/blog的bucket里,并保持对目录修改的监听。此命令在本地修改/删除文件后会同步在bucket中修改/删除。测试正常后按Ctrl+C停止。 mc mirror -w --overwrite --remove /www/wwwroot/blog.lexsion MinIO/blog 创建systemd配置文件,使用以下命令打开vi编辑器。 vi /etc/systemd/system/minioc.service 在打开的编辑器中按i键进入编辑模式,输入如下内容,按ESC键,输入:wq按Enter键保存退出。 [Unit] Description=MinIO Client Service After=network.target [Service] Type=simple ExecStart=/usr/local/bin/mc mirror -w --overwrite --remove /www/wwwroot/blog.lexsion MinIO/blog Restart=on-failure [Install] WantedBy=multi-user.target 运行服务,并添加到开机自启动。 systemctl start minioc systemctl enable minioc 到此,本文就结束了。但是MinIO的功能远不止这些,大家有兴趣可以自行探索。 参考: MinIO中文Docs. https://docs.min.io/cn/ MinIO.Docs.English Ver. https://docs.min.io/docs/ Centos7(Firewall)防火墙开启常见端口命令 http://www.5yun.org/10074.html vim非完全学习手册 https://lexsion.com/index.php/archives/129/
创建帐户或登录后发表意见