CentOS8安装最新版本Minio

4667560b6d20240227005033

前言

Minio可能在国内知道和用的人不是很多,我第一次接触Minio是也是当时我们需要使用Spinnaker集群来管理和维护内部的Kubernetes集群,而Spinnaker的中的持久化存储就使用的是Minio Spinnaker集群搭建

但其实,Minio这款开源的分布式对象存储服务在国外已经相当受欢迎,并且国内也有多中小型互联网公司使用它来作为对象存储服务。

有意思的是当年在开源的分布式存储方案中,比较有名的就是GlusterFSCeph。前者虽然也提供了块存储和对象存储的接口,但对于企业来说更多用于了分布式文件系统存储,其实就是一种高可用版本的NAS解决方案(通常用于替换NFS),而后者则针对多种存储场景设计了不同的产品,针对分布式文件系统存储有CephFS,针对分布式块存储有Ceph RBD,针对分布式对象存储有Ceph Radosgw,基本上可以做到开箱即用。

所以,在后来GlusterFS后来被收购后,据说创始团队又开源了一个分布式存储软件,就是这个用Golang编写的小而美的对象存储Minio.

Minio介绍

MinIO是一个用Golang开发的基于Apache License v2.0开源协议的对象存储服务
它兼容亚马逊S3云存储服务接口,非常适合于存储大容量非结构化的数据,例如图片、视频、日志文件、备份数据和容器/虚拟机镜像等,而一个对象文件可以是任意大小,从几kb到最大5T不等。
Minio使用纠删码erasure code和校验和checksum来保护数据免受硬件故障和数据损坏。
因此,即便您丢失一半数量(N/2)的硬盘,您仍然可以恢复数据。

1. 创建Minio目录

用于存放Minio可执行文件及配置文件

SHELL
mkdir /usr/local/minio

2. 下载Minio

SHELL
# 进入到/usr/local/minio
cd /usr/local/minio
# 执行下载
wget https://dl.min.io/server/minio/release/linux-amd64/minio
# 授权下载文件为可执行文件
chmod +x minio

3. 创建data存储目录

SHELL
# 新建目录
mkdir /home/minio/data
# 授权
chmod -R 777 /home/minio/data

4. 设置Minio自启服务

SHELL
# 添加minio-user用户
adduser minio-user
# 把/home/minio/data目录授权给minio-user用户及minio-user用户组
chown minio-user:minio-user /home/minio/data
# 在/usr/local/minio目录下创建配置文件minio.conf
vim /usr/local/minio/minio.conf

配置文件内容如下

SHELL
#数据存放目录
MINIO_VOLUMES="/home/minio/data"
#端口号设置,9000为web端口,9001为api端口
MINIO_OPTS="--console-address :9000 -address :9001"
#用户名
MINIO_ROOT_USER="admin"
#密码
MINIO_ROOT_PASSWORD="minio@admin"

创建开机自启配置文件minio.service

SHELL
# 创建服务文件
vim /etc/systemd/system/minio.service

配置文件内容如下

SHELL
[Unit]
Description=MinIO
Documentation=https://docs.min.io
Wants=network-online.target
After=network-online.target
#minio执行文件具体位置
AssertFileIsExecutable=/usr/local/minio/minio
[Service]
# User and group 用户组
User=minio-user
Group=minio-user
#创建的配置文件minio.conf
EnvironmentFile=/usr/local/minio/minio.conf
#启动命令
ExecStart=/usr/local/minio/minio server $MINIO_OPTS $MINIO_VOLUMES
# Let systemd restart this service always
Restart=always
# Specifies the maximum file descriptor number that can be opened by this process
LimitNOFILE=65536
# Disable timeout logic and wait until process is stopped
TimeoutStopSec=infinity
SendSIGKILL=no
[Install]
WantedBy=multi-user.target

5. 服务操作命令如下

SHELL
# 重新加载某个服务的配置文件
systemctl daemon-reload                   

# 启动minio服务
systemctl start minio.service

# 停止服务
systemctl stop minio.service           

# 重新启动服务
systemctl restart minio.service        

# 查看所有已启动的服务
systemctl list-units --type=service        

# 查看服务当前状态
systemctl status minio.service             

# 设置开机自启动
systemctl enable minio.service             

# 停止开机自启动
systemctl disable minio.service        

扩展操作

主要开放防火墙端口供外部访问,如果是内网访问无需此操作。

SHELL
# 查看防火墙开放的端口
firewall-cmd --list-ports
# 开发9000端口,供外部访问web
firewall-cmd --zone=public --add-port=9000/tcp --permanent
# 开放9001端口,供外部api调用
firewall-cmd --zone=public --add-port=9001/tcp --permanent

如果是阿里云服务器,还需要开放组策略,在浏览器输入http://ip:9000就可以访问minio的控制台了, 至此,CentOS8安装最新版本Minio结束。

推荐网站: 码支付 AO图床 AO短链 AO商店 AO云盘

------本页内容已结束,喜欢请分享------

感谢您的来访,获取更多精彩文章请Ctrl+D收藏本站。

CentOS8安装最新版本Minio-三六云
CentOS8安装最新版本Minio
此内容为免费阅读,请登录后查看
0
免费阅读
© 版权声明
THE END
喜欢就支持一下吧
点赞12 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容