Назад | Перейти на главную страницу

PERC 6 / i | ext4 | raid5 | 4 диска - улучшают производительность записи

Я использую несколько файловых серверов, используя этот контроллер, файловую систему и диск.

Все они страдают от плохой производительности записи, когда кэш записи BBU объемом 256 МБ заполняется, я получаю очень высокий iowait (> 40), а скорость записи снижается до нескольких МБ / с.
Еще хуже, если серверы сталкиваются с средним или тяжелым чтением во время записи.

Я ищу предложения о том, как настроить контроллер или файловую систему для повышения производительности записи.

Некоторые данные о Raid Array и Controller:

RAID Level: Primary-5, Secondary-0, RAID Level Qualifier-3
Size:5.456 TB
State: Optimal
Stripe Size: 64 KB
Number Of Drives:4
Span Depth:1
Default Cache Policy: WriteBack, ReadAdaptive, Cached, No Write Cache if Bad BBU
Current Cache Policy: WriteBack, ReadAdaptive, Cached, No Write Cache if Bad BBU
Access Policy: Read/Write
Disk Cache Policy: Enabled
Encryption Type: None

Product Name    : PERC 6/i Integrated
FW Version         : 1.22.12-0952
BIOS Version       : 2.04.00

Данные о файловой системе:

Filesystem features:      has_journal ext_attr resize_inode dir_index filetype needs_recovery extent flex_bg sparse_super large_file huge_file uninit_bg dir_nlink extra_isize

Используются параметры монтирования по умолчанию, и файловая система была создана с использованием параметров по умолчанию команды mkfs.ext4.

редактировать:
Чтобы проиллюстрировать свой вариант использования, я опишу, что делают эти серверы.
Они обслуживают файлы через lighttpd со скоростью 40-80 МБ / с, новые файлы периодически загружаются на серверы через ftp.
Размер файлов составляет от 800 МБ до 6 ГБ.
Обслуживание файлов работает отлично, без каких-либо заметных IOWait, но каждый раз, когда срабатывает ftp-передача для получения новых файлов, вы можете видеть, что это действительно тяжело.

как просили, вот вывод bonnie ++:

Version  1.96       ------Sequential Output------ --Sequential Input- --Random-
Concurrency   1     -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CP
XXXXXXX          8G   580  99 94284  14 61903   9  2853  83 189033  11 420.5   8
Latency             14004us     825ms    1548ms     105ms     202ms   98036us
Version  1.96       ------Sequential Create------ --------Random Create--------
XXXXXXX             -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
              files  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP
                  5 +++++ +++ +++++ +++ +++++ +++ +++++ +++ +++++ +++ +++++ +++
Latency               406us     535us     598us     374us      21us      60us

На всех серверах используются диски D-WMAY03176700WDC WD2002FAEX-007BA0.

несколько случайных точек:

  • go raid 10 [вы потеряете данные в процессе]
  • смонтировать все "занятые" файловые системы с помощью noatime опция в fstab
  • экспериментируйте с разными планировщики io - проверьте, что лучше всего подходит для вас
  • ваши диски кажутся большими - скорее всего, у них физический сектор размером 4 КБ, а не 512 Б - убедитесь, что ваши разделы выровнены по границам диска и полосы рейда [ 1, 2 ; вы потеряете данные в процессе]
  • Я предполагаю, что у вас много оперативной памяти, которая используется для буферов io, если это так - перенастройте кеш PERC / 6i только для записи, без упреждающего чтения.
  • снова протестируйте скорость записи - допустим, X; дроссельная заслонка, например. 60% X, чтобы оставить «запасной» ввод-вывод для чтения.

Вы можете снова запустить bonnie ++ с помощью -n 1024, поэтому он создает 1024 файла вместо 5, все эти +++ означают, что создание, чтение и удаление 5 файлов было слишком быстрым, чтобы дать вам какие-либо числа для сравнения, таким образом вы можете узнать, какие оптимизации, предложенные выше pQd, могут помочь