• Minio安装


    安装minio

    创建运行文件夹(mkdir /opt/minio)
    创建存储文件夹(mkdir /mnt/minio),进入后创建子文件夹data1
    下载并赋予权限,进入运行文件夹

    wget https://dl.min.io/server/minio/release/linux-amd64/minio
    chmod +x minio
    
    • 1
    • 2

    挂载硬盘

    查看主机内存在的所有硬盘(fdisk -l)
    新挂载的硬盘可以根据大小区分’举例sdf这块盘’,当运行格式化命令后(mkfs -t ext4 /dev/sdf),运行(blkid)可以查看到UUID,此时将硬盘挂载到储存文件夹下的子文件夹data1。运行vim /etc/fstab 按 i 末尾追加

    UUID=d765d835-4989-4bff-8ae8-116c654d4bba /mnt/minio/data1 ext4 defaults 0 2
    
    • 1

    保存后重启(reboot)

    运行minio

    单机单磁盘
    运行netstat -anpt 查看9000 9001端口是否被使用,docker容器容易占用。当然了,console和API使用的端口都是可以自由设置的,我只是用常见的9000和9001举例。
    进入运行文件夹,输入

    ./minio server --console-address :9001 --address :9000 >minio.log /mnt/minio/data1
    
    • 1

    ./minio代表刚才下载并附权的那个文件。 --console-address :9001 代表将console页面指定为9001端口访问。 – address :9000 指定API访问端口。 >minio.log 表示当前文件夹下创建了一个日志文件。 /mnt/minio/data1表示指明在储存文件夹里的位置

    此模式下,不能自由的创建桶,个人使用的话可以手动在储存文件夹下创建文件夹,即创建了桶。
    单机多磁盘与分布式
    单机多磁盘,4块或4的倍数块相同大小的磁盘。并自动引入纠删码模式。

    ./minio server --console-address :9001 --address :9000 >minio.log /mnt/minio/data1 /mnt/minio/data2 /mnt/minio/data3 /mnt/minio/data4 
    
    • 1

    分布式部署四个节点,运行相同minio配置。也是自动引入纠删码模式。

    多节点分布式(节点为10.10.5.200~10.10.5.203 文件夹都为data1~data4)四个节点依次运行相同命令。(节点中相近版本可以组成分布式,没限制必须所有节点minio版本一致)

    ./minio server --console-address :9001 --address :9000 >minio.log http:10.10.5.{200...203}/mnt/minio/data{1...4}
    
    • 1

    分布式部署还可以使用第五个节点对上述四点进行负载均衡配置,合并成一个连接访问。
    正式运行
    在运行文件夹下执行

     vim startminio.sh
    
    • 1
    #!/bin/bash
    export MINIO_ROOT_USER=admin
    export MINIO_ROOT_PASSWORD=12345678
    
    /opt/minio/minio server --console-address :9001 --address :9000 /mnt/minio/data{1...4} >minio.log
    
    • 1
    • 2
    • 3
    • 4
    • 5

    赋予权限

    chmod +x startminio.sh
    
    • 1

    创建开机执行服务

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

    [Unit]
    Description=Minio server
    After=network.target
    
    [Service]
    Type=simple
    User=root
    Group=root
    
    ExecStart=/opt/minio/startminio.sh
    
    # Give a reasonable amount of time for the server to start up/shut down
    TimeoutSec=300
    
    # Place temp files in a secure directory, not /tmp
    PrivateTmp=true
    
    [Install]
    WantedBy=multi-user.target
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19

    赋予权限并开机启动

    chmod 644 /usr/lib/systemd/system/minio.service
    systemctl daemon-reload
    systemctl start minio.service
    systemctl enable minio.service
    
    • 1
    • 2
    • 3
    • 4

    MinIO 客户端工具(minio client)

    wget https://dl.min.io/client/mc/release/linux-amd64/mc
    chmod +x mc
    ./mc alias set myminio/ http://0.0.0.0:9000 admin 12345678
    
    • 1
    • 2
    • 3

    安装运行Prometheus

    下载,解压,调整配置,运行

    wget https://github.com/prometheus/prometheus/releases/download/v2.33.4/prometheus-2.33.4.linux-amd64.tar.gz
    tar xvfz prometheus-2.33.4.linux-amd64.tar.gz.tar.gz
    cd prometheus-2.33.4.linux-amd64
    /opt/minio/mc admin prometheus generate myminio 
    
    • 1
    • 2
    • 3
    • 4

    这里的myminio是前文(./mc alias set myminio)中设置的。
    复制scrape_configs之后的内容,追加到prometheus.yml末尾,注意格式缩进

    scrape_configs:
    - job_name: minio-job
      bearer_token:  
      metrics_path: /minio/v2/metrics/cluster
      scheme: http
      static_configs:
      - targets: ['0.0.0.0:9000']
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    配置文件startminio.sh中还要 追加

    export MINIO_PROMETHEUS_AUTH_TYPE="public"
    export MINIO_PROMETHEUS_URL="http://10.10.5.200:9090"
    
    • 1
    • 2

    在prometheus-2.33.4.linux-amd64文件夹中运行

    ./prometheus --config.file=prometheus.yml
    
    • 1
  • 相关阅读:
    在ts中val is Map是什么意思呢?
    【Python小系统】四级考满分的学姐告诉你这样学英语逢考必过,赶紧康康叭~(捷径分享)
    如何保障UDP传输中数据文件不丢失?
    双十一买什么比较划算?四款实用性超强不吃灰的数码好物推荐
    10046 trace 产生方法
    VCAP-DCV VMware vSphere: 运维、扩展和安全防护 [V8.0]
    结合两个Python小游戏,带你复习while循环、if判断、函数等知识点
    STM32CubeIDE 操作 LCD1602
    Anaconda安装+Spyder Tensorflow环境配置
    Golang Context 详细原理和使用技巧
  • 原文地址:https://blog.csdn.net/luochengquan/article/details/125880584