Ceph调优指南
1. Ceph延迟分析
1.1 客户端到主OSD
客户端与主OSD通信时,平均延迟约为100微秒。若使用1G网络,该延迟可能接近1毫秒。可通过 ping 或 iperf 工具测量两节点间的往返延迟来确认此数值。在1G网络下,即使无其他延迟源,最大同步写入IOPS约为1000。客户端自身引入的延迟相对其他源而言极小,故在图中未体现。
1.2 主OSD到副本OSD
运行Ceph代码的OSD在处理请求时会引入延迟,该延迟受CPU速度影响。高频CPU能更快执行代码路径,降低延迟。早期主OSD会将请求发送至副本集中的另外两个OSD,这些请求并行处理,若后端磁盘能承受负载,从2副本增加到3副本时延迟增加极小。主OSD与副本OSD间的额外网络跳数也会为每个请求引入延迟。
1.3 主OSD到客户端
主OSD将请求提交到日志并收到所有副本OSD的确认后,可向客户端发送确认并提交下一个I/O请求。日志提交延迟因使用的介质类型而异,NVMe SSD处理请求的延迟通常在10 - 20微秒,SATA/SAS SSD为50 - 100微秒。NVMe设备在队列深度增加时延迟更稳定,适合多磁盘共享一个SSD作为日志的情况。而硬盘的延迟达数十毫秒,不过在I/O大小增加时延迟较稳定。对于小型高性能工作负载,硬盘延迟会主导总延迟,因此建议使用SSD,尤其是NVMe SSD。在设计良好且调优的Ceph集群中,平均4KB写入请求的处理时间约为500 - 750微秒。
超级会员免费看
订阅专栏 解锁全文
2237

被折叠的 条评论
为什么被折叠?



