免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1822 | 回复: 1
打印 上一主题 下一主题

DS8000中NVS的工作机制 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-11-15 19:58 |只看该作者 |倒序浏览
NVS简介:DS8000中,每个CEC(POWER小型机)的主存都分为两个部分:cache和 non-volatile storage (NVS)。NVS即非易失性存储。NVS属于系统RAM,NVS上的数据在重启过程中不会发生改变。DS8000通过NVS对写数据实现掉电保护。



    NVS大小及配置:
    DS8700和DS8800的NVS最大可达到每个CEC 6GB,即一台DS8700/8800最大可拥有12GB的NVS。NVS在e-config中无法直接配置,其大小与处理内存的大小的比例为1:32




    e-config中Processor Memory仅对应cache的大小,即如果配置128G的Processor Memory,该8000系统将总共拥有128G的cache和4G的NVS。


   DS8700/8800中的卷根据所属LSS编号的奇偶性被分为两组,分别隶属于两台控制服务器(CEC)。

   在两台CEC同时正常工作的情况下,当一个卷发生写操作时,写入数据直接写入卷对应CEC的cache中,并与此同时保存一份拷贝到另一CEC的NVS中。数据通过cache写入,写入完毕后,另一CEC中保存在NVS上的副本将被丢弃。上图显示了CEC0的缓存内存被用于所有偶数编号(EVEN numbered)LSS成员的逻辑卷。同样,CEC1的缓存内存被用于所有奇数编号(ODD numbered)LSS成员的逻辑卷。当两个CEC都在运行时,对偶数编号LSS下属的逻辑卷的一个写操作的正常数据流是:

   1.数据写入到自己的CEC的缓存内存(数据写入CEC0的cache)
   2.数据写入到后备CEC的NVS内存(数据写入CEC1的NVS)
   3.报告给连接的主机,写操作已经完成
   4.写数据从缓存内存降级到磁盘阵列(数据从CEC0的cache写入磁盘阵列)
   5.写数据从后备服务器上的NVS内存中清除(数据从CEC1的NVS中清除)

    在正常工作的情况下,DS8800通过存储在后备CEC的NVS中的副本来保护写数据。为了确保这些快速写入的数据不会因为电源故障而丢失,DS8000包含了电池后备单元(battery backup units,BBU)。BBU专门针对在DS8000完全失去输入供电的事故中,保护CEC内存中NVS区域。此时,BBU并不是将NVS上的数据移动到磁盘阵列,而是移动到每个CEC内置的两块专门用来存储NVS内容的SCSI磁盘中

   当失去输入供电时,将发生以下事件:

    1. 所有HA卡I/O被阻止(Block)
    2. 每个CEC开始拷贝它们的NVS数据到内置的硬盘(不是存储的DDM)。对于每个CEC,制作两份NVS 数据的副本,每个内置硬盘一份
    3. 当拷贝进程结束,两台CEC关闭
    4. 当所有CEC关闭(或一个计时器终止),DS8700/8800停机

论坛徽章:
0
2 [报告]
发表于 2011-11-16 17:26 |只看该作者
学习了
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP