最近手头项目接近尾声,希望花些时间陆续把以往设计经验分享出来,当然,这仅仅是来自我个人的经验。
我会尽量舍弃些宏观概念,包括项目潜在效益,成本保护等等,因为我觉得那只不过是sales 该掌握的。
关于SAN 的设计-Host 设计:
位于整个SAN架构角色,我们通常会把注意力放在性能上面,当然不否认的说,这也是很重要的,关于应用主机(物理)该如何配置呢?我分享下经验
在很多时候,用户因为预算,问我能否配置一台组装的应用服务器,当然内地很多厂商已经很成熟的纳入这项业务,而我通常建议:您最好不要这样做。
组装服务器往往会在价格存在优势,或者同价格的性能上存在优势,但是我们很有可能失去稳定性,我一直把稳定性的优先级放在性能至上。一线厂牌的Server 在出厂之前都是经过严格测试的,并且得出最终的年故障停机率。并且每台设备售出,信誉上要向全球负责,组装服务器往往可能会忽略这些细节,总之,预算紧,请配备一台低端的一线厂牌的服务器。
PCI 总线:
FC HBA 与 iSCSI NICs 往往会产生很大的流量通过PCI 总线,选择最佳总线速率,确保系统能够处理预期的工作负载。
另外:如果预期考虑到PCI 总线会有很大的流量负担,请优先考虑传统,独立的服务器,而不是刀片服务器,经验丰富的工程师必定知道,刀片服务器总线及适配器往往是统一汇集的。
Multiport HBA’s
Multiport NIC’s
多个端口的适配器确保链路冗余,在安全上是很重要的。请确保FC HBA支持发起模式
端口速率的选择,我没有主观的建议,因为与实际的生产环境有很大的关系,但是我提供一些数值,再压力测试之后,能通过这些数值选配最佳速率的适配器。
表1-HBA卡最大的性能:
端口速率 | IO/s | MB/s 半双工 | MB/s 全双工 |
2 Gb/s | 100000 | 200 | 400 |
4 Gb/s | 150000 | 400 | 800 |
8 Gb/s | 200000 | 800 | 1600 |
表1显示的光线适配器最大速率,但是通常在适配器工作时候会有部分的额外损耗,实际速率通常是理论值的66%:
表2-HBA卡实际工作速率
端口速率 | IO/s | MB/s 半双工 | MB/s 全双工 |
2 Gb/s | 65000 | 180 | 360 |
4 Gb/s | 100000 | 360 | 720 |
8 Gb/s | 130000 | 720 | 1440 |
*表2上面的值,根据实际环境的因素,可能会更高或更低,实践环境下,可以利用此数值进行参考。
端口连接:
如果已经配置冗余端口,尽可能把端口物理隔离。
比如HOST 有2块双端口的HBA卡,一方面连接带有双控的存储1,一方面连接带有双控的存储2.可以分别占用2块卡各一个端口连接存储1,其余连接存储2.
表3-iSCSI 平均速率
端口速率 | IO/s | MB/s |
1 Gb/s | 12000 | 80 |
10 Gb/s | 80000 | 530 |
*表3上面的值,根据实际环境的因素,可能会更高或更低,实践环境下,可以利用此数值进行参考;
另外:iSCSI 通常会比FC 造成更大的性能开销。尤其是CPU,因为通过Ip封装的SCSI命令,要靠CPU进行处理。通常iSCSI 的发起端,要比iSCSI的目标端带来更大的开销。
我建议为每一个iSCSI发起端/目标端增加一颗CPU(Core);
多少颗CPU(Core)
取决于服务器有多少IO / s必须被处理;适当数量的cpu必须选择。
另外:之前遇到一个问题,发生在一台Esxi的Host 上面,一颗多核心的CPU,其中一个核心工作负载接近90%以上,而其它几个核心似乎10%以下。这颗CUP的属性是:基于Inter Xeon 5系列,解决的方法是,进入BIOS ,关闭类似一个TurboBoot功能,然后得到解决。
操作系统:
这一方面似乎没有太多的介绍,因为根据业务类型,客户早已定性。
但是我建议,如果采用Windows Server 的Host,尽可能使用英文系统(语言),通常一个故障出现是时,我们无法立刻排除,只能把错误信息(或日志)反馈给供应商,反馈的信息如果存在中文信息,那么对于某些外籍的Support来说,就会降低效率,英文是全球的通用语言,所以我建议使用英文。