---
title: Ceph代码优化
description: "代码优化包括EC Turbo以及Ceph中的一些通用基础优化，如Crush算法指令加速，RocksDB CRC算法优化等。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengboostkithistory/2400/sds/kunpengecturbo_02_0006.html
sourcePath: /source/zh/kunpengboostkithistory/2400/sds/kunpengecturbo_02_0006.html
indexId: 7d345952388fd0c3df8079153f8b81371637e856e7c48a9dc340b759e335c15a70
---
# Ceph代码优化

代码优化包括EC Turbo以及Ceph中的一些通用基础优化，如Crush算法指令加速，RocksDB CRC算法优化等。

通过叠加EC Turbo以及这些基础优化代码后，读写性能有较为明显的提升。这两部分优化已合并在同一个补丁当中。以下是具体的编译部署指导。

1. 请参见《EC Turbo 特性指南(https://www.hikunpeng.com/document/detail/zh/boostsds/ecturbo/docs/zh/ec_turbo_feature_guide.md)》的“EC Turbo安装包获取”章节，完成安装包获取的操作。
2. 获取Ceph源码。

  a. 单击    此处(https://download.ceph.com/tarballs/ceph-14.2.10.tar.gz)
下载ceph-14.2.10源码。
  b. 执行以下命令将源码包放置于“/home”目录下并解压。
    1 2 cd /home tar -zxvf ceph-14.2.10.tar.gz

3. 合入Ceph EC代码优化补丁。

  a.     获取patch(https://gitee.com/kunpengcompute/ceph/releases/download/ec_turbo_optimization/ceph-ecturbo-optimization.patch)
放置到“/home/ceph-14.2.10”。
  b. 备份原有的ceph.spec文件。
    1 2 cd /home/ceph-14.2.10 mv ceph.spec ceph.spec.bak

  c. 合入    1
下载的patch，合入此patch后会生成新的ceph.spec文件。
    1 patch -p1 < ceph-ecturbo-optimization.patch

4. 请参见《EC Turbo特性指南》中的制作liboath-devel包章节制作liboath-devel包。
5. 请参见《EC Turbo特性指南》中的编译环境准备章节完成Ceph的编译环境准备。
  此次叠加的优化需要依赖大页特性，install-deps.sh脚本中没有对该依赖进行下载，需要单独手动安装，在执行install-deps.sh脚本后执行如下命令进行安装。 1 yum install libhugetlbfs

6. 请参见编译Ceph并验证完成Ceph的编译与验证。
7. 请参见生成Ceph RPM包完成Ceph RPM包的制作。
8. 请参见部署Ceph集群完成Ceph集群的部署。
  本次环境采用的数据盘全部为NVMe，因此在部署OSD节点时不需要对OSD进行分区划分，直接使用NVME盘做OSD的数据盘即可。为充分发挥硬件性能，每台服务器上最佳部署的OSD节点数量为24个，建议对每块NVMe盘划分为三个分区，然后进行OSD的部署。
