Linux服务器文件服务搭建--minio部署

927 阅读2分钟

前言

因为springboot和分布式系统的普及,目前的大部分项目都会单独部署一台文件服务器,用来保存系统上传的文件资源,Minio是一款开源的对象存储服务,目前越来越流行,这篇文章先来学习一下单机的minio服务搭建。搭建方法参照了官方文档,感兴趣的小伙伴也可以在官网学习一下,官方地址:minio单机搭建官方文档

Minio部署

官方文档提供了三种安装方式,分别是rpm、DEB和二进制(Binary)三种,方式,这里我采用官方推荐的rpm方式

1. 安装包下载

输入如下命令,下载安装包

wget https://dl.min.io/server/minio/release/linux-amd64/archive/minio-20221029062133.0.0.x86_64.rpm -O minio.rpm

下载完成后如图:

image.png

2.安装minio

输入命令yum install minio.rpm安装minio.rpm包

image.png

3.修改minio配置文件

输入命令vim /etc/systemd/system/minio.service,内容如下:

[Unit]
Description=MinIO 
Documentation=https://docs.min.io
Wants=network-online.target 
After=network-online.target 
AssertFileIsExecutable=/usr/local/bin/minio  

[Service] 
WorkingDirectory=/usr/local

User=minio-user
Group=minio-user
ProtectProc=invisible 

EnvironmentFile=-/etc/default/minio 
ExecStartPre=/bin/bash -c "if [ -z \"${MINIO_VOLUMES}\" ]; then echo \"Variable MINIO_VOLUMES not set in /etc/default/minio\"; exit 1; fi" 
ExecStart=/usr/local/bin/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=1048576  

# Specifies the maximum number of threads this process can create 
TasksMax=infinity  

# Disable timeout logic and wait until process is stopped 
TimeoutStopSec=infinity 
SendSIGKILL=no

[Install]
WantedBy=multi-user.target

# Built for ${project.name}-${project.version} (${project.name}) 

4.创建用户和组

minio.service 文件默认为 minio-user 用户和组运行。您可以使用 groupadd 和 useradd 命令创建用户和组,也可以自己定义用户和组,命令如下:

groupadd -r minio-user
useradd -M -r -g minio-user minio-user 

5.编辑环境变量文件

在根目录("/")下,创建、/data/file目录mkdir /data/file,然后使用chown minio-user:minio-user /data/file,修改file目录的权限,如图:

image.png
输入vim /etc/default/minio,创建minio环境变量,内容如下:

# Volume to be used for MinIO server.
MINIO_VOLUMES="/data/file" 
# Use if you want to run MinIO on a custom port.
MINIO_OPTS="--address :9199 --console-address :9001" 
# Root user for the server.
MINIO_ROOT_USER=Root-User 
# Root secret for the server.
MINIO_ROOT_PASSWORD=Root-Password  
# set this for MinIO to reload entries with 'mc admin service restart' MINIO_CONFIG_ENV_FILE=/etc/default/minio

6.启动minio服务

输入命令systemctl start minio.service,输入如下命令查询minio运行状态

systemctl status minio.service
journalctl -f -u minio.service

启动成功如图所示

image.png

6.访问minio控制台

第5步创建环境变量文件时,我们指定了两个端口,一个9199作为minio的服务端口,一个9001作为控制台的访问端口,使用如下命令,放开防火墙对这两个端口的访问限制。

firewall-cmd --zone=public --add-port=9199/tcp --permanent
firewall-cmd --zone=public --add-port=9001/tcp --permanent
firewall-cmd --reload

端口开放成功之后,浏览器中访问服务器的9001端口,如图:

image.png
输入账号密码,账号和密码为minio环境变量文件中的Root-User/Root-Password,点击登陆便可进入后台;

image.png
到这,minio单机版就部署完成了~