登录
首页 >  文章 >  linux

手把手教学!在Linux上搭建MinIO超简单教程

时间:2025-06-20 15:45:17 439浏览 收藏

还在为Linux上安装MinIO发愁吗?本文将手把手教你如何在Linux系统上轻松安装MinIO,无论是单机版还是集群版,都有详细的教程。单机版安装包括环境准备、下载二进制文件、配置环境变量、创建Systemd服务等步骤,更有安全加固和客户端管理工具(mc)的配置方法。集群版安装则涵盖架构要求、组件配置、部署流程以及集群验证,助你快速搭建高可用的MinIO对象存储服务。告别繁琐的安装过程,快速上手MinIO,提升你的开发效率!

Linux系统中MinIO的安装教程

在Linux系统中安装MinIO可以分为单机版和集群版两种情况。以下是详细的安装教程:

单机版MinIO安装

  1. 环境准备
  • 创建专用存储目录:

    sudo mkdir -p /data/minio
    sudo chown -R $USER:$USER /data/minio  # 非root用户运行时需授权
    
  • 下载MinIO二进制文件:

    wget https://dl.min.io/server/minio/release/linux-amd64/minio
    chmod +x minio
    sudo mv minio /usr/local/bin/
    
  • 配置环境变量文件: 创建 /etc/default/minio 文件,写入以下内容:

    MINIO_ROOT_USER="admin"
    MINIO_ROOT_PASSWORD="YourPass@123"  # 管理密码(至少12字符)
    MINIO_VOLUMES="/data/minio"
    MINIO_OPTS="--address :9000 --console-address :9001"  # 端口设置
    
  1. 创建Systemd服务
  • 新建 /etc/systemd/system/minio.service 文件:
    [Unit]
    Description=MinIO Single Node Service
    After=network.target
    
    [Service]
    User=$USER  # 替换为实际运行用户(需有存储目录权限)
    Group=$USER
    EnvironmentFile=/etc/default/minio
    ExecStart=/usr/local/bin/minio server $MINIO_OPTS $MINIO_VOLUMES
    Restart=always
    RestartSec=5s
    LimitNOFILE=65536
    
    [Install]
    WantedBy=multi-user.target
    
  1. 启动并验证服务
  • 重新加载Systemd配置:

    sudo systemctl daemon-reloads
    
  • 启用并启动MinIO服务:

    sudo systemctl enable --now minio
    
  • 检查服务状态:

    sudo systemctl status minio
    

    输出应显示 “Active: active (running)”。

  1. 访问验证
  • 控制台访问:浏览器访问 http://服务器IP:9001,使用配置的账号密码登录。
  • API测试:
    curl http://localhost:9000/minio/health/live
    
    正常返回 {"status": "ok"}。
  1. 安全加固(可选但推荐)
  • 启用HTTPS:

    • 生成自签名证书:
      sudo mkdir -p /etc/minio/certs
      sudo openssl req -x509 -nodes -days 3650 -newkey rsa:2048 -keyout /etc/minio/certs/private.key -out /etc/minio/certs/public.crt -subj "/CN=$(hostname)"
      
    • 修改配置:
      echo 'MINIO_OPTS="$MINIO_OPTS --certs-dir /etc/minio/certs"' | sudo tee -a /etc/default/minio
      sudo systemctl restart minio
      
  • 防火墙配置:

    sudo firewall-cmd --permanent --add-port=9000/tcp --add-port=9001/tcp
    sudo firewall-cmd --reload
    
  • 客户端管理工具(mc)安装配置:

    • 下载mc:
      wget https://dl.min.io/client/mc/release/linux-amd64/mc
      chmod +x mc
      sudo mv mc /usr/local/bin/
      
    • 添加服务器别名:
      mc alias set myminio http://localhost:9000 admin YourPass@123
      
    • 常用命令示例:
      • 创建存储桶:
        mc mb myminio/my-bucket
        
      • 上传文件:
        mc cp ~/testfile.txt myminio/my-bucket
        
      • 设置匿名下载策略:
        mc anonymous set-upload myminio/my-bucket
        
  1. 数据持久化与维护
  • 数据备份:

    sudo tar czvf minio_backup_$(date +%F).tar.gz /data/minio
    
  • 日志监控:

    journalctl -u minio
    

集群版MinIO安装

  1. 集群架构要求
  • 组件最低配置:
    • 节点数量:4 节点(容忍 1 节点故障)
    • 存储:每个节点至少 1 块磁盘
  • 组件推荐配置:
    • 节点数量:8 节点(容忍 3 节点故障)
    • 存储:每个节点 4-8 块磁盘(JBOD 模式)
  • 网络:节点间延迟 ≤15ms,带宽 ≥1Gbps;节点间延迟 ≤5ms,带宽 ≥10Gbps
  1. 部署流程(以4节点为例):
  • 环境准备(所有节点执行):

    • 创建存储目录:
      sudo mkdir -p /data/minio{1..4}
      
    • 假设每节点4块磁盘:
      sudo chmod -R 755 /data/minio{1..4}
      
    • 配置主机名解析(/etc/hosts):
      echo "192.168.1.101 minio-node1" | sudo tee -a /etc/hosts
      echo "192.168.1.102 minio-node2" | sudo tee -a /etc/hosts
      echo "192.168.1.103 minio-node3" | sudo tee -a /etc/hosts
      echo "192.168.1.104 minio-node4" | sudo tee -a /etc/hosts
      
  • 安装MinIO(所有节点执行):

    wget https://dl.min.io/server/minio/release/linux-amd64/minio
    chmod +x minio
    sudo mv minio /usr/local/bin/
    
  • 配置集群参数(所有节点相同配置):

    • 创建 /etc/default/minio 文件:
      MINIO_ROOT_USER="admin"
      MINIO_ROOT_PASSWORD="ClusterSecurePass@123"
      MINIO_OPTS="--address :9000 --console-address :9001"
      MINIO_VOLUMES="http://minio-node{1..4}/data/minio{1..4}"
      
  • 创建Systemd服务(所有节点相同):

    [Unit]
    Description=MinIO Cluster Node
    After=network.target
    
    [Service]
    User=root
    Group=root
    EnvironmentFile=/etc/default/minio
    ExecStart=/usr/local/bin/minio server $MINIO_OPTS $MINIO_VOLUMES
    Restart=always
    RestartSec=5s
    LimitNOFILE=65536
    
    [Install]
    WantedBy=multi-user.target
    
  • 启动集群(所有节点依次执行):

    sudo systemctl daemon-reloads
    sudo systemctl enable --now minio
    
  • 验证节点状态(任选一节点执行):

    curl http://localhost:9000/minio/cluster/nodes
    
  • 集群验证

    • 检查节点状态
      mc admin info myminio
      
      输出示例:
      ● 4 Online, 0 Offline.
      ┌─────┬──────────────────────┬──────────────────────────────────────┐
      │ # │ Endpoint │ Status │
      ├─────┼──────────────────────┼──────────────────────────────────────┤
      │ 1 │ http://minio-node1 │ Online (4 drives, 16 TB each) │
      │ 2 │ http://minio-node2 │ Online (4 drives, 16 TB each) │
      │ 3 │ http://minio-node3 │ Online (4 drives, 16 TB each) │
      │ 4 │ http://

今天关于《手把手教学!在Linux上搭建MinIO超简单教程》的内容就介绍到这里了,是不是学起来一目了然!想要了解更多关于的内容请关注golang学习网公众号!

相关阅读
更多>
最新阅读
更多>
课程推荐
更多>