SSHFS-тесты на задержку ввода-вывода сервера с использованием dd
возвращает очень неожиданные результаты, настолько, что я беспокоюсь, что это может быть проблема либо с методом тестирования, либо с конфигурацией.
Тест 1 на локальном диске RAID 10 с использованием dd
(512 байтов записаны тысячу раз)
dd if=/dev/zero of=/root/testfile bs=512 count=1000 oflag=dsync
Вывод
1000+0 records in
1000+0 records out
512000 bytes (512 kB) copied, 3.34273 s, 153 kB/s
Что и говорить, очень неутешительные результаты по тесту 1.
Тест 2 на установленном (sshfs -o reconnect -o nonempty -o allow_other -o ServerAliveInterval=15 -o cache=yes -o kernel_cache -o Ciphers=arcfour
) Диск RAID 1 с использованием dd
(512 байтов записаны тысячу раз)
dd if=/dev/zero of=/mnt/nas/testfile bs=512 count=1000 oflag=dsync
Вывод
1000+0 records in
1000+0 records out
512000 bytes (512 kB) copied, 0.0498811 s, 10.3 MB/s
Очень неожиданные результаты для Теста 2, учитывая, что я использовал в среднем всего 400 кБ / с с NFS.
Контрольные данные Тест производительности ввода-вывода Linux с использованием dd
Сервер с RAID 10: в этом примере тестовые данные были записаны в пустой раздел. Тестовая система представляла собой двухпроцессорный сервер Intel SC823 2HE с шестью жесткими дисками SAS Fujitsu MBA3147RC (15 000 об / мин) на 147 ГБ и RAID-контроллером Adaptec 5805 с активированным кешем и BBU.
test-sles10sp2:~ # dd if=/dev/zero of=/root/testfile bs=512 count=1000 oflag=dsync
1000+0 records in
1000+0 records out
512000 bytes (512 kB) copied, 0.083902 seconds, 6.1 MB/s
Локальный RAID 10: 512000 bytes (512 kB) copied, 0.00283095 s, 181 MB/s
SSHFS RAID 1: 512000 bytes (512 kB) copied, 0.0557114 s, 9.2 MB/s
Вопрос: Почему задержка ввода-вывода для SSHFS такая низкая? Означает ли это, что он больше подходит для решений кэширования с большим количеством небольших операций чтения / записи по сравнению с другими NAS, такими как NFS / CIFS?
Я сильно подозреваю что oflag=dsync
причина, вызывающая это - dd выполняется на хосте, подчиняется этому флагу, вместо этого sshfs не передает это на сервер, поэтому он использует методы кеширования.
Обычно NFS должен быть одним из самых быстрых вариантов доступа к удаленному хранилищу. По сравнению с SSHFS ваши данные не должны проходить через шифрование и стек FUSE.