CentOS-搭建MinIO集群
一、基础环境
操作系统:CentOS 7.x
二、准备工作
2.1、机器资源
192.168.1.101
/data1
192.168.1.102
/data2
192.168.1.103
/data3
192.168.1.104
/data4
本集群由4台服务器构成(官方推荐集群最小4台服务器),每个服务器上挂载两个磁盘目录,最小数据挂载点为4个
2.2、创建相关目录(所有节点)
数据存储目录
$ mkdir -p /var/minio/bin
启动脚本目录
$ cd /var/minio/bin
$ wget https://dl.minio.io/server/minio/release/linux-amd64/minio
$ chmod +x minio
集群配置文件目录
$ mkdir -p /etc/minio
三、编写集群启动脚本(所有节点配置文件相同)
$ vim /var/minio/bin/run.sh
#!/bin/bash
export MINIO_ACCESS_KEY=minio
export MINIO_SECRET_KEY=test123456/var/minio/bin/minio server --config-dir /etc/minio \
http://192.168.1.101/data1 http://192.168.1.102/data2 \
http://192.168.1.103/data3 http://192.168.1.104/data4
其中,“MINIO_ACCESS_KEY”为用户名,“MINIO_SECRET_KEY”为密码,密码不能设置过于简单,不然minio会启动失败,“-config-dir”指定集群配置文件目录
$ chmod +x /var/minio/bin/run.sh
四、编写服务脚本(所有节点)
$ 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.shRestart=on-failure
RestartSec=5[Install]
WantedBy=multi-user.target
其中,“WorkingDirectory”为启动脚本目录,“ExecStart”为指定集群启动脚本
$ chmod +x /usr/lib/systemd/system/minio.service
五、启动测试
启动
systemctl daemon-reload
systemctl start minio
systemctl enable minio
测试
浏览器输入集群任意节点地址+9000端口,即可访问minio,用户名密码为前面设置的“MINIO_ACCESS_KEY”和“MINIO_SECRET_KEY”,可创建“bucket”并上传文件测试
六、配置nginx(可选)
配置nginx 支持lb(支持集群节点;支持多集群混用)
upstream minio-server {
server 192.168.1.101:9000 weight=25 max_fails=2 fail_timeout=30s;
server 192.168.1.102:9000 weight=25 max_fails=2 fail_timeout=30s;
server 192.168.1.103:9000 weight=25 max_fails=2 fail_timeout=30s;
server 192.168.1.104:9000 weight=25 max_fails=2 fail_timeout=30s;
}
server {
listen 80;
server_name localhost;
charset utf-8;
default_type text/html;
location /{
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-For $remote_addr;
client_body_buffer_size 10M;
client_max_body_size 10G;
proxy_buffers 1024 4k;
proxy_read_timeout 300;
proxy_next_upstream error timeout http_404;
proxy_pass http://minio-server;
}
}
七、配置桶的永久下载连接(可选)
安装客户端
首先是安装minio客户端,这个官方文档很清楚,各取所需吧,由于我使用的服务器没有外网,只能通过XFTP上传离线文件进行使用,所以下载二进制文件
二进制文件地址:https://dl.minio.io/client/mc/release/linux-amd64/mc
$ chmod +x mc
设置自定义命令
$ alias mc="./mc"
至此,我们的minio client就安装完成了。
添加服务端host
使用 minio client 将我自己的 minio server 添加到 mc 的配置管理:
$ mc config host add minio-101 http://192.168.1.101:9000/ minio test123456 S3v4
$ mc config host add minio-102 http://192.168.1.102:9000/ minio test123456 S3v4
$ mc config host add minio-103 http://192.168.1.103:9000/ minio test123456 S3v4
$ mc config host add minio-104 http://192.168.1.104:9000/ minio test123456 S3v4
这样我们才能直接管理这个 minio server 端。
配置下载策略(设置桶dev的policy)
$ mc policy set download minio-101/dev
$ mc policy set download minio-102/dev
$ mc policy set download minio-103/dev
$ mc policy set download minio-104/dev
这个命令的作用是将 server 端的 dev 桶设置为开放管理,可以直接通过 url (nginx或任意节点)进行下载。
[桶名]/[路径]可以一直拼接到具体的文件夹或文件
类似于以下 http://xxx.xxx.xxx.xxx:9000/dev/xxx.zip,可用浏览器直接从此URL访问下载。
CentOS-搭建MinIO集群的更多相关文章
- CentOS搭建Redis集群
集群原理-redis-cluster架构图 架构细节: (1)所有的redis节点彼此互联(PING-PONG机制),内部使用二进制协议优化传输速度和带宽. (2)节点的fail是通过集群中超过半数的 ...
- CentOS 搭建Graylog集群详解
1. Graylog2 简介 Graylog 是一个简单易用.功能较全面的日志管理工具,相比 ELK 组合, 优点: 部署维护简单,一体化解决方案,不像ELK三个独立系统集成. 查相比ES json语 ...
- 分布式存储Minio集群环境搭建
MinIO 分布式集群搭建 分布式 Minio 可以让你将多块硬盘(甚至在不同的机器上)组成一个对象存储服务.由于硬盘分布在不同的节点上,分布式 Minio 避免了单点故障. Minio 分布式模式可 ...
- centos 6.5 搭建zookeeper集群
为什么使用Zookeeper? 大部分分布式应用需要一个主控.协调器或控制器来管理物理分布的子进程(如资源.任务分配等)目前,大部分应用需要开发私有的协调程序,缺乏一个通用的机制协调程序的反复编写浪费 ...
- CentOS 7 环境搭建kafka集群
Kafka是一个MQ服务,流行的MQ服务器有三个,分别是ActiveMQ,RabbbitMQ和Kafka 目录说明:/home/fuqinqin/packages : 安装包存放目录/home/fuq ...
- CentOS 7 搭建 Ceph 集群(nautilus 版本)
搭建 Ceph 分布式集群( nautilus 版本 ) 一.服务器环境说明 主机名 角色 IP地址 ceph-admin ceph-deploy 192.168.92.21 ceph-node1 m ...
- virtualbox 虚拟3台虚拟机搭建hadoop集群
用了这么久的hadoop,只会使用streaming接口跑任务,各种调优还不熟练,自定义inputformat , outputformat, partitioner 还不会写,于是干脆从头开始,自己 ...
- 搭建Hadoop集群 (二)
前面的步骤请看 搭建Hadoop集群 (一) 安装Hadoop 解压安装 登录master, 下载解压hadoop 2.6.2压缩包到/home/hm/文件夹. (也可以从主机拖拽或者psftp压缩 ...
- Cloudera Manager安装_搭建CDH集群
2017年2月22日, 星期三 Cloudera Manager安装_搭建CDH集群 cpu 内存16G 内存12G 内存8G 默认单核单线 CDH1_node9 Server || Agent ...
- Linux Redis集群搭建与集群客户端实现(Python)
硬件环境 本文适用的硬件环境如下 Linux版本:CentOS release 6.7 (Final) Redis版本: Redis已经成功安装,安装路径为/home/idata/yangfan/lo ...
随机推荐
- 联想 lenove 3750 M4服务器更改启动项和管理口IP
联想 lenove 3750 M4服务器更改启动项和管理口IP 注: 因为在机房拍照的原因,再加上工作比较忙:整理成文档的时候有的过程已经忘记了,所以有的步骤可能会缺失,里面的选项都已经用中文方式表达 ...
- Linux进阶之Linux破解密码、yum源配置、防火墙设置及源码包安装
一.老师语录: 所有要求笔试的公司都是垃圾公司 笔试(是考所有的涉及到的点) 要有自己的卖点.专长(给自己个标签)(至少一个) 生产环境中,尽量使用mv(mv到一个没用的目录下),少使用rm 二.防火 ...
- 3.13eval函数
eval 函数 eval() 函数十分强大 -- 将字符串 当成 有效的表达式 来求值 并 返回计算结果 ```python 基本的数学计算 In [1]: eval("1 + 1" ...
- 大师画PCB板子
1.低频电路对于模拟地和数字地要分开布线,不能混用 2.如果有多个A/D转换电路,几个ADC尽量放在一起,只在尽量靠近该器件处单点接地,AGND和DGND都要接到模拟地,电源端子都要接到模拟电源端子: ...
- 使用Mybatis插件 PageHelper 模拟百度分页(Day_20)
生活中,要学会沉淀生命,沉淀心情,沉淀自己 模拟百度分页最终实现效果如图: 本篇博客运行环境 JDK8 + IntelliJ IDEA 2018.3 + Tomcat 8.5.31 准备好了我们就开始 ...
- Java--反射机制——反射 API(Day_04)
生活中迷茫感的产生,往往源之于坚持一件事放弃的那一刻,因为从那一刻起,你开始变得无聊,变得没有方向感. 运行环境 JDK8 + IntelliJ IDEA 2018.3 本文中使用的jar包链接 h ...
- mysql数据库-日志管理
MySQL 支持丰富的日志类型 事务日志:transaction log 事务日志的写入类型为"追加",因此其操作为"顺序IO":通常也被称为:预写式日志 wr ...
- 有关RootViewController设置的问题和Unbalanced calls to begin/end appearance transitions for <CYLTabbarController>
问题 今天做项目时遇到了一个问题,我想做一个登陆页面,在用户输入了登录名和密码后跳转到app主界面,最开始用的是在方法中新建一个appdelegate对象,再将其中的window属性设置Tabbar为 ...
- GO学习-(28) Go语言操作influxDB
Go语言操作influxDB 本文介绍了influxDB时序数据库及Go语言操作influxDB. InfluxDB是一个开源分布式时序.事件和指标数据库.使用Go语言编写,无需外部依赖.其设计目标是 ...
- Go语言的函数07---闭包练习(ATM存取款)
package main import "fmt" /* @ATM(闭包练习) ·写一个Atm(函数),返回存款,取款两个内层函数 ·存款,取款两个函数,都以一个金额为参数,返回存 ...