我们试用了戴尔ObjectScale社区版,它并不完美
Dell 通常专注于文件管理器游戏,但他们涉足对象存储,并且有一个非常古老的产品 ECS。这是有道理的,它是磁带的升级版,不适合 HDFS 现代化或数据库工作负载等动态工作负载。不用说,AI 是不可能的。几年来,Dell 一直在调侃一种名为 ObjectScale 的新的“现代”产品。它的设计看起来像 MinIO,在 “即将推出 ”类别中花了几年时间。希望获得它的客户大多被告知要考虑 2025 年 - 但有一个社区版本可供下载。我们决定试一试。结果并不好。
初始硬件要求
在评估任何软件时,初始设置和安装必须尽可能方便用户使用。软件应快速设置,可用选项和配置应一目了然,并且通常可以使用最少的默认配置启动并运行。到达你好世界是一个相当繁重的负担。ObjectScale 对硬件的要求很高,需要 4 个运行 OpenShift 的大型硬件节点,每个节点都具有以下规格。预计在设置上花费 10-15 美元:
- Red Hat OpenShift Container Platform (OCP) 版本 4.13.x 和 4.14.x
- 最少 4 个节点,每个节点 192 GiB RAM
- 每个节点至少需要:
1 . 建议使用 20 个物理 CPU 内核。
2 . 1 个 500 GB (~465 GiB) 未使用的 SSD。
3 . 128 GiB RAM,用于 ObjectScale。
4 . 5 个未使用的数据磁盘。
您可以使用此主机下载和提取安装 ObjectScale Software Bundle 所需的 ObjectScale Software Bundle 软件包和其他资源。购买和配置硬件后,必须安装以下软件版本:
- Helm v3.38 或更高版本。
- Kubectl v1.26 或 v1.27。
- Podman v4.3.1 版本
- 集群模式下的 PostgreSQL 服务器,用于冗余
数据库
PostgreSQL 很棒。它是目前最好的 RDBMS 之一,并且经受住了时间的考验。即使在今天,它也可以支持高级对象存储(如 MinIO)作为表的外部数据存储。PostgreSQL 甚至可以存储矢量数据和其他 AI/ML 元数据,以供以后引用和获取。但是,对于对象元数据来说,这是一个糟糕的解决方案。遗憾的是,这就是 ObjectScale 选择存储其元数据的地方。在此部署中,PostgreSQL 不会扩展到几十 PB 以上。它成为瓶颈。你猜怎么着,AI 的世界比几十 PB 还要大。大得多。以下是其中的一些问题:
- PostgreSQL 必须始终快速且易于访问。它是一个 RDBMS 数据库,其体系结构与某些较新的数据库不同。虽然与其他 RDBMS(如 MySQL)相比,PostgreSQL 可以很好地扩展,但它仍然不像添加节点那样简单。您需要考虑数据的存储位置、分片以及其他要求。
- 始终可访问意味着 PostgreSQL 集群需要是冗余的,以防节点发生故障。这需要多个处于主备模式的多个 PostgreSQL 节点,如果 PostgreSQL 出现故障,整个存储将脱机,从而产生另一个故障点和技术债务,该债务有可能仅仅因为一些辅助节点滞后而使整个存储基础设施脱机。
除了这些挑战之外,您还必须像管理数据库一样管理它。这意味着备份数据,进行定期维护,然后测试备份的数据,以确保在发生故障时数据是可恢复的。基本上,它会产生一笔巨大的技术债务,而这里本不需要。我们正在寻找的只是简单、安全、高性能的存储 - 对吧?
Docker 中心
这可能是我见过的这种设置中最具侵入性的东西之一。为了让 ObjectScale 安装其映像,它需要对 Docker Hub 的访问权和完全访问权限,以便它可以写入其映像数据。我们不知道您为什么会做出这个决定,但可以推测:
- 它们将安装在 OpenShift 上的 docker 镜像与下载的 .zip 文件捆绑在一起。
- 因此,他们需要某种 Image Registry 来推送这些镜像,以便 OpenShift 可以拉取它们?
这可以通过将这些映像托管在 Dell 托管的外部注册表或许多可用的公共注册表中来解决。这种联系既奇怪又尴尬。如果 Docker Hub 更改了其使用条款,该怎么办?
社区许可证
当 Dell 根据购买、评估或其他事件向客户颁发新的许可证权利时,这些权利将与唯一的许可证激活码 (LAC) 相关联。安装 ObjectScale 后,Dell 会向客户提供的与 Dell 帐户关联的电子邮件地址发送一封 LAC 信函。此电子邮件包含激活 ObjectScale 许可证所需的信息和步骤。虽然这在企业环境中可能不是什么大问题,但对于社区版本来说,这没有意义。它增加了几个小时的等待。就好像他们希望你失去兴趣一样。这就像购买 PS5 并等待 2-3 小时更新,然后再等待 2 小时下载游戏。那不会很顺利。不幸的是,这就是体验。
可扩展性和操作
即使在社区版中,也必须有一些基本方法来扩展集群,以了解当数据的一部分存储在多个节点中时数据的工作原理。这有助于您以一种无需考虑处理该问题的方式设计应用程序。但它仍然需要测试。对于 Dell ObjectScale,没有关于如何将现有的 ObjectScale 4 节点实例扩展到具有更多驱动器的多个节点的明确说明。许多文档都在他们自己的付费支持门户后面,我相信这些门户仅适用于 Enterprise 许可证客户。这很好,但是如果你不能用它做任何事情,为什么还要有一个社区版呢。
无社区支持
说到一般的支持,无论是来自 Dell 还是来自社区,对 ObjectScale 的支持几乎不存在。这可能是由于多种原因
- ObjectScale 作为一种产品相对较新。因此,可能没有足够的安装来建立社区支持。
- 但最有可能的原因是没有人真正使用社区版。这实际上迫使客户与 Dell 的销售团队接洽,他们可以“掌控”任何评估。这本身并不是批评,这只是他们的商业模式。
- 最后,社区版本似乎是 crippleware。例如,不支持跨多个站点的许多复制功能。它有文档记录,但不受支持,这意味着它仅在 Enterprise 版本中。同样,我们不是在评判,但它引出了一个问题,为什么还要做社区版?没有社区,也没有太多的版本。
MinIO 社区版
另一方面,启动并运行 MinIO 社区版非常简单。您可以使用单个 VM、Kubernetes/OpenShift 集群或仅使用裸机。您甚至可以使用 Docker 让 MinIO 在他们的开发计算机上工作。MinIO 将相对轻松地在它们上运行。没有要求它必须在 OpenShift 或 Kubernetes 上进行测试才能开始。您只需下载二进制文件并开始使用。哦,对了,我们有没有提到它只是一个二进制文件?这是正确的。您想要对对象存储所做的一切都捆绑在一个精简二进制文件中,该二进制文件附带一个控制台 UI 以及一个名为 mc 的 CLI。例如,我们的大多数开发人员都是第一次直接在他们的笔记本电脑上启动 MinIO,例如具有 8GB 内存和 4 个 CPU 内核的 Macbook Air。如今,为 VM 分配资源非常困难,更不用说在社区版中运行某些内容的专用硬件了。MinIO 的美妙之处在于,与其说硬件成为阻碍因素,不如在 Macbook Air 上验证它的概念,然后采用您测试过的相同配置,并在稍后在数据中心的开发环境中启动。再读一遍最后一部分,因为它真的很重要。您可以从笔记本电脑进入生产环境,而无需更改代码。如果您要投入生产,您将需要 Enterprise Object Store(在此处定价),它具有附加功能、24/7/365 直接工程师支持和许多其他功能。但是,您可以使用开源版本进行生产(前提是您遵守 AGPL v3 许可证的条款)。有一些大规模的部署已经做到了。
总体思路
ObjectScale 的概念是它是“新的”,可以在具有容器和编排的云原生世界中工作。实际上它是“古老的”,团队中的某个人甚至使用了“古老”一词。安装方法当然符合这种描述,他们使用 PostgreSQL 来存储元数据也是如此。到头来,我无法启动和运行 ObjectScale。如果你读过我的其他博客,你就会知道这可能不是我技术限制的作用。我调试了一个多星期,但由于缺乏任何社区支持或来自 Dell 的支持(意料之中)阻碍了很多探索。但不要只听我们的一面之词,我们鼓励您自己尝试。完成后,您可以查看 MinIO。看看 Kubecon 的这张图,看看人们最喜欢 MinIO 的什么,即易于安装和可管理性。ObjectScale 与此相反。

当您将两者并排放置时,利用 Dell 为您构建的简洁小功能将所有数据迁移到 MinIO 上。