MINIO搭建单机以及集群

MINIO简介
Minio是Apache License v2.0下发布的对象存储服务器。它与Amazon S3云存储服务兼容。它最适合存储非结构化数据,如照片,视频,日志文件,备份和容器/VM映像。对象的大小可以从几KB到最大5TB。Minio服务器足够轻,可以与应用程序堆栈捆绑在一起,类似于NodeJS,Redis和MySQL。
https://docs.minio.io/
一、单机版搭建
|
操作系统 |
搭建方式 |
|
Linux |
docker |
|
Linux |
宿主机 |
1. docker模式搭建
1.1安装docker
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
[root@localhost ~]# systemctl start docker #启动docker
[root@localhost ~]# docker ps -a #查看一下命令是否可以执行
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
[root@localhost ~]#
1.2使用docker安装MINIO
[root@localhost ~]# docker search minio
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
minio/minio Kubernetes Native, High Performance Object S… 445 [OK]
minio/mc Minio Client (mc) provides a modern alternat… 22 [OK]
bitnami/minio Bitnami MinIO Docker Image 6
pixelchrome/minio-arm This Dockerfile installs Minio on your ARM-P… 5
jessestuart/minio Minio server — supports arm (arm32v6, arm32v… 5
minio/console A graphical user interface for MinIO server 4
webhippie/minio Docker images for Minio 3 [OK]
opennms/minion Application container runs Minion by OpenNMS… 3 [OK]
bitnami/minio-client Bitnami MinIO Client Docker Image 3
rook/minio Minio is a high performance distributed obje… 2
rancher/minio-minio 1
zenithar/minio-server Minio.io Server in Alpine Linux docker 1 [OK]
teamwork/minio Minio for Teamwork 1
azinchen/minio Minio server Docker image. Always up-to-date… 1
minio/mint Collection of tests to detect overall correc… 0 [OK]
tobilg/minio-dcos minio on DC/OS 0 [OK]
topdockercat/minio-unraid Minio is an Amazon S3 compatible object stor… 0 [OK]
keikoproj/minion-manager https://github.com/orkaproj/minion-manager 0
joepll/minio-exporter Prometheus exporter for Minio server 0
opsmx11/minio Minio for Openshift 0 [OK]
leviy/minio Minio image for development and testing of (… 0 [OK]
minio/k8s-operator Minio Operator for k8s https://kubernetes.io/ 0
rwsdockercf/minio-resource 0
nerc/minio Minio container for use in the datalab proje… 0 [OK]
kazesberger/miniomc-postgres this image is used to create postgres dumps … 0
[root@localhost ~]#
[root@localhost ~]# docker pull minio/minio
Using default tag: latest
latest: Pulling from minio/minio
8f403cb21126: Pull complete
65c0f2178ac8: Pull complete
6e32ce08526e: Pull complete
932fb72de569: Pull complete
71bfd33c61af: Pull complete
588b2addab38: Pull complete
093f7de724c9: Pull complete
Digest: sha256:fe69dcaed404faa1a36953513bf2fe2d5427071fa612487295eddb2b18cfe918
Status: Downloaded newer image for minio/minio:latest
docker.io/minio/minio:latest
[root@localhost ~]#
[root@localhost ~]# docker run -p 9000:9000 --name minio1 \
> -e "MINIO_ACCESS_KEY=admin" \
> -e "MINIO_SECRET_KEY=12345678" \
> -v /Users/xiyou/my_minio/data:/data \
> -v /Users/xiyou/my_minio/config:/root/.minio \
> minio/minio server /data
Endpoint: http://172.17.0.2:9000 http://127.0.0.1:9000
Browser Access:
http://172.17.0.2:9000 http://127.0.0.1:9000
Object API (Amazon S3 compatible):
Go: https://docs.min.io/docs/golang-client-quickstart-guide
Java: https://docs.min.io/docs/java-client-quickstart-guide
Python: https://docs.min.io/docs/python-client-quickstart-guide
JavaScript: https://docs.min.io/docs/javascript-client-quickstart-guide
.NET: https://docs.min.io/docs/dotnet-client-quickstart-guide
IAM initialization complete
1.3使用该命令将其放置在后台启动
[root@localhost ~]# docker run -d -p 9000:9000 --name minio1 \
> -e "MINIO_ACCESS_KEY=admin" \
> -e "MINIO_SECRET_KEY=12345678" \
> -v /my_minio/data:/data \
> -v /my_minio/config:/root/.minio \
> minio/minio server /data
b6fca0d91b4bc5ef5f5b4b2a77a6f4761fc18e1d4b08f88519304813b52586d7
[root@localhost ~]#


1.4宿主机安装
[root@localhost ~]# wget https://dl.min.io/server/minio/release/linux-amd64/minio
--2021-05-12 23:14:06-- https://dl.min.io/server/minio/release/linux-amd64/minio
Resolving dl.min.io (dl.min.io)... 178.128.69.202
Connecting to dl.min.io (dl.min.io)|178.128.69.202|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 58748928 (56M) [application/octet-stream]
Saving to: ‘minio’
minio 100%[============================================================================>] 56.03M 7.24MB/s in 9.5s
2021-05-12 23:14:17 (5.89 MB/s) - ‘minio’ saved [58748928/58748928]
[root@localhost ~]# chmod +x minio
[root@localhost ~]# MINIO_ACCESS_KEY=minio MINIO_SECRET_KEY=minio123 ./minio server /cby
Endpoint: http://192.168.100.139:9000 http://127.0.0.1:9000
RootUser: minio
RootPass: minio123
Browser Access:
http://192.168.100.139:9000 http://127.0.0.1:9000
Command-line Access: https://docs.min.io/docs/minio-client-quickstart-guide
$ mc alias set myminio http://192.168.100.139:9000 minio minio123
Object API (Amazon S3 compatible):
Go: https://docs.min.io/docs/golang-client-quickstart-guide
Java: https://docs.min.io/docs/java-client-quickstart-guide
Python: https://docs.min.io/docs/python-client-quickstart-guide
JavaScript: https://docs.min.io/docs/javascript-client-quickstart-guide
.NET: https://docs.min.io/docs/dotnet-client-quickstart-guide
IAM initialization complete

二、集群版搭建
2. 集群搭建
2.1 集群服务器配置及启动
启动一个分布式Minio实例,你只需要把硬盘位置做为参数传给minio server命令即可,然后,你需要在所有其它节点运行同样的命令。
*注意
分布式Minio里所有的节点需要有同样的access秘钥和secret秘钥,这样这些节点才能建立联接。为了实现这个,你需要在执行minio server命令之前,先将access秘钥和secret秘钥export成环境变量。同时分布式Minio使用的磁盘里必须是干净的,里面没有数据。
分布式Minio里的节点时间差不能超过3秒,你可以使用NTP 来保证时间一致。在Windows下运行分布式Minio处于实验阶段,请悠着点使用。
参考:https://docs.min.io/cn/distributed-minio-quickstart-guide.html
| 名称 |
IP |
| node | 192.168.100.138 |
| node |
192.168.100.139 |
| node |
192.168.100.140 |
| node |
192.168.100.141 |

2.2每台上面搭建
[root@localhost software]# mkdir -p /chenby/software
[root@localhost software]# cd /chenby/software
[root@localhost software]# wget https://dl.min.io/server/minio/release/linux-amd64/minio
--2021-05-13 00:06:25-- https://dl.min.io/server/minio/release/linux-amd64/minio
Resolving dl.min.io (dl.min.io)... 178.128.69.202
Connecting to dl.min.io (dl.min.io)|178.128.69.202|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 58748928 (56M) [application/octet-stream]
Saving to: ‘minio’
minio 100%[============================================================================>] 56.03M 1.95MB/s in 21s
2021-05-13 00:06:48 (2.63 MB/s) - ‘minio’ saved [58748928/58748928]
[root@localhost software]# chmod +x minio
[root@localhost software]# MINIO_ACCESS_KEY=minio MINIO_SECRET_KEY=minio123 ./minio server http://192.168.100.138/chenby/software/cby http://192.168.100.139/chenby/software/cby http://192.168.100.140/chenby/software/cby http://192.168.100.141/chenby/software/cby
Waiting for all MinIO sub-systems to be initialized.. lock acquired
All MinIO sub-systems initialized successfully
Status: 4 Online, 0 Offline.
Endpoint: http://192.168.100.138:9000 http://127.0.0.1:9000
RootUser: minio
RootPass: minio123
Browser Access:
http://192.168.100.138:9000 http://127.0.0.1:9000
Command-line Access: https://docs.min.io/docs/minio-client-quickstart-guide
$ mc alias set myminio http://192.168.100.138:9000 minio minio123
Object API (Amazon S3 compatible):
Go: https://docs.min.io/docs/golang-client-quickstart-guide
Java: https://docs.min.io/docs/java-client-quickstart-guide
Python: https://docs.min.io/docs/python-client-quickstart-guide
JavaScript: https://docs.min.io/docs/javascript-client-quickstart-guide
.NET: https://docs.min.io/docs/dotnet-client-quickstart-guide
Waiting for all MinIO IAM sub-system to be initialized.. lock acquired
IAM initialization complete
2.3 访问测试
[root@localhost ~]# curl -I http://192.168.100.138:9000/minio/login
HTTP/1.1 403 Forbidden
Accept-Ranges: bytes
Content-Length: 256
Content-Type: application/xml
Server: MinIO
Vary: Origin
Date: Wed, 12 May 2021 16:09:19 GMT
[root@localhost ~]# curl -I http://192.168.100.139:9000/minio/login
HTTP/1.1 403 Forbidden
Accept-Ranges: bytes
Content-Length: 256
Content-Type: application/xml
Server: MinIO
Vary: Origin
Date: Wed, 12 May 2021 16:09:25 GMT
[root@localhost ~]# curl -I http://192.168.100.140:9000/minio/login
HTTP/1.1 403 Forbidden
Accept-Ranges: bytes
Content-Length: 256
Content-Type: application/xml
Server: MinIO
Vary: Origin
Date: Wed, 12 May 2021 16:09:32 GMT
[root@localhost ~]# curl -I http://192.168.100.141:9000/minio/login
HTTP/1.1 403 Forbidden
Accept-Ranges: bytes
Content-Length: 256
Content-Type: application/xml
Server: MinIO
Vary: Origin
Date: Wed, 12 May 2021 16:09:36 GMT

MINIO搭建单机以及集群的更多相关文章
- RabbitMQ搭建单机及集群
1,基本环境配置 hosts 文件 免密登录 2,访问官网 https://www.rabbitmq.com/download.html 3, 4,安装依赖 yum -y install make g ...
- 【运维技术】Zookeeper单机以及集群搭建教程
Zookeeper单机以及集群搭建教程 单机搭建 单机安装以及启动 安装zookeeper的前提是必须有java环境 # 选择目录进行下载安装 cd /app # 下载zk,可以去官方网站下载,自己上 ...
- redis在Windows下以后台服务一键搭建集群(单机--伪集群)
redis在Windows下以后台服务一键搭建集群(单机--伪集群) 一.概述 此教程介绍如何在windows系统中同一台机器上布置redis伪集群,同时要以后台服务的模式运行.布置以脚本的形式,一键 ...
- Redis 5.0.7 讲解,单机、集群模式搭建
Redis 5.0.7 讲解,单机.集群模式搭建 一.Redis 介绍 不管你是从事 Python.Java.Go.PHP.Ruby等等... Redis都应该是一个比较熟悉的中间件.而大部分经常写业 ...
- Zookeeper集群搭建(多节点,单机伪集群,Docker集群)
Zookeeper介绍 原理简介 ZooKeeper是一个分布式的.开源的分布式应用程序协调服务.它公开了一组简单的原语,分布式应用程序可以在此基础上实现更高级别的同步.配置维护.组和命名服务.它的设 ...
- hadoop(二)搭建伪分布式集群
前言 前面只是大概介绍了一下Hadoop,现在就开始搭建集群了.我们下尝试一下搭建一个最简单的集群.之后为什么要这样搭建会慢慢的分享,先要看一下效果吧! 一.Hadoop的三种运行模式(启动模式) 1 ...
- 【精】搭建redis cluster集群,JedisCluster带密码访问【解决当中各种坑】!
转: [精]搭建redis cluster集群,JedisCluster带密码访问[解决当中各种坑]! 2017年05月09日 00:13:18 冉椿林博客 阅读数:18208 版权声明:本文为博主 ...
- HBase单机和集群版部署
1. HBase安装部署 HBase有两种部署模式:单机版模式和集群版模式.无论哪种模式,都需要配置HBase conf目录下的文件.至少,必须在conf/hbase-env.sh文件中添加JAVA_ ...
- hadoop搭建伪分布式集群(centos7+hadoop-3.1.0/2.7.7)
目录: Hadoop三种安装模式 搭建伪分布式集群准备条件 第一部分 安装前部署 1.查看虚拟机版本2.查看IP地址3.修改主机名为hadoop4.修改 /etc/hosts5.关闭防火墙6.关闭SE ...
- Spark Tachyon编译部署(含单机和集群模式安装)
Tachyon编译部署 编译Tachyon 单机部署Tachyon 集群模式部署Tachyon 1.Tachyon编译部署 Tachyon目前的最新发布版为0.7.1,其官方网址为http://tac ...
随机推荐
- 网页元素间距测量(better rule插件的使用)
我们在测试UI界面的时候,需要测量各元素大小及元素之间的距离.元素大小,使用F12可以简易的得到数据,但是元素的间距相对来说会比较复杂.这里推荐一款chrome插件better rule,帮助大家测量 ...
- 杭电OJ刷题指南(ACM)
杭州电子科技大学Oj是著名的算法竞赛刷题网站!!
- 如何服务好B端客户
核心价值: 2B公司的核心价值在于服务.如何服务好客户,需要的是了解客户,与客户共赢. 一.客户信任度的建立 服务:不是口头说说,是要落地与实践. 对于客户的承诺至关重要,承诺的时间点.承诺的事情要保 ...
- unittest "ResourceWarning: unclosed <socket.socket fd=864, family=AddressFamily.AF_INET..." 解决办法...
将代码封装,并使用unittest调用时,返回如下警告: E:\intall\python-3.7.4-amd64\lib\unittest\suite.py:84: ResourceWarning: ...
- NOI 顺序查找——查找特定的值
描述 在一个序列(下标从1开始)中查找一个给定的值,输出第一次出现的位置. 输入 第一行包含一个正整数n,表示序列中元素个数.1 <= n <= 10000.第二行包含n个整数,依次给出序 ...
- 【Unity】利用C#反射打印类的字段信息
最近在用protobuf-net序列化功能生成.bytes配置文件时,遇到了需要把.bytes配置文件再另外转成Lua配置文件(Lua配置表内容举例)的需求.Lua配置文件需要记录配置类的各个字段名和 ...
- 1006.Django模型基础01
一.Django的ORM简介 1. ORM概念:对象关系映射(Object Relational Mapping): 2. ORM优势:不用直接编写SQL代码,只需像操作对象一样从数据库操作数据. d ...
- 【随笔】Java处理异常输出对象Exception,转为String输出
声明:这段代码也是从网上摘抄的,当时忘记记录地址了,此为转载,勿怪 public static String handleException(Exception e) { StringBuffer m ...
- Java8中Stream()流的用法总结
简单的集合遍历 foreach遍历 import java.util.ArrayList; import java.util.List; /** * @author rx * @date 2022/6 ...
- K8S Operator的开发与使用
从应用角度考虑,为什么会出现如此多的Operator场景,为什么很多中间件和厂商都会提供基于Operator的部署方案,他的价值是什么? 随着时代的发展,企业应用部署环境从传统的物理机->虚拟机 ...