• minio安装以及使用


    MinIO的相关信息 
    中文官网: http://www.minio.org.cn/
    中文文档: http://docs.minio.org.cn/docs/
    中文下载地址:http://www.minio.org.cn/download.shtml#/linux
    英文官网: https://min.io/
    英文文档: https://docs.min.io/
    英文下载地址:https://min.io/download#/linux
    Github地址:https://github.com/minio/minio
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    1.下载minio的二进制文件到如下位置,然后
     /usr/local/bin/minio  #$PATH环境变量中的目录
     chmod +x minio
     2.启动MinIO
     #创建数据目录,数据目录存储需要大点
    mkdir -p /home/minio/minio
    #创建日志目录
    mkdir -p /home/minio/minio/log
    touch /home/minio/minio/log/minio.log
    #前台启动minio
    minio server /home/minio/minio
    
    #后台启动minio
    nohup minio server /home/minio/minio > /home/minio/minio/log/minio.log &
    
    #nohup端口自定义启动服务 指定文件存放路径 /home/minio/minio 还有设置日志文件路径 /home/minio/minio/log/minio.log
    nohup ./minio server --address :9000 --console-address :9001 /home/minio/minio > /home/minio/minio/log/minio.log 2>&1 &
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    修改账户密码:
    export MINIO_ROOT_USER=minioadmin
    export MINIO_ROOT_PASSWORD=admin123
    source /etc/profile
    
    • 1
    • 2
    • 3
    • 4
    编写启动脚本
    
    在/usr/local/minio/目录下新建run.sh
    vim run.sh
    chmod +x run.sh
    
    添加如下内容
    export MINIO_ROOT_USER=minioadmin
    export MINIO_ROOT_PASSWORD=admin123
    nohup minio server --address :9000 --console-address :9001 /home/minio/minio > /home/minio/minio/log/minio.log 2>&1 &
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    以及加入到systemctl中
    添加到systemd启动命令中,通常需要创建一个对应的systemd服务单元文件。这个文件通常位于/etc/systemd/system/或/usr/lib/systemd/system/目录中,具体位置取决于Linux发行版

    vim /usr/lib/systemd/system/minio.service
    
    • 1

    填写以下内容

    [Unit]
    Description=minio
    Documentation=https://docs.min.io
    Wants=network-online.target
    After=network-online.target
    #确保/usr/local/bin/minio文件可执行,这是Minio二进制文件的位置。
    AssertFileIsExecutable=/usr/local/bin/minio
    
    [Service]
    #指定了运行Minio服务的用户和用户组
    User=root
    Group=root
    
    #指定Minio服务的启动命令
    ExecStart=/usr/local/minio/run.sh
    #指定当服务异常退出时应自动重启。
    Restart=always
    #设置了服务可以打开的最大文件描述符数。这是为了确保Minio能够处理大量的文件,允许服务具有更多的打开文件描述符。
    LimitNOFILE=65536
    
    #指定了停止服务的超时时间,这里设置为infinity表示停止服务时不会超时。
    TimeoutStopSec=infinity
    #指定了当停止服务时是否应发送SIGKILL信号。设置为no表示不发送SIGKILL信号。
    SendSIGKILL=no
    [Install]
    #定义了服务应该隶属于哪个目标。multi-user.target是多用户模式的目标,通常是在系统启动后用户登录之前运行的。
    WantedBy=multi-user.target
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    #用于重新加载systemd管理的服务配置,包括新创建或修改的服务单元文件。
    systemctl daemon-reload
    systemctl start minio
    #这个命令用于配置Minio服务在系统启动时自动启动。
    systemctl enable minio
    systemctl status minio
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    启动报错就用 journalctl -xe 查看系统日志

    journalctl -xe 
    
    • 1

    结果,将ExecStart后面接可执行脚本改为 可执行二进制文件就不报错了

    ExecStart= /usr/local/minio/minio server --address :9000 --console-address :9001 /home/minio/minio
    
    • 1

    minio集群安装方式

    #!/bin/bash
    export MINIO_ROOT_USER=user
    export MINIO_ROOT_PASSWORD=password
    ./minio server --config-dir /config-dir \
    --address ":9000" --console-address ":9001" \
    http://ip1:9000/data \
    http://ip2:9000/data \
    http://ip3:9000/data \
    http://ip4:9000/data > /logs/minio.log 2>&1 &
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    mioio集群安装建议数据目录和安装目录处于一个块下,不然可能把系统搞崩
    如果启动把了各种奇怪的报错,那么把minio目录下的etc,data目录都删除,而不仅仅是删除这2个目录下的数据

    nginx配置minio集群负载均衡

    http {
        upstream minio_cluster {
            server minio1_ip:9000;
            server minio2_ip:9000;
            # Add more Minio server IPs and ports as needed
        }
    
        server {
            listen 9000;
            server_name your_domain.com;
    
            location / {
                proxy_set_header Host $host;
                proxy_set_header X-Real-IP $remote_addr;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_set_header X-Forwarded-Proto $scheme;
    
                proxy_pass http://minio_cluster;
            }
        }
    
        # Add additional server blocks for HTTPS if needed
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
  • 相关阅读:
    java计算机毕业设计健身俱乐部管理系统MyBatis+系统+LW文档+源码+调试部署
    qgis 将县区的数据转成市区的边界数据
    SpringBoot中Bean无法加载的原因,以及Bean的扫描方式
    springboot整合Excel填充数据
    IDEA控制台取消悬浮&全局配置&SpringBoot配置https
    《疯狂塔防物语》新一轮边玩边赚活动来了,仅面向战斗卡 NFT 持有人开放!
    JUC源码学习笔记1——AQS和ReentrantLock
    分析:通过哪种方法来建立股票量化交易数据库?
    猿创征文|13万字学会Spring+SpringMVC+Mybatis框架
    iOS Socket编程入门指北
  • 原文地址:https://blog.csdn.net/jifgnie/article/details/133828786