文件存储(也称为网络附加存储 (NAS))为应用提供文件级访问,以读取和更新可在多台机器之间共享的信息。一些本地文件存储解决方案具有纵向扩容架构,只需将存储空间添加到固定数量的计算资源即可。其他文件存储解决方案采用横向扩容架构,其中系统可根据需要将容量和计算(性能)逐步添加到现有文件系统中。在两种存储架构中,一个或多个虚拟机都可以访问存储空间。
虽然某些文件系统使用原生 POSIX 客户端,但许多存储系统使用的协议使客户端机器能够装载文件系统并访问文件,就像它们托管在本地一样。导出文件共享的最常用协议是 Linux(某些情况下是 Windows)的网络文件系统 (NFS) 和 Windows 的服务器消息块 (SMB)。
本文档介绍了共享文件的以下选项:
- Google Cloud Hyperdisk、Persistent Disk 或本地 SSD
- 托管式解决方案:
- Google Cloud Marketplace 中的合作伙伴解决方案:
所有 Google Cloud 服务的性能和可预测性的一个基本要素是 Google 多年来不断发展的网络栈。借助 Jupiter Fabric,Google 构建了一个强大、可伸缩且稳定的网络栈,它可以不断发展演变,而不会影响工作负载。随着 Google 在内部改进并增强其网络功能,您的文件共享解决方案也可以从提升的性能中受益。
Google Cloud 具有可以指定自定义虚拟机类型的特点,这也是帮助您从投资中获得最大收益的关键。在选择文件管理器的大小时,您可以选择一个适当的内存和 CPU 组合,以便您的文件管理器以最佳性能运行而不会超额订阅。
请注意,Cloud Storage 也是一种以低费用存储具有高冗余级别的 PB 级或 EB 级数据的好方法,但 Cloud Storage 的性能配置和 API 与此处讨论的文件服务器不同。
文件服务器解决方案摘要
下表总结了文件服务器解决方案和功能:
解决方案 | 最佳数据集 | 吞吐量 | 托管支持 | 导出协议 |
---|---|---|---|---|
Filestore Basic | 1 TiB 到 64 TiB | 高达 1.2 GiB/s | 完全由 Google 管理 | NFSv3 |
Filestore Zonal | 1 TiB 到 100 TiB | 高达 26 GiB/s | 完全由 Google 管理 | NFSv3、NFSv4.1 |
Filestore Regional | 1 TiB 到 100 TiB | 高达 26 GiB/s | 完全由 Google 管理 | NFSv3、NFSv4.1 |
Managed Lustre | 18 TiB 到 8 PiB | 最高 1 TB/秒 | 完全由 Google 管理 | POSIX |
NetApp Volumes | 1 GiB 到 1 PiB | 1 MB/s 至 30 GiB/s | 完全由 Google 管理 | NFSv3、NFSv4.1、SMB3 |
只读永久性磁盘 | 小于 64 TB | 240 到 1200 MBps | 否 | 直接附加 |
持久型磁盘和本地 SSD
如果您的数据只由单个虚拟机访问或者不会随时间变化,那么您可以使用 Compute Engine 提供的持久性磁盘(Hyperdisk 或 Persistent Disk),并完全不需要使用文件服务器。您可以使用 Ext4 或 XFS 等文件系统对 Hyperdisk 和 Persistent Disk 短时卷进行格式化,并以读写或只读模式将其挂接到虚拟机。这意味着您可以先将卷挂接到实例,将所需数据加载到卷中,然后同时将其作为只读磁盘挂接到数百个虚拟机。使用只读磁盘并不适用于所有使用场景,但与使用文件服务器相比,它可以大幅度降低复杂性。
持久性磁盘可提供一致的性能。您附加到实例的所有相同大小的 Persistent Disk 卷(以及 SSD Persistent Disk 的相同数量的 vCPU)具有相同的性能特征。在生产中使用磁盘之前,您无需预热或测试磁盘。
永久性磁盘的费用很容易确定,因为在预配卷之后不需要考虑 I/O 费用。您还可以根据需要调整永久性磁盘的大小。这样,您便可以从低费用和低容量的卷开始,而无需创建其他实例或磁盘来扩缩容量。
如果只关心总存储容量,则您可以使用低费用标准永久性磁盘。如需在持续耐用的同时获得最佳性能,您可以使用 SSD 永久性磁盘。
此外,正确地选择 Compute Engine 永久性磁盘容量和 vCPU 数量非常重要,以确保文件服务器的存储设备能够获得所需的存储带宽、IOPS 和网络带宽。虚拟机的网络带宽取决于您选择的机器类型。例如,A4 虚拟机的网络带宽上限高达 3,600 Gbps。如需了解详情,请参阅机器系列资源和比较指南。 如需了解如何调整永久性磁盘,请参阅永久性磁盘性能简介。
如果您的数据是临时的,并且要求延迟时间达到亚毫秒级和较高的每秒 I/O 操作次数 (IOPS),您可以利用高达 9 TB 的本地 SSD 来获得极致性能。本地 SSD 提供 GB/s 的带宽和数百万的 IOPS,同时不会耗尽分配给实例的网络带宽。但请务必注意,本地 SSD 在可用性、耐用性和灵活性方面存在一定的权衡取舍。
如需详细了解 Compute Engine 的存储选项,请参阅为云工作负载设计最佳存储策略。
选择文件存储解决方案时的注意事项
选择文件存储解决方案时,您需要在易管理性、费用、性能和可伸缩性之间进行权衡。如果您的工作负载定义明确,那么您会更容易做出决策,但通常情况并非如此。 如果工作负载随着时间的推移而发生变化或变化很大,那么为了实现灵活性和弹性而妥协费用是明智的,如此才能获得更适合您的解决方案。另一方面,如果您有一个暂存且明确的工作负载,您可以创建一个专门构建的文件存储架构,支持轻松拆卸和重新构建,以满足您的短期存储需求。
首先,您需要决定是为托管式存储服务、包含产品支持的解决方案还是不受支持的解决方案付费。
- 代管式文件存储服务是最容易操作的,因为 Google 或合作伙伴会处理所有操作。与大多数其他 Google Cloud 服务一样,这些服务甚至可以提供服务等级协议 (SLA) 以确保可用性。
- 非代管但受支持的解决方案可提供额外的灵活性。合作伙伴可以帮助解决任何问题,但文件管理器的日常操作则由用户执行。
- 不受支持的解决方案需要花费大量精力进行部署和维护,所有问题都需要由用户自己解决。本文档不涉及这些解决方案。
其次,您需要确定解决方案的耐用性和可用性要求。大多数文件解决方案都是基于可用区的解决方案。如果该可用区出现故障,默认情况下不提供保护。因此,您需要考虑是否需要能够防止可用区级故障的灾难恢复 (DR) 解决方案。您还需要了解应用的耐用性和可用性的要求。例如,您在部署中选择的本地 SSD 或永久性磁盘,以及文件解决方案软件的配置都将产生重大影响。每个解决方案都需要仔细规划,以实现高耐用性和可用性,甚至对可用区级和区域级故障的防范。
最后,应考虑您需要访问数据的位置(即可用区、区域或本地数据中心)。访问数据的计算场的位置会影响您的文件管理器解决方案选择,因为只有部分解决方案同时允许本地和云端访问。
托管式文件存储解决方案
本部分介绍了 Google 托管的文件存储解决方案。
Filestore Basic
Filestore Basic 实例适用于文件共享、软件开发和 GKE 工作负载。您可以选择使用 HDD 或 SSD 来存储数据,SSD 提供更好的性能。无论选择哪一种方法,容量都会逐步增加,并且您可以通过备份来保护数据。
Filestore Zonal
Filestore Zonal 可简化 Google Cloud 及混合云上的企业存储和数据管理。Filestore Zonal 支持经济高效的高性能并行全局数据访问,同时保持严格的一致性,由动态可扩缩分布式文件系统提供支持。借助 Filestore Zonal,现有 NFS 应用和 NAS 工作流可以在云端运行而无需重构,同时保留了企业数据服务的优势(例如,快照和备份)。借助 Filestore CSI 驱动程序,可实现容器化工作负载的无缝数据持久性、可移植性和共享。
您可以按需扩缩 Filestore Zonal 实例。这样,您就可以在需要时创建和扩展文件系统基础设施,确保存储性能和容量始终与您的动态工作流要求保持一致。随着 Filestore Zonal 集群的扩展,元数据和 I/O 性能都会线性扩缩。通过此扩缩,您可以增强和加速各种数据密集型工作流,包括高性能计算、分析、跨站点数据聚合、DevOps 等等。因此,Filestore Zonal 非常适合用于以数据为中心的行业,如生命科学(例如基因组测序)、金融服务以及媒体和娱乐。
为了进一步保护关键数据,Filestore Zonal 还允许您定期截取快照并加以保留、创建备份以及复制到其他区域。通过 Filestore,您可以从前面的任何恢复点开始,在不到 10 分钟的时间内恢复单个文件或整个文件系统。
Filestore Regional
Filestore Regional 是一种全代管式云原生 NFS 解决方案,可让您在 Google Cloud中部署基于文件的关键应用,其服务等级协议 (SLA) 提供 99.99% 的区域可用性。Filestore Regional 提供 99.99% 的区域可用性服务等级协议 (SLA),专为需要高可用性的应用而设计。只需点击几次鼠标(或几个 gcloud
命令或 API 调用),即可预配在一个区域内的三个可用区中同步复制的 NFS 共享。如果该区域中有任何可用区变得不可用,Filestore Regional 将继续向应用透明地传送数据,无需进行任何操作。
为了进一步保护关键数据,Filestore Regional 还允许您定期截取快照并加以保留、创建备份以及复制到其他区域。通过 Filestore,您可以从前面的任何恢复点开始,在不到 10 分钟的时间内恢复单个文件或整个文件系统。
为了进一步保护关键数据,Filestore 还允许您定期截取文件系统的快照并加以保留。通过 Filestore,您可以从前面的任何恢复点开始,在不到 10 分钟的时间内恢复单个文件或整个文件系统。
对于 SAP 等关键应用,数据库和应用层都需要具备高可用性。如需满足此要求,您可以使用内置数据库高可用性在多个可用区将 SAP 数据库层部署到 Google Cloud Hyperdisk Extreme。同样,NetWeaver 应用层级(需要跨多个虚拟机共享可执行文件)也可以部署到 Filestore Regional,该映像跨一个区域内的多个可用区复制 NetWeaver 数据。最终结果是一个具备高可用性的三层关键任务应用架构。
IT 组织还在 Google Kubernetes Engine (GKE) 上的容器中部署有状态应用。这通常会导致他们重新考虑用于支持这些应用的存储基础设施。您可以使用块存储(Hyperdisk 或 Persistent Disk)、文件存储(Filestore Basic、Zonal 或区域)或对象存储 (Cloud Storage)。Filestore Basic HDD for GKE 和 Filestore Multishares for GKE 与 Filestore CSI 驱动程序相结合,可让需要多个 GKE Pod 的组织拥有共享文件访问权限,为任务关键型工作负载提供更高的可用性。
Managed Lustre
Managed Lustre 是 Google 管理的服务,可为紧密耦合的 HPC 工作负载提供高吞吐量和低延迟存储。它可让您以高吞吐量、低延迟的方式访问大量数据集,从而显著加快 HPC 工作负载以及 AI 训练和推理速度。如需了解如何将 Managed Lustre 用于 AI 和机器学习工作负载,请参阅为 Google Cloud中的 AI 和机器学习工作负载设计存储。Managed Lustre 将数据分布在多个存储节点上,从而使多个虚拟机能够并发访问数据。这种并行访问方式消除了传统文件系统中出现的瓶颈,使工作负载能够快速注入和处理所需的大量数据。
NetApp Volumes
NetApp Volumes 是一种全代管式 Google 服务,可让您将共享文件存储快速装载到 Google Cloud 计算实例。NetApp Volumes 支持 SMB、NFS 和多协议访问。NetApp Volumes 以低延迟时间为应用提供高性能,且具有强大的数据保护功能:快照、副本、跨区域复制和备份。该服务适用于需要连续和随机工作负载的应用,而这些工作负载可扩缩成百上千个 Compute Engine 实例。只需几秒钟,强大的数据保护功能就可以预配和保护大小介于 GiB 到 PiB 之间的卷。NetApp Volumes 提供多种服务等级(Flex、标准、优质和尊享),可在不影响可用性的情况下为您的工作负载提供合适的性能。
Cloud Marketplace 中的合作伙伴解决方案
Cloud Marketplace 中有以下合作伙伴提供的解决方案。
NetApp Cloud Volumes ONTAP
NetApp Cloud Volumes ONTAP (NetApp CVO) 是一款由客户管理的云端解决方案,它在 Google Cloud中引入了 ONTAP(NetApp 领先的数据管理操作系统)的全套功能。NetApp CVO 部署在您的 VPC 中,并由 Google 提供结算功能和相应的支持。ONTAP 软件在 Compute Engine 虚拟机上运行,并结合使用永久性磁盘和 Cloud Storage 存储桶(如果已启用分层)来存储 NAS 数据。内置文件管理器使用精简预配功能来存储 NAS 卷,因此您只需为使用的存储空间付费。随着数据规模的扩大,额外的永久性磁盘会添加到聚合容量池中。
NetApp CVO 会将底层基础设施抽象化,可让您创建从聚合池中提取的虚拟数据卷,并与任何云环境或本地环境中的所有其他 ONTAP 卷保持一致。您创建的数据卷支持所有版本的 NFS、SMB、多协议 NFS/SMB 以及 iSCSI,并且支持跨电子设计自动化 (EDA) 以及媒体和娱乐等众多行业使用的各种基于文件的工作负载(包括 Web 内容和富媒体内容)。
NetApp CVO 支持节省空间的即时时间点快照、内置块级、增量永久备份到 Cloud Storage,以及针对灾难恢复的跨区域异步复制。借助选择 Compute Engine 实例和永久性磁盘类型的选项,您可以实现工作负载所需的性能。即使在高性能配置中进行操作,NetApp CVO 也可实现存储效率,例如重复信息删除、精简、压缩,还有将不经常使用的数据自动分层到 Cloud Storage 存储桶,使您能够在存储 PB 级数据的同时显著降低总体存储费用。
DDN Infinia
如果您需要高级 AI 数据编排,可以使用 Google Cloud Marketplace 中可用的 DDN Infinia。Infinia 是一款以 AI 为中心的数据智能解决方案,可针对推理、训练和实时分析进行优化。它支持超快速数据注入、富含元数据的索引编制,并可与 TensorFlow 和 PyTorch 等 AI 框架无缝集成。
以下是 DDN Infinia 的主要特性:
- 高性能:提供亚毫秒级延迟和数 TB/秒吞吐量。
- 可扩缩性:支持从 TB 级扩缩到 EB 级,并且可以在单个部署中容纳多达 10 万多个 GPU 和 100 万个同时连接的客户端。
- 具有可预测服务质量 (QoS) 的多租户:为具有可预测服务质量 (QoS) 的多租户提供安全的隔离环境,以实现跨工作负载的一致性能。
- 统一的数据访问权限:通过内置的多协议支持(包括与 Amazon S3 兼容、CSI 和 Cinder),实现与现有应用和工作流的无缝集成。
- 高级安全:具有内置加密、故障域感知清除编码和快照功能,有助于确保数据保护和合规性。
Nasuni Cloud 文件存储
Nasuni 用更简单且费用低廉的云替代方案替代企业文件服务器、NAS 设备以及所有关联的基础设施(包括备份和灾难恢复硬件)。Nasuni 使用 Google Cloud 对象存储来提供更高效的软件即服务 (SaaS) 存储解决方案,该解决方案能够通过扩缩来处理快速、非结构化的文件数据增长。无论员工位于何处,Nasuni 都能够帮助他们处理部门、项目和组织文件共享和应用工作流。
Nasuni 提供三个套餐,具有适合所有规模的公司和组织的价格,可根据需要增长和扩展。
它具有以下优势:
云端主文件存储空间(最多可节省 70%)。Nasuni 的架构利用内置的对象生命周期管理政策。这些政策可让您灵活使用 Cloud Storage 类别,包括 Standard、Nearline、Coldline 和 Archive。通过将用于主存储的即时访问 Archive 类别与 Nasuni 搭配使用,您可以节省高达 70% 的费用。
云端的部门和单位文件共享。Nasuni 的基于云的架构在Google Cloud 区域提供了一个单一的全局命名空间,对文件、文件大小或快照的数量没有限制,可让您通过标准 NAS (SMB) 驱动器映射协议将文件从桌面直接存储到Google Cloud 。
内置备份和灾难恢复。借助 Nasuni 一劳永逸的操作,您可以轻松管理全局文件存储。它包含备份和灾难恢复功能,可让您通过单个管理控制台随时随地监督和控制环境。
替换陈旧的文件服务器。借助 Nasuni,您可以轻松将 Microsoft Windows 文件服务器和其他现有的文件存储系统迁移到 Google Cloud,从而降低这些环境的费用和管理复杂性。
详情请参阅以下内容:
- Nasuni 导览
- Nasuni 和 Google Cloud 合作伙伴关系
- Nasuni Enterprise File Storage for Google Cloud 解决方案简报 (PDF)
- Cloud Marketplace 中的 Nasuni Cloud File Storage
- Nasuni 和 Google Cloud 博客
Sycomp 智能数据存储平台
借助 Google Cloud Marketplace 中提供的Sycomp 智能数据存储平台,您可以在 Google Cloud中运行高性能计算 (HPC)、AI 和机器学习 (ML) 及大数据工作负载。借助 Sycomp Storage,您可以并发访问数千个虚拟机的数据,通过自动管理存储层级来降低费用,并在本地或 Google Cloud中运行应用。Sycomp Storage 可以快速部署,并且支持通过 NFS 和 IBM Storage Scale 客户端访问您的数据。
IBM Storage Scale 是一个并行文件系统,可帮助安全管理大量(PB 级)数据。Sycomp Storage Scale 是一个并行文件系统,非常适合 HPC、AI、机器学习、大数据,以及需要符合 POSIX 标准的共享文件系统的其他应用。Sycomp Storage 具有适应性强的存储容量和性能扩缩功能,可支持小型到大型 HPC、AI 和机器学习工作负载。
在 Google Cloud中部署集群后,您可以决定要如何使用集群。选择是仅在云中还是在混合模式下(通过连接到现有的本地 IBM Storage Scale 集群、第三方 NFS NAS 解决方案或其他基于对象的存储解决方案)使用集群。
贡献者
作者:Sean Derrington | 存储组合产品经理
其他贡献者:
- Dean Hildebrand | 首席技术官办公室技术总监
- Kumar Dhanagopal | 跨产品解决方案开发者