写点什么

存储技术入门,这些硬件应该首先有所了解

发布于: 2021 年 05 月 24 日
存储技术入门,这些硬件应该首先有所了解

作为软件工程师是否有必要了解一下硬件,存在很大的争议,有些认为有必要,有些人认为没有必要。本号以为作为后端工程师,不至于面面俱到,但我们最起码应该懂一些硬件基本内容。这样在软件开发过程中视野会更宽阔一些。

存储开发工程师更是如此了,因此我们开篇先介绍一下存储技术相关的硬件,毕竟人类认识事物的规律是从具体到抽象嘛。理解了硬件及常见的拓扑连接,这样在软件开发的时候才能更有感觉。

对于传统数据中心的硬件架构,简化后的架构由服务器、交换机和存储设备构成。这三部分称为计算节点、交换节点和存储节点。对于云环境来说,其实也是包括这三部分,只不过计算节点通常是虚拟机或者容器集群,交换节点则是虚拟交换机,存储节点则是分布式的存储集群。下面我们按照上述三者的顺序介绍一下具体的硬件。

服务端硬件总览

我们所说的后端开发其实就是服务端,以某宝为例可能就是其后台服务。这些后台服务通常运行在一个数据中心,有很多服务器构成。除了服务器之外还有很多配套的设备。等一下,什么是服务器?

好吧,让我们慢慢道来。如果我们去数据中心,一进去的感觉应该是这个样子的。


图 1 数据中心

这一排排的就是机柜,我们平时所谓的服务器、交换机和存储等设备都放在这里面。这张图并不能看到实际的设备。我们先给一张总图,具体如图 2 所示,这张图包含我们平时使用的最近的设备。如图所示包括服务器、光纤交换机、磁盘阵列和磁带库等。其中上层的设备是服务器,中层的设备是光纤交换机,下层的设备是存储设备,包含磁盘阵列和磁带库。

图 2 物理连接图

如果我们简化一下,做成逻辑图如图 3 所示。可以看到服务器通过 HBA 卡和光纤交换机相连,而存储设备也通过 HBA 卡和光纤交换机相连;服务器之间通过以太网交换机互联。

图 3 物理连接图

上述只是一个简单的拓扑结构,实际数据中心要复杂的多,除了包含上述设备外,还包括核心路由器、核心交换机、防火墙和负载均衡器等等设备。这还不包括上述机柜、无烟灭火器和 UPS 等辅助设备。本文先介绍主要内容,后续再介绍其它设备。

服务器

服务器是一种计算设备,其构成包括处理器、硬盘、内存、系统总线等,和通用的 PC 机其实没什么本质区别,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。

下面这个是塔式服务器,从起外观来看跟我们家里的台式机并没有太大的区别。

图 4 塔式服务器正面

我们在看一它的内部,可以看到里面有 CPU 和内存条等组件,只不过更复杂一些,本图中就包含 2 颗 CPU 和 22 条内存。由于塔式服务器占用空间较大,因此在数据中心用的比较少了。

图 5 塔式服务器内部

下图是机架服务器,它可以想抽屉一样插入机柜中,计算密度比塔式服务器高很多。这个是目前比较主流的服务器。

图 6 机架服务器内部

还有一种密度更高的服务器,成为刀片服务器。这种服务器组成一组,放在一个框里面,可以整框使用。如图所示为整框的刀片服务器,其中竖条是计算单元,可以单独拿出来。


图 7 刀片服务器正面

交换机

交换机分是一种连接设备,用于实现多个设备之间的互联互通。最为常见的是以太网交换机,另外还有专门用于存储领域的光纤交换机。当前现在也有基于光纤的以太网交换机(例如万兆交换机),但存储光纤交换机和万兆光纤交换机还是不同的,主要差异是通信协议。

如图 8 所示的是用于存储的光纤交换机。这个是 24 口的交换机,还有 48 口等其他规格的。


图 8 光纤交换机

下面这个是以太网交换机,就是我们平时所说的交换机。

图 9 以太网交换机

交换机介绍完了,那怎么连接起来呢?网线就不用介绍,下面我们看看光纤线。

图 10 光纤线

其实除了上面介绍的以太网交换机和光纤交换机外,还有其它类型的交换机,比如 PCI-e 交换机和 IB 交换机等,本文暂时不做介绍。

适配卡

进行设备之间连接,除了上述交换机和线之外,还需要另外一样设备,成为适配卡。网卡其实也可以理解为适配卡的一种,除此之外还有 FC-HBA 和 SAS-HBA,也就是光纤卡和 SAS 卡。

如图是光纤卡的实物图,这里是 4 口的光纤卡,也就是可以同时插 4 条线。最早的光纤卡只有一个接口,后来出现了 2 口和 4 口的光纤卡。


图 11 光纤卡

如图 12 是 SAS 卡的实物图,SAS 连接通常是磁盘阵列控制器与 JBOD 之间的连接方式。

图 12 SAS 卡

磁盘阵列存储

磁盘阵列是存储装置,目前常见的存储装置有 SAN、NAS 和统一存储,统一存储是在一个设备中同时具备 SAN 和 NAS 的功能。从外观上来看,三者并没有本质的区别,样子跟机架式服务器很像。如图 13 是一个磁盘阵列的正面图。NAS 是网络连接存储,它可以通过以太网接入用户的网络空间,因此这里不做过多介绍。

这里重点介绍一下 SAN,也就是存储区域网络。这种存储设备需要专门的存储网络,也就是上文介绍的光纤网络(当然目前有基于 iSCSI 的 SAN,也就是 IP-SAN,可以通过以太网接入)。SAN 设备通常除了存储功能外,还有很多附加功能,从而实现对数据的可靠保护。通过存储网络建立服务器与存储设备的连接之后,在服务器上就可以看到存储设备划分的空间,其形式就是一个磁盘,跟本地磁盘没有任何差异。


图 13 磁盘阵列 SAN 正面

如图 14 是磁盘阵列的后端,可以看出该设备包含的接口有 FC 接口、千兆口、万兆口和 SAS 口。其中前三者用于和服务器相连,也就是组成 FC-SAN 或者 IP-SAN,而后者则与 JBOD 相连。


图 14 磁盘阵列 SAN 背面

我们从图 13 可以看出该设备有一些磁盘,但数量并不多。因此可能存在扩展空间的情况,这个时候就用到了 JBOD。JBOD(Just a Bunch Of Disks,磁盘簇)是在一个底板上安装的带有多个磁盘驱动器的存储设备。通常又称为 Span。 和 RAID 阵列不同,JBOD 没有前端逻辑来管理磁盘上的数据分布,相反,每个磁盘进行单独寻址,作为分开的存储资源。JBOD 的磁盘资源会映射给磁盘阵列的控制器,从而实现统一的管理。

图 15 磁盘阵列扩展

当然,除了上面介绍的存储,还可以通过普通服务器搭建分布式存储,这个不属于本文介绍范围。需要介绍的设备太多了,今天先到这,后面再进一步介绍。

硬盘

想必大家都见过硬盘,但内部的结构未必都知道。如图是机械磁盘的内部结构,本文先了解一下,后面我们会详细的剖析磁盘的内部结构。存储开发工程师理解磁盘的内部结构非常必要,至于为什么我们后续再做介绍。

图 16 磁盘内部结构

另外一个目前比较流行的是 SSD 设备,SSD 设备分为硬盘和卡两种形态。其中 SSD 硬盘的外观跟磁盘一样,从外面看不出差异。

图 17 SSD 硬盘

SSD 卡的差异非常明显,从外观卡非常像 HBA 卡。但 SSD 卡最大的特点是其上有很多存储颗粒,也就是存储芯片。如图 18,左侧是 SSD 盘,而右侧是 SSD 卡。

图 18 SSD 硬盘与卡

今天先到这里,后续我们再深入地介绍存储技术的相关内容。

发布于: 2021 年 05 月 24 日阅读数: 10
用户头像

itworld123 2019.04.21 加入

还未添加个人简介

评论

发布
暂无评论
存储技术入门,这些硬件应该首先有所了解