4.2 使用 Intel DPDK 和 UNS 技术
Intel 使用该技术,在用户空间(user space)实现了全 DPDK 网卡及驱动、TCP/IP协议栈(UNS)、 iSCSI Target,以及 NVMe 驱动,来提高Ceph的 iSCSI 访问性能。好处:
- 与 Linux*-IO Target (LIO) 相比,其 CPU overhead 仅为 1/7。
- 用户空间的 NVMe 驱动比内核空间的 VNMe 驱动的 CPU 占用少 90%
该方案的一大特点是使用用户态网卡,为了避免和内核态的网卡冲突,在实际配置中,可以通过 SRIOV 技术,将物理网卡虚拟出多个虚拟网卡,在分配给应用比如OSD。通过完整地使用用户态技术,避免了对内核版本的依赖。
目前,Intel 提供 Intel DPDK、UNS 、优化后的 Storage 栈作为参考性方案,使用的话需要和 Intel 签订使用协议。用户态NVMe驱动已经开源。
4.3 CPU 数据存放加速 - ISA-L 技术
该代码库(code libaray)使用 Intel E5-2600/2400 和 Atom C2000 product family CPU 的新指令集来实现相应算法,最大化地利用CPU,大大提高了数据存取速度,但是,目前只支持单核 X64 志强和 Atom CPU。在下面的例子中,EC 速度得到几十倍提高,总体成本减少了百分之25到30.
5. 使用系统的工具和方法 - Ceph 性能测试和调优工具汇总本次会议上,还发布了若干Ceph 性能测试和调优工具。
5.1 Intel CeTune
Intel的该工具可以用来部署、测试、分析和调优(deploy, benchmark, analyze and tuning)Ceph 集群,目前它已经被开源,代码在这里。主要功能包括:
- 用户可以对 CeTune 进行配置,使用其 WebUI
- 部署模块:使用 CeTune Cli 或者 GUI 部署 Ceph
- 性能测试模块:支持 qemurbd, fiorbd, cosbench 等做性能测试
- 分析模块:iostat, sar, interrupt, performance counter 等分析工具
- 报告视图:支持配置下载、图标视图
5.2 常见的性能测试和调优工具
Ceph 软件栈(可能的性能故障点和调优点):
可视性性能相关工具汇总: