一、Minio概述
MinIO是一个开源的分布式对象存储服务器,它兼容Amazon S3服务接口。它是一个轻量级、高性能、高可用性的存储解决方案,可用于存储和检索大规模数据对象。
二、Minio的下载与安装
1.rpm方式部署
sudo rpm -i minio_package.rpm
配置MinIO:打开MinIO配置文件(通常在/etc/minio目录下),根据您的需求进行配置,包括监听地址、认证信息、存储路径等。
sudo systemctl start minio
2.二进制文件方式安装部署
wget https://dl.min.io/server/minio/release/linux-amd64/minio
chmod +x minio
创建用户组和创建用户,创建minIO的配置文件
vi minio.conf
MINIO_VOLUMES="/home/minio/data"
MINIO_OPTS="-C /home/minio/etc --address 172.16.99.213:9099 --console-address 172.16.99.213:9098"
MINIO_ACCESS_KEY="root"
MINIO_SECRET_KEY="12345678"
注意:MINIO_ACCESS_KEY长度大于等于3。
MINIO_SECRET_KEY长度大于等于8。
创建一个minio.service服务,启动
vim /etc/systemd/system/minio.service
[Unit]
Description=MinIO
Documentation=https://docs.min.io
Wants=network-online.target
After=network-online.target
AssertFileIsExecutable=/home/minio/minio
[Service]
User=minio
Group=minio
WorkingDirectory=/home/minio/data
EnvironmentFile=/home/minio/etc/minio.conf
ExecStartPre=/bin/bash -c "[ -n \"${MINIO_VOLUMES}\" ] || echo \"Variable MINIO_VOLUMES not set in /home/minio/etc/minio.conf\""
ExecStart=/home/minio/minio server $MINIO_OPTS $MINIO_VOLUMES
Restart=always
StandardOutput=journal
StandardError=inherit
LimitNOFILE=65536
TimeoutStopSec=0
KillSignal=SIGTERM
SendSIGKILL=no
SuccessExitStatus=0
[Install]
WantedBy=multi-user.target
启动服务
systemctl daemon-reload
systemctl enable minio.service
systemctl disable minio.service
systemctl start minio.service
systemctl status minio.service
systemctl stop minio.service
3.安装 MinIO 客户端
wget https://dl.min.io/client/mc/release/linux-amd64/mc -O /usr/local/bin/mc
chmod +x /usr/local/bin/mc
mc alias set myminio http://localhost:9099 admin YourPassword
mc anonymous set public myminio/你的桶名称
三、Minio的多驱多节点安装
wget https://dl.min.io/server/minio/release/linux-amd64/minio
磁盘挂载
lsblk -f
创建分区
fdisk /dev/vdb
说明:开始分区后输入n,新增分区,然后选择p,分区类型为主分区。两次回车默认剩余全部空间,最后输入w写入分区并退出,若不保存退出输入q
格式化磁盘
mkfs -t xfs /dev/vdb1
挂载分区
mount /dev/vdb1 /minio
创建运行脚本
vim run.sh
内容如下
export MINIO_ROOT_USER=minio
export MINIO_ROOT_PASSWORD=xxx
export MINIO_ACCESS_KEY=minio
export MINIO_SECRET_KEY=xxx
nohup /usr/local//minio/minio server /minio/data{1…6} --console-address ":9001" --address ":9000" > /usr/local//minio/log/minio_server1.log 2>&1 &
nohup /usr/local//minio/minio server /minio/data{1…6} --console-address ":9003" --address ":9002" > /usr/local//minio/log/minio_server2.log 2>&1 &
nohup /usr/local//minio/minio server /minio/data{1…6} --console-address ":9005" --address ":9004" > /usr/local//minio/log/minio_server3.log 2>&1 &
说明
MINIO_ROOT_USER和MINIO_ROOT_PASSWORD是页面登录的账号密码
MINIO_ACCESS_KEY和MINIO_SECRET_KEY是项目连接minio需要的密钥
/minio/data{1…6}是存储数据的路径 ,需要挂载
–console-address ":9001"进入web页面的端口
address “:9004” 服务的端口
minio在多台服务器
export MINIO_ROOT_USER=minio
export MINIO_ROOT_PASSWORD=xxx
export MINIO_ACCESS_KEY=minio
export MINIO_SECRET_KEY=xxx
nohup /usr/local//minio/minio server /minio/data{1…6} --console-address ":9001" --address ":9000" > /usr/local//minio/log/minio_server1.log 2>&1 &
修改成
nohup /usr/local//minio/minio server 对应每一个minio的存储路径 --console-address ":9001" --address ":9000" > /usr/local//minio/log/minio_server1.log 2>&1 &
类似于
nohup /usr/local//minio/minio server http://192.168.1.200/minio1 http://192.168.1.200/minio2 http://192.168.1.200/minio3 http://192.168.1.200/minio4 http://192.168.1.141/minio1 http://192.168.1.141/minio2 http://192.168.1.141/minio3 http://192.168.1.141/minio4 --console-address ":9001" --address ":9000" > /usr/local//minio/log/minio_server1.log 2>&1 &