当前位置: 首页 > news >正文

Linux下MinIO分布式安装部署

文章目录

  • 一、MinIO简单说明
  • 二、MinIO分布式安装部署
    • 1、关闭SELINUX
    • 2、开启防火墙
      • 2.1、关闭firewall:
      • 2.2、安装iptables防火墙
    • 3、安装MinIO
    • 4、添加MinIO集群控制脚本
      • 4.1添加启动脚本
      • 4.2添加关闭脚本
    • 5、MinIO控制台使用

一、MinIO简单说明

1、MinIO是一个轻量的对象存储服务,非常适合于存储大容量非结构化的数据,例如图片、视频、日志文件、备份数据和容器/虚拟机镜像等。
2、MinIO使用简单,功能强大,支持各种平台,单个文件最大5TB,兼容 Amazon S3接口,提供了 JavaPythonGO等多版本SDK支持。
3、MinIO集群采用去中心化共享架构,每个结点是对等关系,通过Nginx可对MinIO进行负载均衡访问。
4、MinIO采用去中心化设计,在大数据领域,通常的设计理念都是无中心和分布式。
5、Minio分布式模式可以搭建一个高可用的对象存储服务,你可以使用这些存储设备,而不用考虑其真实物理位置。
6、Minio分布式模式将分布在不同服务器上的多块硬盘组成一个对象存储服务,由于硬盘分布在不同的节点上,分布式Minio避免了单点故障。
7、MinIO分布式模式下根目录/不可以做为MinIO的数据目录,MinIO官方建议MinIO集群最少4个节点。

官方网站:https://min.io/
下载地址(二进制包安装):https://dl.min.io/server/minio/release/linux-amd64/minio
MinIO客户端mc(二进制包安装):https://dl.min.io/client/mc/release/linux-amd64/mc

二、MinIO分布式安装部署

在所有节点执行操作
操作系统:CentOS-7.x\8.x\‌AnolisOS‌\openEuler\Kylin-Server-V10等

1、关闭SELINUX

vi /etc/selinux/config
#SELINUX=enforcing #注释掉
#SELINUXTYPE=targeted #注释掉
SELINUX=disabled #增加
:wq! #保存退出
setenforce 0 #使配置立即生效

2、开启防火墙

  • 系统默认使用的是firewall作为防火墙,这里改为iptables防火墙。
  • MinIO默认API通信端口是9000,Console端口随机生成,生产环境建议修改。
  • API端口:6900
  • Console端口:6901

2.1、关闭firewall:

systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动
systemctl mask firewalld
systemctl stop firewalld
yum remove firewalld

2.2、安装iptables防火墙

yum install iptables-services #安装
vi /etc/sysconfig/iptables #编辑防火墙配置文件
# sample configuration for iptables service
# you can edit this manually or use system-config-firewall
# please do not ask us to add additional ports/services to this default configuration
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 6900 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 6901 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT
:wq! #保存退出
systemctl restart iptables.service #最后重启防火墙使配置生效
systemctl enable iptables.service #设置防火墙开机启动
/usr/libexec/iptables/iptables.init restart #重启防火墙

3、安装MinIO

#创建安装目录
mkdir -p /data/server/minio/{bin,data,config,log}
bin:二进制文件目录
data:数据存储目录
config:配置文件目录
log:日志文件路径
#下载二进制安装包到bin目录,或者提前下载好拷贝过来,建议MinIO服务端和客户端都安装
cd  /data/server/minio/bin
wget https://dl.min.io/server/minio/release/linux-amd64/minio
wget https://dl.min.io/client/mc/release/linux-amd64/mc
chmod +x minio  #添加执行权限
chmod +x mc #添加执行权限

4、添加MinIO集群控制脚本

在所有节点都添加

4.1添加启动脚本

vi  /data/server/minio/minio-cluster-start.sh
#!/bin/bash
export MINIO_ROOT_USER=admin
export MINIO_ROOT_PASSWORD=admin123
nohup  /data/server/minio/bin/minio server --config-dir /data/server/minio/config \
--console-address ":6901" --address ":6900" \
http://192.168.21.100/data/server/minio/data \
http://192.168.21.101/data/server/minio/data \
http://192.168.21.128/data/server/minio/data \
http://192.168.21.129/data/server/minio/data & \
:wq! #保存退出
#添加执行权限
chmod +x  /data/server/minio/minio-cluster-start.sh
#启动,在所有节点都执行
sh  /data/server/minio/minio-cluster-start.sh

4.2添加关闭脚本

vi  /data/server/minio/minio-stop.sh
#!/bin/bash
echo "Stopping minio"
pid=`ps -ef | grep 'minio server' | grep -v grep | awk '{print $2}'`
if [ -n "$pid" ]
thenkill -9 $pid
fi
echo "Stop Success!"
:wq! #保存退出
#添加执行权限
chmod +x  /data/server/minio/minio-stop.sh
#关闭MinIO
sh /data/server/minio/minio-stop.sh

5、MinIO控制台使用

打开http://192.168.21.100:6900/
在这里插入图片描述

至此,LinuxMinIO分布式安装部署完成。

http://www.lryc.cn/news/578845.html

相关文章:

  • REST API设计与Swagger:构建高效、易用的Web服务
  • 如何设置电脑定时休眠?操作指南详解
  • STM32 使用 TinyUSB
  • 【leetcode算法300】:哈希板块
  • 【RTSP从零实践】6、实现最简单的同时传输H264、AAC的RTSP服务器
  • SpringCloud系列(46)--SpringCloud Bus实现动态刷新全局广播
  • 免费版安全性缩水?ToDesk、TeamViewer、向日葵、网易UU远程访问隐私防护测评
  • 2025 年网络钓鱼威胁“狂飙”:如何筑牢防线?
  • 【记录】基于 C++ 和 Winsock 的简单 TCP 通信实现
  • 【Java面试】讲讲Redis的Cluster的分片机制
  • 企智汇研发项目管理系统:软件企业降本增效的数智化解决方案!
  • 蓝桥杯 滑行
  • 蓝桥杯51单片机设计
  • 深入理解装饰器模式:动态扩展对象功能的灵活设计模式
  • [特殊字符] Excel 提取+图片批量插入 | Python 自动化生成稽查报告 Word 模板
  • 基于Java+SpringBoot的图书管理系统
  • 多云密钥统一管理实战:CKMS对接阿里云/华为云密钥服务
  • 分布式定时任务:Elastic-Job-Lite
  • GC393低功耗双电压比较器:精准、高效的信号处理解决方案
  • Axure版ArcoDesign 组件库-免费版
  • OpenCV CUDA模块设备层-----高效地计算两个uint 类型值的平均值函数vavg2()
  • Centos系统及国产麒麟系统设置自己写的go服务的开机启动项完整教程
  • 开源 | V3.1.1慧知开源重卡运营充电桩平台 - 重卡运营充电桩平台管理解决方案;企业级完整代码 多租户、模拟器、多运营商、多小程序;
  • Chrome 下载文件时总是提示“已阻止不安全的下载”的解决方案
  • DQL-1-基础查询
  • 技术学习_大语言模型
  • 大数据平台与数据中台:从概念到落地的系统化实践指南
  • day045-nginx跳转功能补充与https
  • 安全风险监测预警平台对企业的价值
  • 【AI智能体】基于Coze 制作高质量PPT实战操作详解