对搭建 MinIO 对象存储的一些疑问

heiya · 5 天前 · 2010 次点击

背景

  • 最近对已搭建的 MinIO 做了一些性能测试。服务为单实例部署,服务器配置为阿里云 ECS 实例 2c8g 、100Mbps 外网带宽、ESSD Entry 硬盘。
  • 在文件大小为 1000kb 、并发为 10 、持续时间 300s 、90%读文件的维度上,测试结果是(以读文件数据为例):平均响应时间是 606ms ,服务器处理时间是 29ms ,吞吐量是 16.35op/s ,服务器带宽被完全占满,cpu ,内存,硬盘各项指标均正常。
  • 由此可见主要的瓶颈是服务器的外网带宽,于是想到组建 MinIO 集群的方法提高吞吐量。

疑问

  • 问题随之而来。假设采用四台上述相同配置的 ECS 实例组成集群,使用单实例 Nginx (官方推荐的负载均衡器之一)做负载,理论上在 MinIO 层面带宽比单实例的带宽会高,吞吐量也会随之提高。但是否部署 Nginx 所在的服务器的带宽(假设也是 100Mbps )会是性能瓶颈?
  • 如果是性能瓶颈,那我现在想到的办法是做成 Nginx 集群,然后使用更高层的负载均衡器(例如 DNS 轮询、F5 等)将流量分发到不同的 Nginx 服务器上。不知道我这种想法是否正确?
  • 如果我的想法不正确,请不吝赐教。
举报· 2010 次点击
登录 注册 站外分享
18 条回复  
laminux29 小成 4 天前
社区就是这样,你是来提问的,大家不是你家长,不会惯着你。1 楼已经说的很明白了,你听不懂还嫌人家态度不好。 MinIO 、CephFS 之类的东西,本来就是低成本的线下内网部署,你在高溢价的云服务器上部署,根本不划算,而且这种云服务器最贵的就是外网带宽。就算要用云服务,直接去买云对象存储会更好,所以 1 楼才问你:图啥。
chinanala 小成 4 天前
分享下我们在用的低成本自建 OSS 方案: 阿里云买 2 台轻量 200M 机器做前端入口,普通 ECS 带块大硬盘,两者之间走内网。 只需要几百块,就能得到不限流量大带宽(晚高峰限速)大空间的自建存储,比直接用 OSS 要买好几个套餐包划算很多。
Int100 小成 4 天前
一楼虽然冲了点,但还是有价值的. 存储放公网,你采取了什么安全措施吗? 对于存储来说,可靠、安全、冗余这些优先于性能瓶颈. 其次,一楼这种表达方式隐含的不理解,也是因为 op 没有说明原始需求. 目测 op 只是弄来学习研究的,如果是这样,那怎么折腾都可以了.
kk2syc 初学 4 天前
搞 minio 又配上 nginx 确实很迷惑行为,但是人家说的没错,接受批评
erhandsome 初学 4 天前
@heiya #9 你需要的是云厂商的负载均衡( SLB )服务
keller 小成 4 天前
要做存储 可能带宽的单位要换成 G
Mithril 小成 4 天前
另外 MiniIO 还有 License 问题,你要考虑你的情况是否适用他那个 AGPL 的 License 。因为你这种架构本质上是在云平台上使用 MiniIO 搭建了对象存储服务,并提供给你的客户(如果你客户是直接拿链接从这个服务里下载文件的话)。 那么根据 AGPL ,你需要公开相关的所有代码。 本身 AGPL 就不是个很严谨的 License ,MiniIO 选择它也就是看中了这点,好方便他们推自己的商用 License ,所以大家当时都在骂。如果你的公司比较看重法务合规这块,那还是别省这么点流量费了。
Mithril 小成 4 天前
我们之前用 Ceph 试过,并没有比云厂商的 OSS 服务更好。你节省的那点流量费,一次炸锅的人工和损失就全兜回来了。 主要是你要做多层负载均衡,这系统架构就简单不了。你这好几台 ECS 要搞监控,报警,维护,等等一系列东西下来成本并不低。而且这对于你们来说也不是核心系统,你也要考虑花大精力去调查维护这东西到底值不值。 我觉得你有精力折腾这个,只为了节省这么点流量费,不如花点时间去跟云厂商要点折扣。或者把这些大文件存储业务单独换到别的更便宜的厂商去做更靠谱一点。
heiya 楼主 小成 5 天前
@MADBOB 感谢回复,目前是 OSS 和 MinIO 都在使用,现在 MinIo 是在阶段性尝试,只有一小部分数据在上边。我刚才翻了一下文档,确实是 ECS 按流量 单价:0.80 元/GB 。
12下一页
返回顶部