HarmonyOS开发者限时福利来啦!最高10w+现金激励等你拿~ 了解详情
写点什么

虚拟化为 NFS 提供新机遇

  • 2013-10-28
  • 本文字数:2216 字

    阅读完需:约 7 分钟

NFS(网络文件系统)诞生已经有三十多年的历史,虽然有众多其他选择,但是很多厂商和解决方案提供商仍然选择 NFS 作为其虚拟化存储技术,为什么呢?资深专家 Paul Venezia 从多个角度分析了NFS 复兴的原因,可能NFS 并不完美,但是新技术并没有足够淘汰NFS 的优势。

NFS 是第一个现代网络文件系统(构建于 IP 协议之上)。在 20 世纪 80 年代,它首先作为实验文件系统,由 Sun Microsystems 在内部完成开发。NFS 协议已归档为 Request for Comments(RFC)标准,并演化为大家熟知的 NFSv2。作为一个标准,由于 NFS 与其他客户端和服务器的互操作能力而发展快速。标准持续地演化为 NFSv3,在 RFC 1813 中有定义。这一新的协议比以前的版本具有更好的可扩展性,支持大文件(超过 2GB),异步写入,以及将 TCP 作为传输协议,为文件系统在更广泛的网络中使用铺平了道路。在 2000 年,RFC 3010(RFC 3530 )将 NFS 带入企业设置。Sun 引入了具有较高安全性,带有状态协议的 NFSv4(NFS 之前的版本都是无状态的)。如今,NFS 是版本 4.1(RFC 5661),它增加了对跨越分布式服务器的并行访问的支持。

Paul 认为 NFS 在虚拟化环境中的复兴表明,一些好的想法不会过时:

一些技术的运行得这么好,以至于它们已经成为不朽之作——也许,不是因为它们是完美的,而是因为新技术没有能足够的提高自己的优势来推翻旧技术,即使它们可以对旧技术产生一定的冲击。NIS 就是这方面的一个例子。虽然现在有许多新的网络认证机制可以用,但是 NIS 仍然是无处不在。另一个例子就是 IPv4,虽然 IPv6 是更具有扩展性和更加现代化,但是,我们大多数人仍然在使用 IPv4,所以,要等待 IPv6 的到来,我们还需要等待一段时间。再有就是 NFS,它明年就将“年满”30 了。NFS 作为一个强大的分布式文件系统非常有用,这使得它仅仅通过做了一些改变就从大型机时代转型到虚拟化时代。如今最常用的 NFS 是 NFSv3,而它还是 18 年前的产品。然而,即便如此,它依然在全世界范围内被广泛使用。

曾经有一段时间,NFS 的发展陷入了低谷,它只被用于 Unix 上,服务于各处的 Solaris、Linux 和 FreeBSD 的文件系统,但是由于它太过老旧和不安全被许多厂商避之不及,不能广泛应用。即使是虚拟化时代的到来,当时也没有立刻让 NFS 立刻火起来,,充其量是文件系统的一个后备选项。iSCSI 现在呈上升趋势,光纤通道是快速访问网络存储资源的媒介,NFS 只是的一种。但随着 10G 网络的广泛使用以及随后的 10G 端口的价格下降,NFS 已经看到了复兴的希望,特别是在虚拟化领域里。当然,仍然有成千上万的 Unix 机器使用 NFS, 但现在也有数百万通过虚拟机管理程序运行以 NFS 存储的虚拟化 Windows 服务器。越来越多的存储厂商出于各种各样的原因,推荐 NFS 而不是 iSCSI 作为虚拟化部署的首选。

Paul 分析了 NFS 复兴的原因:首先,NFS 在使用和管理方面远远比 iSCSI 简单。你没必要移除每一套虚拟化主机的 LUNs(或者在某些虚拟机管理程序中,需要移除每一台机器的 LUNs);相反的,你可以仅仅把文件系统导出到一个委托的封闭的存储网络中,这样任何一台主机就都可以正常的玩游戏。当然了,你也可以没有进行 CHAP 认证和授权,当然这在许多情况下也不是必须的。在许多数据中心里, iSCSI 认证的存在仅仅是为了在扫描的时候,阻止没有访问权限的主机访问 LUNs。 现如今通过 iSCSI 而不是文件系统的存储方式加重了在主机自身上管理并发主机访问的负担。所有的锁管理和写管理都必须在存储阵列以外解决,这意味着当一台主机出现问题,你就有可能遇上灾难性的后果。

有几次,我已经完全失去了一个 iSCSI LUN,这时一场几台 ESXi 主机之间的冲突刚刚结束,结果导致了 LUN 上的 VMFS 导致了严重的损坏。我不得不销毁卷,然后从备份中重新创建。在 NFS 中,文件系统层中的所有任务都被阵列来处理,对于多系统的访问,这是一种更加紧密的环境——就像在虚拟化环境中一样。

此外,Paul 指出,NFS 导出的卷更容易被作为一个整体来管理。如果你需要调整 NFS 卷上的文件,你可以从一个工作站或者不在卷上运行的虚拟机来挂载。在 Linux 上,你可以仅仅使用几条 Linux 工具箱中的命令来备份整个 NFS 卷。如果你这样做,你不用担心自己会踩到任何一根脚趾。但是如果你因为表达格式错误不经意间把 iSCSI LUN 挂载到错误的机器上,所有的数据都会丢失。在许多情况下,你可能会发现,NFS 在性能上击败了 iSCSI。根据使用中的传输和存储情况, NFS 在某些工作负载的情况下吞吐量可以超过 iSCSI,尤其是当写入次数特别频繁的时候。在最坏的情况下,NFS 的性能通常与 iSCSI 相差无几。iSCSI 有先进的工具集,但是对于一些原始操作,一些存储厂商支持基于 NFS 的 VAAI,如完全的复制和卸载克隆。

NFS 与光纤通道是两种不同的讨论话题,考虑到光纤通道需要专用 HBA 和交换机,但是即使这样,在与 FCoE(以太网光纤通道)对比中,NFS 非常轻易地就赢得“简单性”方面的胜利。 在恢复性方面, iCSCI 和 FiBer Channel 或者 FCoE 的冗余的存储路径比 NFS 更加先进。尽管大多数虚拟机管理程序将允许多个并发的存储路径,而 NFS 仅限于故障转移和绑定的网卡聚合。然而,在实践中,这通常不是一个显著的问题。此外,人们希望 NFSv4 的广泛采用,将给人们带来多路径和附加的安全特征。曾经有几年,iSCSI 是虚拟化世界的宠儿—至少对于那些不要求当时的速度比光纤通道更快的公司是这样认为的。但是,趋势似乎现在正在改变,NFS 正在被重新推回到聚光灯下。

2013-10-28 06:031907
用户头像

发布了 501 篇内容, 共 255.9 次阅读, 收获喜欢 60 次。

关注

评论

发布
暂无评论
发现更多内容

MySQL性能优化(五):为什么查询速度这么慢

xcbeyond

MySQL 查询优化 MySQL性能优化

第6周课后练习-请简述CAP原理

Dawn

极客大学架构师训练营

天元MegEngine深度学习框架贡献者计划全面启动!

flashrunrun

人工智能 学习 开源 AI

第6周作业

andy

再强调一遍, 我为什么不建议大家接外包干私活?

非著名程序员

程序员 外包 提升认知 接私活

开源数据交换(client)

李孟聊AI

Java 大数据 flink spark 数据交换

MySQL性能优化(六):常见优化SQL的技巧

xcbeyond

MySQL MySQL性能优化 SQL优化 优化技巧

如何在 3 个小时内完成一周的工作

escray

从一盏路灯,看亿万级联接的智能之路

华为云开发者联盟

人工智能 物联网 智能设备 华为云

SaaS是「包治百病」的良药吗?

ToB行业头条

课程总结

Thrine

腾讯的区块链为何败给了老干妈的“萝卜章”?

ToB行业头条

未来的智慧城市:未来的城市生活愿景

网站,小程序,APP开发定制

MySQL 三万字精华总结 + 面试100 问,和面试官扯皮绰绰有余(收藏系列)

大头星

Java MySQL 面试

分布式存储系统doris

Thrine

博睿宏远获颁“2020开发与技术企业服务奖”

博睿数据

运维自动化 开发工具 博睿宏远

指数 | 2020年6月北京BGP机房网络质量评测报告

博睿数据

评测 博睿宏远 指数

没错,用三方 Github 做授权登录就是这么简单!(OAuth2.0实战)

程序员小富

Java GitHub oauth2.0

MySQL 连接查询超全详解

X先生

MySQL 数据库

MySQL性能优化(四):如何高效正确的使用索引

xcbeyond

MySQL 索引 MySQL性能优化

海南七星彩网站源码结算功能开发

网站,小程序,APP开发定制

HashMap学习总结

大刘

hashmap hash

你与30W奖金只差一个 Apache Flink 极客挑战赛的报名

Apache Flink

flink

Spring循环依赖及解决方式

张sir

Java spring 循环依赖

详解区块链应用市场与落地应用现状

CECBC

MySQL性能优化(七):MySQL执行计划,真的很重要,来一起学习吧

xcbeyond

MySQL MySQL性能优化 执行计划

案例解析丨金蝶K/3 Wise接入华为云RDS数据库SQL Server

华为云开发者联盟

MySQL 数据库 Serverless 数据 华为云

数据结构学习心得

程李文华

第6周总结

andy

JDK1.8新特性(一):JDK1.8究竟有哪些新特性呢

xcbeyond

jdk8 新特性 JDK1.8新特性

路过,凌晨2点的南京

小天同学

总结 思考 个人感悟 夜归人

虚拟化为NFS提供新机遇_服务革新_崔康_InfoQ精选文章