Intel架构优化OpenStack对象存储
黄辉 发表于:13年04月12日 11:00 [原创] 存储在线
4月10日、11日,2013年英特尔信息技术峰会(IDF)在北京国家会议中心举行,本次IDF的主题为“未来,用‘芯’体验”,这意味着英特尔将继续以用户体验为核心,立足英特尔“芯”架构,扩大和深化产业合作,全面推动计算技术创新、芯片制造创新、应用体验创新、终端形态创新和云端智能创新。会上,来自全球各地的技术公司及数千名软硬件开发人员、技术管理人员、媒体和分析师共聚北京,一起体验最新技术进展及探讨未来计算的创新趋势。敬请关注DOIT全程直播报道!
OpenStack Object Storage(Swift)是OpenStack开源云计算项目的子项目之一,被称为对象存储,提供了强大的扩展性、冗余和持久性。
上图介绍了Swift的主要结构、模块和主要功能。Intel的固态硬盘和万兆网卡对Swift的架构优化十分明显的。IDF2013上的课程中介绍了一个配有Intel架构的Swift。
Swift测试环境。环境由4个压力客户端、1个Proxy服务器以及4个存储服务器组成,存储单元为SATA磁盘以及Intel的千兆网卡。压力测试工具为COSBench测试指标包括IOPS、RESP时间以及成功率等。
测试结果显示Proxy服务器的网卡明显制约了整个系统性能的提升。
在使用了Intel的万兆网卡之后,出现了软中断不均衡的问题。Intel的解决方案是每个中断绑定到不同的core。
Intel的固态硬盘主要用于存放热数据或者相关的索引数据。Account和Container数据可以被存到SSD中。
Swift调优总结
配置示例
硬件:
Proxy服务器使用万兆网卡或者负载均衡器使用万兆网卡
Storage服务器挂载更多的磁盘,增加并行写
SSD存储Account 和Container数据
软件
绑定中断号到不同的CPU上
增加memcached的内存大小和并发连接数
增加内核NAT hash表的大小
Swift*配置
Proxy服务实例:64(两倍于CPU核数)
Object服务实例:16(CPU核数一半)
Account服务实例:16(CPU核数一半)
Container服务实例:16(CPU核数一半)
XFS inode大小:1024
其他配置采用默认值
Memcached做缓存
经过优化的Swift架构