У меня низкая производительность записи на общий ресурс NFS, размещенный на OpenIndiana 151a. У меня есть 2 зеркала по 1 ТБ (диски Seagate constellation), 2 SSD-накопителя, 1 кэш чтения и 1 кеш записи. Я думал, что, используя кеш записи, я получу производительность как у SSD, хотя у меня довольно медленный жесткий диск. Я получаю в среднем 40 МБ / с. Я должен отметить, что оба моих SSD-диска имеют SATA3 со скоростью 500 МБ / с. Я чувствую себя обманутым! Моя установка выглядит следующим образом:
Я занят проведением ряда тестов IOmeter, по завершении опубликую результаты.
Я не вижу здесь рекламируемых скоростей SATA3, не лучше ли мне использовать SSD в качестве хранилища с прямым подключением? Другими словами, проблема в NFS?
Это полностью зависит от того, что и как вы тестируете. Это скорость чтения или записи 40 МБ / с? Или вместе? Если в вашем программном обеспечении для тестирования используются все последовательные операции чтения или записи, скорее всего, вы не увидите преимуществ от блоков кэш-памяти SSD.
Настройка вашего виртуального коммутатора должна выглядеть примерно так. Я использую NexentaStor вместо OpenIndiana, но применяются те же принципы. Сервер хранения должен иметь частный коммутатор с портом VMkernel. Это для предоставления NFS хосту ESXi. Затем вы представляете хранилище данных системе ESXi и размещаете на нем свои виртуальные машины. Вам не нужен физический адаптер, а при использовании сетевого адаптера VMXNET3 все должно отображаться как 10GbE.
Насколько я знаю, ZIL - это не «кеш записи», а скорее журнал производительности, поэтому в лучшем случае вы все равно получите скорость сырого диска. Хотя 40 МБ / с меньше этого значения, и именно здесь в игру вступает «как вы делали эти тесты».
Исправление: мне сказали, что я ошибаюсь, и ZIL выполняет двойную функцию как кеш записи, но не уверен, как / если это все правильно.
vSphere монтирует все общие ресурсы NFS с синхронизацией, что означает, что все записи выполняются синхронно. Если вместо этого вы смонтируете LUN через iSCSI - вся синхронная запись будет синхронной, а все остальное будет асинхронным.
Отвечать тогда относительно SSD как ЗИЛ; Для непрерывного потока записываемых (синхронных) данных он будет ограничен скоростью записи (заданной схемы ввода-вывода) дисков. ZIL действительно более полезен для достижения высоких случайных операций ввода-вывода в секунду, чем для необработанной синхронной непрерывной записи.
В большинстве случаев количество последовательных данных не так важно, как то, сколько действительно случайных операций записи и чтения вы можете обработать, особенно в виртуализированных средах, где у вас, вероятно, будет много разных «клиентов», обращающихся к хранилищу. Рассмотрите возможность асинхронной записи, если вам нужна высокая пропускная способность за счет использования iSCSI вместо NFS.