分布式搭建Minio对象存储
1、环境说明
所有运行分布式 MinIO 设置的节点都是同构的,即相同的操作系统、相同数量的磁盘和相同的网络互连。MinIO 的节点需要具有相同的访问密钥和秘密密钥才能连接,即access key 和 MINIO secret key 都要一样。
主机名 | ip地址 |
---|---|
minio3 | 10.0.0.130 |
minio4 | 10.0.0.131 |
除系统盘外,每台服务器新添加两块5G的硬盘用来当做minio的存储
2、环境准备
下面的命令要在两节点上都进行操作
2.1 创建minio镜像存放的目录,数据和脚本存放的目录
mkdir -p /opt/minio/{run,data1,data2} && mkdir -p /etc/minio
2.2 挂载新的硬盘
1.格式化
mkfs.xfs /dev/sdb
mkfs.xfs /dev/sdc
2.挂载
mount /dev/sdb /opt/minio/data1
mount /dev/sdc /opt/minio/data2
2.3 上传压缩包
$ ll /opt/minio/run
total 97640
-rw-r--r-- 1 root root 99983360 Feb 20 21:58 minio
官网:MinIO | High Performance, Kubernetes Native Object Storage
wget https://dl.min.io/server/minio/release/linux-amd64/minio
3、创建启动脚本
vim /opt/minio/run/run.sh
#!/bin/bash
export MINIO_ROOT_USER=minioadmin
export MINIO_ROOT_PASSWORD=minioadmin
/opt/minio/run/minio server --config-dir /etc/minio \
--address "0.0.0.0:9029" --console-address ":9000" \
http://10.0.0.130:9029/opt/minio/data1 \
http://10.0.0.130:9029/opt/minio/data2 \
http://10.0.0.131:9029/opt/minio/data1 \
http://10.0.0.131:9029/opt/minio/data2 > minio_server.log
MINIO_ROOT_USER 管理员用户名
MINIO_ROOT_PASSWORD 管理员登录密码
config-dir 指定集群配置文件目录
–address 对外提供服务的端口
–console-address 访问web使用的端口
4、创建停止脚本文件夹
cat <<EOF > /opt/minio/run/stop.sh
#!/bin/bash
#MinIO停止脚本
ps -ef | grep minio | grep -v 'grep' | awk '{print $2}'| xargs kill -9
if $? != 0;then
echo "minio service stop failed."
exit 1
fi
EOF
if后面的不等于使用 ! =
5、创建Minio.server,使用systemctl来进行管理
cat <<EOF > /etc/systemd/system/minio.service
[Unit]
Description=Minio service
Documentation=https://docs.minio.io/
[Service]
WorkingDirectory=/opt/minio/run/
ExecStart=/opt/minio/run/run.sh
ExecStop=/opt/minio/run/stop.sh
Restart=on-failure
RestartSec=5
[Install]
WantedBy=multi-user.target
EOF
6、修改权限
chmod +x /etc/systemd/system/minio.service && chmod +x /opt/minio/run/minio && chmod +x /opt/minio/run/run.sh && chmod +x /opt/minio/run/stop.sh
7、启动集群
systemctl daemon-reload
systemctl start minio
systemctl enable minio
systemctl status minio.service
8、网址验证
访问http://任意一个ip:9000
9、minio的基本使用
9.1 创建bucket
9.2 配置bucket访问策略,改成公共读写
9.3 上传图片,验证分布式存储
9.4 创建Access Key访问密钥–>外部服务凭证密钥获取信息
这个秘钥只在创建的时候显示一次,一定要保存好,可以下载