雷涛:解析HDS AMS2000的控制器架构
将高端控制器架构带入中端
雷涛:HDS现在在新的2000系列产品当中做了什么样的创新呢?我们并不是将英特尔更高主频的CPU做了一个升级,也不是将更先进的存储介质拿到我们这里做了一个升级,我们是真正改变了一个存储本身的结构,在模块化存储采用了新的架构。我们原有的USP V采用的这种高端的三层分离的结构带到了中端系统,实现方式就是我们看到的双活的控制器技术。
现在很多中端厂商都是双活处理器,每个控制器都再处理相应的IO,但是这种双活有对称双活和非对称双活的区别,我们举一个例子,你一个IO下来以后,是不是两个控制器可以同时参与对你IO的处理,我们把这样叫对称双活,多数情况还有市面上所有模块化处理,往往都是对控制权的访问,在某一个时刻,这个数据线只是属于某一个控制区,要想实现两边的负载均衡,就是用将任务A扔给A,将任务B扔给B,这种形式实现的。这种双活的特性,一个实现的访问,它的优势就是在于准高端的架构,它可以使用户获得哪些益处呢?首先它优化了性能,我们可以看这张片子,这个片的就是典型的双活,左边就是标准的非对称双活,每一个IO的处理都是在控制器内部实现的,当我需要切换的时候,切换对某一个数据卷的控制权的时候,我需要将整个session切换到另一个控制器,这是通过主机的负载均衡软件时间的。
主机的负载均衡软件往往是需要一个IO的判定时间,它会有一个判断,比如说几十秒,因为左边一个处理断掉以后会重建另外一个处理,实现控制器对数据卷的访问,控制器在同一时刻只可能属于A或者只属于B。这样就耗费掉了大量的时间。
那么这样的情况下,如果业务很繁重的话,就会涉及到一个问题,当你前端断口业务从控制器A的端口进来了,但是响应时间很慢,这个oracle数据库已经超过10m的响应时间了,我需要提高它的速度,控制器也恰好空闲,我是否能够借助控制器A的端口访问B的后端,在高端上这是可以实现的,因为中间有一个全交换架构,所有前端和后端都是全透明的,都是互相访问的,高端前后端分离,它可以良好的解决一部分前端的负载均衡,前端的如果反应时间长了,可以切换到它,它可以通过前端的链路来实现。