点击上方蓝字 关注大侠之运维
后台回复99.99% 获取运维干货物
目前可用于对象的存储的服务可选择有很多,基本每家云厂商都有自己的产品,阿里云的OSS、腾讯云的COS、七牛云的Kodo、移动云的EOS、平安云的OBS等,开源产品轻量级有FastZDFS、重量级有ceph等。
但是种种原因吧,如各类云产品价格高昂,ceph运维的复杂与痛苦,直到发现了minio,目前我司已有多个系统已经放弃ceph,转而使用minio了。
那么minio哪些点值得选择呢?
♦️
minio介绍
为什么使用minio?
高性能
适用于海量数据场景,官方介绍,最大单个对像支持5TB。
非常适合存储海量的图片、视频、日志文件,甚至可以直接用来存储镜像。
MinIO用作云原生应用程序的主要存储,与传统对象存储相比,云原生应用程序需要更高的吞吐量和更低的延迟。而这些都是MinIO能够达成的性能指标。
云原生支持
MinIO 是在过去4年的时间内从0开始打造的一款软件 ,符合一切原生云计算的架构和构建过程,并且包含最新的云计算的全新的技术和概念。 其中包括支持Kubernetes 、微服和多租户的的容器技术。使对象存储对于 Kubernetes更加友好。
与S3兼容
简单来讲就是从现有的环境迁移改造非常简单,甚至不需要改代码,只需要调整配置即可
安装部署简单
如果是单机部署,直接下载官方提供的二进制文件,直接就可以启动一个实例。
不过有个尴尬的点就是目前minio国外源下载很慢,国内源常年404,所以这个二进制文件我至今没有下载到,有资源的朋友可以联系下。
♦️
minio集群部署
minio部署很简单,本文介绍通过docker部署集群,拉取镜像还是比较简单的
初始化docker环境
yum install docker
systemctl start docker&&systemctl enable docker
docker pull minio/minio
我们计划部署四个节点,四台分别执行
cat >> etc/hosts << EOF
192.168.5.2 minio-1
192.168.5.3 minio-2
192.168.5.4 minio-3
192.168.5.4 minio-4
EOF
四台分别执行
mkdir -p /data/minio/{data1,data2,data3,data4}
因为集群模式下不能使用根磁盘,这里使用docker卷作为挂载点。
docker volume create minio-data1
docker volume create minio-data2
docker volume create minio-data3
docker volume create minio-data4
四台分别启动,需要分别修改对应ip
docker run -d --name minioyy \
--restart=always --net=host \
-e "MINIO_ROOT_USER=admin" \
-e "MINIO_ROOT_PASSWORD=minio&prd" \
-v minio-data1:/data/minio/data1 \
-v minio-data2:/data/minio/data2 \
-v minio-data3:/data/minio/data3 \
-v minio-data4:/data/minio/data4 \
docker.io/minio/minio:latest server \
--address 192.168.5.2:9000 \
http://minio-{1...4}/data/minio/data{1...4}
访问ip+9000端口,用之前定义的账户登陆
界面管理很清晰,自带ui真的太强了,还有一些基础监控,这玩意是可以直接对接prometheus的,直接配置这个地址就可以:
/minio/prometheus/metrics
♦️
后续
最近没时间,后面会尝试直接在k8s中部署minio
还有关于从ceph到minio,从云产品如OSS迁移到minio的一些尝试
👆点击查看更多内容👆
推荐阅读
记得星标记一下,下次更容易找到我