在Data Ontap系统中,aggregate是系统定义的一个逻辑容器,包含了存储系统物理方面的组成部分,例如磁盘和RAID组。aggregate为创建的volume提供存储空间。而volume的创建可以为用户的数据安全、备份、性能和数据共享等不同方面的需求提供支持。每个aggregate都具有自己的RAID配置、RAID组配置和磁盘分配设置。
在创建一个aggregate的时候,Data Ontap配置磁盘和校验盘到RAID组中。然后再利用RAID组来创建aggregate。再创建了aggregate后,还可以通过两种方式来扩展aggregate的存储容量。一个方法是向aggregate中的RAID组中添加磁盘的方式扩展aggregate的容量;另一种方式是建立一个新的RAID组,然后将这个RAID组配置到aggregate中来扩展存储容量。利用aggregate可以创建一个或是多个FlexVol。FlexVol(灵活卷)也是一种逻辑的文件系统,它使用aggregate中的物理存储资源和RAID配置。
Clustered Data Ontap系统可以提供很高的写操作性能,当一个客户端执行一个文件的写操作时,客户端的操作系统就会向Clustered Data Ontap操作系统发送一个写操作请求。Clustered Data Ontap系统将按照以下的顺序来处理这个写操作请求:
1. 当一个客户端的操作系统向Data Ontap系统发送一个写操作请求的时候,这个请求会首先发送到Data Ontap系统的network模块上;
2. Data Ontap系统的网络模块将检索volume的位置数据库,来定位这个volume驻留在哪一个aggregate上,另外,这个aggregate驻留在哪一个节点上。检索volume位置数据库的工作是由Data Ontap系统的网络模块来完成的。
3. 在检索完成volume的位置数据库之后,网络模块将数据传送到CSM―,CSM(Cluster Session Manager:集群会话管理器)。CSM的功能是控制通过集群互联的流量。
4. 通过集群互联,CSM发送数据到目标节点的CSM。
5. Clustered Data Ontap系统的storage layer包括了原来传统Data Ontap系统的WAFL文件系统组件和RAID组件(另外还有storage组件)。storage layer接收原数据,然后由WAFL文件系统来确定数据将被如何写入,这是WAFL的主要功能之一。
6. 在执行上面这些操作的时候,所有写请求的副本拷贝都被保存在NVRAM里面,主要是作为一个备份,来应对紧急情况的出现,比如系统掉电这种恶劣情况。NVRAM采用了电池保护,所以即使掉电,写请求也会被存储系统保存下来。在Clustered Data Ontap系统中,WAFL文件系统可以在两个建立了HA关系的节点上实现存储在NVRAM上数据的镜像。这样看来,当一个节点掉电的时间太长,导致保护NVRAM的电池的电量耗尽后,NVRAM上的数据也可以从HA节点的NVRAM上找到镜像的数据。这样就更好的避免了存储系统的失效事件的发生了。
7. 数据写入到NVRAM后,WAFL文件系统向客户端发送一个回执,通知客户端写操作已经成功了。其实这个时候,数据可能还没有实际写入到硬盘里面。这样做只是为了提高性能。
8. WAFL文件系统在将写操作数据写入到NVRAM之后,还会继续接收数据,直到CP事件的发生。CP即Consistency Point,一致性点。在CP发生后,WAFL再确定如何在磁盘上写入数据。CP事件的触发是由两个条件确定的。一是CP事件每隔10秒钟就会被触发一次;二是当NVRAM存储的容量达到50%的时候会被触发。
9. 当CP事件触发后,WAFL文件系统就会把保存有需要执行写操作的NVRAM存储空间里的数据锁定,然后实际地执行写操作。锁定数据应该是为了避免数据的一致性。
10.NVRAM没有被WAFL文件系统锁定的另一部分空间在这个时候可以继续用于输入操作请求。
11. 当CP完成后,NVRAM被锁定的部分将会被刷新,然后准备用来进行下一次的操作。
12. 当CP事件触发的时候,WAFL文件系统传送数据到RAID模块。
13. RAID组件计算校验信息,然后将计算出的校验信息添加到数据中,然后将数据发送到磁盘。然后,RAID通知storage组件,数据已经准备好了。
14.storage组件实际处理完成数据的写操作请求。
完成上面的所有操作后,一个数据的写操作就算完成了。
之前我们说过,在新的Clustered Data Ontap系统中,集群可以包含多个节点。具体的情况是在NAS环境下,可以包含24个节点。
至此本课程的第一个模块结束。
未完待续