Я выполняю сервер с набегом программного обеспечения Linux 10. Это - двойная система ЦП с 64 ГБ Ram. 2x16 ГБ dimms связанный с каждым из центральных процессоров. Я хочу использовать dd, чтобы резервировать kvm виртуальные машины и столкнуться с серьезной io проблемой. Сначала я думал, связан с набегом, но это - проблема управления памятью Linux. Вот пример:
У кого-либо есть решение или подсказка конфигурации? Вот также мой sysctl, но все значения являются значениями по умолчанию песней: http://i.stack.imgur.com/ZQBNG.jpg
Я делаю другой тест и делаю dd к диску вместо этого/dev/null. На этот раз также в одной команде без объема плазмы. Так его единственное один процесс. dd if=/dev/vg_main_vms/AppServer_System of=AppServer_System bs=4M
sync; echo 3 > /proc/sys/vm/drop_caches
. После этого та же игра запускается снова...Для локального dd я могу обходное решение с параметром iflag=direct и oflag=direct. Но это не универсальное решение, потому что существует также другой доступ к файлу как файлы копии к локальным долям самбы от vm, и там я не могу использовать такие параметры. Должна быть тонкая настройка правил кэша системного файла, потому что она наклоняется быть нормальной, что Вы наклоняете копию большие файлы без таких проблем.
Просто дикая догадка. Ваша проблема может быть большой грязной смывкой страниц. Попробуйте настроить /etc/sysctl.conf как:
# vm.dirty_background_ratio contains 10, which is a percentage of total system memory, the
# number of pages at which the pdflush background writeback daemon will start writing out
# dirty data. However, for fast RAID based disk system this may cause large flushes of dirty
# memory pages. If you increase this value from 10 to 20 (a large value) will result into
# less frequent flushes:
vm.dirty_background_ratio = 1
# The value 40 is a percentage of total system memory, the number of pages at which a process
# which is generating disk writes will itself start writing out dirty data. This is nothing
# but the ratio at which dirty pages created by application disk writes will be flushed out
# to disk. A value of 40 mean that data will be written into system memory until the file
# system cache has a size of 40% of the server's RAM. So if you've 12GB ram, data will be
# written into system memory until the file system cache has a size of 4.8G. You change the
# dirty ratio as follows:
vm.dirty_ratio = 1
Затем сделайте sysctl -p
для перезагрузки, снова сбросьте кэши (echo 3 > /proc/sys/vm/drop_caches
).