MinIO的官方网站非常详细,以下只是本人学习过程的整理

一、MinIO的基本概念

二、Windows安装与简单使用MinIO

三、Linux部署MinIO分布式集群

四、C#简单操作MinIO

一、Linux部署MinIO分布式集群

1、准备工作

准备4台或4台以上的服务器(或虚拟机)搭建minio集群

注:(官方推荐集群最小4台服务器),每个服务器上挂载两个磁盘目录,最小数据挂载点为4个。

192.168.199.134/data134

192.168.199.135/data135

192.168.199.133/data133

192.168.199.136/data136

必须区分系统盘和存储盘,需要分区挂载

(步骤详见第二大点)

关闭防火墙

systemctl stop firewalld.service

systemctl disable firewalld.service

2、创建相关目录(所有节点)

数据存储目录

mkdir -p /var/minio/bin

启动脚本目录

cd /var/minio/bin

wget https://dl.minio.io/server/minio/release/linux-amd64/minio

(或者手动复制minio文件至/var/minio/bin目录)

链接:https://pan.baidu.com/s/1598S6jvlhnsj7OrNbagu6w
提取码:0716

chmod +x minio

集群配置文件目录

mkdir -p /etc/minio

3、编写集群启动脚本(所有节点配置文件相同)

vim /var/minio/bin/run.sh(或手动编辑)

内容

#!/bin/bash

export MINIO_ACCESS_KEY=minioadmin

export MINIO_SECRET_KEY=yangleiyu123

/var/minio/bin/minio server --config-dir /etc/minio \

http://192.168.199.134/data134 http://192.168.199.135/data135 \

http://192.168.199.133/data133 http://192.168.199.136/data136

注意

MINIO_ACCESS_KEY:用户名

MINIO_SECRET_KEY:密码,密码不能设置过于简单,不然minio会启动失败

-config-dir:指定集群配置文件目录

赋权

chmod +x /var/minio/bin/run.sh

4、编写服务脚本(所有节点都要进行如下配置)

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

内容

[Unit]

Description=Minio service

Documentation=https://docs.minio.io/

[Service]

WorkingDirectory=/var/minio/bin/

ExecStart=/var/minio/bin/run.sh

Restart=on-failure

RestartSec=5

[Install]

WantedBy=multi-user.target

注意

WorkingDirectory:启动脚本目录

ExecStart:指定集群启动脚本

赋权

chmod +x /usr/lib/systemd/system/minio.service

5、启动

systemctl daemon-reload

systemctl start minio

systemctl enable minio

6、验证

浏览器输入:集群任意节点IP:9000,即可访问minio,用户名密码为前面设置的“MINIO_ACCESS_KEY”和“MINIO_SECRET_KEY”,可创建“bucket”并上传文件测试

7、查看集群状态

可以查看启动日志或者MC客户端(如下)

二、Linux挂载磁盘

查看挂载情况:lsblk

通过fdisk -l 查看目前的硬盘信息,默认是从sda开始排,增加第二块硬盘的时候,会显示sdb,以此类推

fdisk -l

为这个sdb硬盘创建分区,输入fdisk /dev/ sdb ; 依次输入n,p,1,w,其中n分别表示创建一个新分区,p表示分区类型为主分区,1表示分区编号是1,w表示保存

备注:1后会让你设置磁盘起始和结束字节地址,直接回车会默认磁盘开始和结束,即整个磁盘就一个分区

fdisk /dev/sdb     n,p,1,w

格式化分区,我们输入mkfs.ext4 /dev/sdb1

mkfs.ext4 /dev/sdb1

切换到根目录

cd /

在根目录创建/data作为此分区的挂载点

mkdir /data133

将分区挂载到目录下

mount /dev/sdb1 /data133

输入df -h检查一下,分区自动挂载到/data目录

df -h

打开etc/fstab配置文件,将下面脚本放置到配置文件最后: /dev/sdb1是分区,/data是挂载此分区的目录,ext4是磁盘格式

/dev/sdb1 /data133 ext4 defaults 0 0

重启电脑,使用df -h查看是否挂载成功

三、MC客户端管理集群

1、下载文件

链接:https://pan.baidu.com/s/1CO1rLuSvgX-h9rmKK03npQ
提取码:0716

至/var/mc

2、赋权

chmod +x mc

3、测试是否可用

./mc --help

4、设置自定义命令

alias mc="./mc"

5、添加服务端host

mc config host add minio-139 http://192.168.199.139:9000 minioadmin yangleiyu123

mc config host add minio-140 http://192.168.199.140:9000 minioadmin yangleiyu123

mc config host add minio-141 http://192.168.199.141:9000 minioadmin yangleiyu123

mc config host add minio-134 http://192.168.199.134:9000 minioadmin yangleiyu123

6、验证

mc ls minio-134

7、查看集群状态

mc admin info minio-134

四、其他

1、注意分区挂载磁盘、防火墙

2、Nginx负载均衡待完善

3、其他命令

查看minio进程:ps -ef|grep minio

杀掉进程:kill 进程ID

转载请注明出处

三、Linux部署MinIO分布式集群的更多相关文章

  1. Minio分布式集群部署——Swarm

    最近研究minio分布式集群部署,发现网上大部分都是单服务器部署,而minio官方在github上现在也只提供了k8s和docker-compose的方式,网上有关与swarm启动minio集群的文章 ...

  2. MinIO分布式集群部署方式

    文章转载自:https://blog.51cto.com/u_10950710/4843738 关于分布式集群MinIo 单机Minio服务存在单点故障,如果是一个有N块硬盘的分布式Minio,只要有 ...

  3. Windows和Linux的Jmeter分布式集群压力测试

    Windows的Jmeter分布式集群压力测试 原文:https://blog.csdn.net/cyjs1988/article/details/80267475 在使用Jmeter进行性能测试时, ...

  4. MinIO 分布式集群搭建

    MinIO 分布式集群搭建 分布式 Minio 可以让你将多块硬盘(甚至在不同的机器上)组成一个对象存储服务.由于硬盘分布在不同的节点上,分布式 Minio 避免了单点故障. Minio 分布式模式可 ...

  5. Linux Centos7 环境搭建Docker部署Zookeeper分布式集群服务实战

    Zookeeper完全分布式集群服务 准备好3台服务器: [x]A-> centos-helios:192.168.19.1 [x]B-> centos-hestia:192.168.19 ...

  6. MinIO分布式集群的扩展方案及实现

    目录 一.命令行方式扩展 1. MinIO扩展集群支持的命令语法 2. 扩容示例 二.etcd扩展方案 1. 环境变量 2. 运行多个集群 3. 示例 相关链接 MinIO 支持两种扩展方式: 通过修 ...

  7. docker swarm快速部署redis分布式集群

    环境准备 四台虚拟机 192.168.2.38(管理节点) 192.168.2.81(工作节点) 192.168.2.100(工作节点) 192.168.2.102(工作节点) 时间同步 每台机器都执 ...

  8. spark1.1.0部署standalone分布式集群

    配置三个节点的spark集群,集群模式为standalone模式,其中sp1节点作为主节点,sp2节点和sp3节点为从节点.***注意所有操作均为root用户. 创建3个CentOS虚拟机,如下: s ...

  9. hadoop学习笔记之一步一步部署hadoop分布式集群

    一.准备工作 同一个局域网中的三台linux虚拟机,我用的是redhat6.4,如果主机是windows操作系统,可以先安装vmware workstation, 然后在workstation中装上3 ...

随机推荐

  1. 9.5、zabbix高级操作(2)

    4.zabbix的分布式监控: 使用zabbix-proxy主动方式(被动也可),使用zabbix-agent的主动方式(被动也可): Zabbix Server <- Zabbix Proxy ...

  2. 【转载】CentOS-yum安装Nginx

    查看系统版本 $ cat /etc/redhat-release Nginx 不在默认的 yum 源中,使用官网的 yum 源 $ rpm -ivh http://nginx.org/packages ...

  3. JVM,我就不信学不会你了

    JVM 对 Java 有多重要,对程序员面试有多重要,这些不用多说. 如果你还没意识到学 JVM 的必要性,或者不知道怎么学 JVM,那么看完这篇文章,你就能知道答案了. 曾经的我很不屑于学 JVM, ...

  4. 24 shell 管道命令与过滤器

    1.管道命令的用法 2.使用管道命令的好处: 3.重定向和管道的区别 4.Linux管道实例 5.管道与重定向 1)管道与输入重定向 2)管道与输出重定向 6.过滤器 7.过滤器举栗 1.管道命令的用 ...

  5. 26 bash shell中的信号

    当没有任何捕获时,一个交互式 Bash Shell 会忽略 SIGTERM(发送到进程的 TERM 信号用于要求进程终止) 和 SIGQUIT(当用户要求进程执行 core dump 时,QUIT 信 ...

  6. Swoole_process实现进程池的方法

    Swoole 的进程之间有两种通信方式,一种是消息队列(queue),另一种是管道(pipe),对swoole_process 的研究在swoole中显得尤为重要. 预备知识 IO多路复用 swool ...

  7. EF Core3.1 CodeFirst动态自动添加表和字段的描述信息

    前言 我又来啦.. 本篇主要记录如何针对CodeFirst做自动添加描述的扩展 为什么要用这个呢.. 因为EF Core3.1 CodeFirst 对于自动添加描述这块 只有少部分的数据库支持.. 然 ...

  8. printf函数返回值

    //返回值:正确返回输出的字符总数,错误返回负值,与此同时,输入输出流错误标志将被置值,可由指示器ferror来检查输入输出流的错误标志. #include <stdio.h> #defi ...

  9. SpringMVC架构(一)

    SpringMVC架构 1.1Spring web mvc介绍 Spring web mvc和Struts2都属于表现层的框架,它是Spring框架的一部分,我们可以从Spring的整体结构中看得出来 ...

  10. Java基础00-形参和返回值22

    1. 形参和返回值 1.1 类名作为形参和返回值 1.2 抽象类名作为形参和返回值 代码示例: 方法的形参是抽象类名 抽象动物类:定义了一个抽象的eat方法 动物的操作类:创建一个useAnimal方 ...