1

我们正在尝试在 Linux 3.0.3 上迁移到 Linux 软件 RAID 上的 8x SSD RAID。

我们之前的服务器配置是 96GB 内存,每月相当昂贵。我们的目标是迁移到价格约为 1/2 到 1/3 的 SSD。

我们遇到的问题是它跟不上我们的复制负载并且落后了。

经过一系列调整后,我们注意到以下 IO 负载:

IO负载

你可以看到我们正在以相当稳定的速度写入……峰值大约为 180MB/s。

但我正试图弄清楚为什么我们的跌幅如此之大。一旦读取进入等式,性能就会完全下降。服务器没有做太多的读取,只是它完全破坏了我们的写入吞吐量。

我做了一些合理的 SSD 性能更改。

我们在 XFS 上使用 noatime 和 nobarrier。

我们使用的驱动器是美光 p300,每个 100GB。我们在 16 核 2.8Ghz X5570 上的 Adaptec RAID 控制器上有 8 个它们。

这是一个 RAID 0 设置。RAID 条带大小为 256k。我使用较小的条纹尺寸,这似乎是最好的价值。

IO 调度程序现在是 noop。我们也尝试了截止日期,性能大致相同。

这是我们 MySQL 配置的原始 pastebin。

http://pastebin.com/raw.php?i=Bn13Hhj9

我们所做的重要更改是:

innodb_log_file_size=10G
innodb_read_ahead=none
innodb_flush_neighbor_pages = 0
innodb_doublewrite=0
innodb_io_capacity=160000
innodb_read_io_threads=64
innodb_write_io_threads=64

我们的缓冲池大小约为 42GB ... 盒子有 48GB。

我想做的一个明显改变是使用 4k 页面。但是,这是(至少)一天的工作,因为我必须对整个数据库进行完整的 mysqldump 并重新导入。

但老实说,这可能会解决这种情况,因为理论上,我将写入/读取 1/4 的数据。但是,读取导致如此大规模的写入下降仍然让我感到困惑。

对于任何反馈,我们都表示感谢。它还可以通过触发一个想法来帮助我解决问题。

4

0 回答 0