Настройка параметров производительности MS SQL Server+ 1C для Hyper-V

1. __guest__ 20.04.21 15:09 Сейчас в теме
Доброе время суток. Имеется 2 одинаковых по своей железной конфигурации сервера:

Intel Core I9 9900K
128 GB RAM
2*960 GB NVME SSD
1*1960 GB SATA SSD

На одном сервере установлена ОС WIndows Server 2019 непосредственно на сервер, в котором установлен Сервер 1С 64 bit 8.3.18.1334, MS SQL Server Express 2019, режим работы с БД клиент-серверный, клиент 1С запускается на сервере
На втором сервере установлена та же конфигурация ОС и софта, но на виртуальную машину, созданную в Hyper-V. Роль Hyper-V поднята на ОС Windows Server 2019 Standard.
Проблема: все операции 1С на виртуальной машине ( второй сервер) делаются в 2-3 раза медленнее таких же операций на ОС, установленной непосредственно на железо ( первый сервер).
Чтобы выяснить где затык по скорости, провел эксперимент. Создал файловую БД на обоих серверах, сравнил скорость работы - на втором ( виртуальном сервере) при варианте с файловой БД скорость работы на некоторых операциях % на 3-5 медленне чем на физическом, т.е. несущественные отличия. Из этого делаю вывод, что затык по скорости работы кроется либо в SQL Server'е, либо в связке "1С+SQL".
Суть вопроса: можно ли как-то настроить какие-либо параметры 1С, SQL Server'а для 2-го ( виртуального сервера), или какие-то параметры в Hyper-V или VM ( хотя там уже все пересмотрел), чтобы скорость работы 1С на виртуальном сервере была такой же или почти такой же как на физическом.

Что уже пробовал и проблему не решило:
1. На VM выделены под VM все физические ресурсы процессора ( 8 ядер = 16 виртуальных процессоров)
2.В VM для дисковой подсистемы нет никаких ограничений на IOPS'ы
3. В VM для теста диск для БД SQL подключен не как виртуальный диск, а как физический диск ( pass-through disk) - подняло производительность % на 10, не больше
4. Антивирус пробовал выключать, удалять
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. nomad_irk 76 20.04.21 15:35 Сейчас в теме
(1)Пока не понятно, какие настройки энергосбережения установлены на обоих серверах и внутри VM.
Требуется включать "максимальная производительность"
8. __guest__ 21.04.21 07:46 Сейчас в теме
(2)
Требуется включать "максимальная производительность"

Включил на гипервизоре и VM "Максимальная произвоидтельность" - ситуация почти не поменялась. Например БД из dt-файла загружалась за 144 секунды, а теперь за 140
11. nomad_irk 76 21.04.21 07:51 Сейчас в теме
(8)Хорошо.

В случае с VM, TempDB на каком из дисков хранится и в каком режиме к этому диску организован доступ SQL-серверу?
14. __guest__ 21.04.21 08:45 Сейчас в теме
(11)
В случае с VM, TempDB на каком из дисков хранится и в каком режиме к этому диску организован доступ SQL-серверу?

TempDB хранятся на том же диске, что и другие БД SQL Server'а в пределах одного экземпляра. Я знаю о теории что TempDB нужно хранить отдельно, но применимо к данному серверу, так сделать не получится, т.к. количество дисков на сервере ограничено, а каждый диск планируется под определенную нагрузку, поэтому временные БД SQL Server'а хранятся на том же диске где остальные. По этой причине на сервер установлены очень быстрые SSD-диски: SAMSUNG MZVLB1T0HBLR-00000, производительности их хватает чтобы компенсировать этот момент ( скорость чтения-записи больших объемов данных, когда уже точно работает не кэш диска, а сам диск - 400 Мбайт/сек).
15. nomad_irk 76 21.04.21 08:48 Сейчас в теме
(14)для VM - это VHD или pass-through диск?
16. __guest__ 21.04.21 09:16 Сейчас в теме
(15)
Сначала были VHDX-диски, затем поменял на pass-through, дало увеличение производительности на 10 % - т.е. немного. Например операция загрузки БД была 97 сек - стала 88 сек, против 29 сек на физическом сервере.
4. RustamZz 20.04.21 16:31 Сейчас в теме
(1) Делали замер производительности на файловой 1С в VM и на хосте. На 20% хуже показал тест Гилева на VM. После этого отказались от нее.
5. nomad_irk 76 20.04.21 17:35 Сейчас в теме
(4)20% - это типовое "пинальти" за виртуализацию.
Виртуализируют не от хорошей жизни как бы....
3. starik-2005 3088 20.04.21 15:35 Сейчас в теме
Я так понимаю, что вторая машина с VM коннектится к SQL на первой машине?

Ну и да, (2) - это маст хэв, т.е. производительность максимальная в управлении питанием.
9. __guest__ 21.04.21 07:47 Сейчас в теме
(3)
Я так понимаю, что вторая машина с VM коннектится к SQL на первой машине?

- Нет, на второй машине установлены и Сервер 1С и MS SQL Server. По сети она к другим SQL Server'ам не получается. Просто взяли 2 идентичные физические машины чтобы сравнить производительность одинаковых операций с одинаковыми базами на VM и ОС и софта, поставленных на физической машине.
17. starik-2005 3088 21.04.21 10:32 Сейчас в теме
(9)
на второй машине установлены и Сервер 1С и MS SQL Server
На одну виртуальную машину? Или на разные?
18. __guest__ 21.04.21 12:27 Сейчас в теме
(17)
На одну виртуальную машину? Или на разные?

На одну виртуальную машину.
12. __guest__ 21.04.21 08:02 Сейчас в теме
(6) В статье общие рекомендации ( например про лицензирование :-) ) - все они выполнены.
7. XAKEP 20.04.21 18:02 Сейчас в теме
а для mssql доступ к диску напрямую или в виртуалке ?
10. __guest__ 21.04.21 07:49 Сейчас в теме
(7)
а для mssql доступ к диску напрямую или в виртуалке ?

- Изначально доступ был к виртуальному диску, затем для VM убрал виртуальный диск, подключил физический диск хостовой ОС, расположил базы на нем, это дало увеличение производительности примерно на 10 %
19. XAKEP 21.04.21 14:19 Сейчас в теме
(10)
а журнальчики лучше было бы на ссд
13. __guest__ 21.04.21 08:37 Сейчас в теме
Сразу не написал - поколение VM 2-е.
20. OstHusky 32 28.04.21 22:03 Сейчас в теме
(13) Если вопрос еще актуальный - напиши в личку, посмотрим что может быть.
21. cdiamond 235 07.05.21 11:11 Сейчас в теме
Для эксперимента отключи гипертрейдинг на обоих компьютерах и сравни. Потому что что 8 ядер с гипертрейдингом на реальном железе и 16 ядер без гипертрейдинга на виртуалке это не одно и то же. Заодно уравняется условие по лицензии ПРОФ 1С (используется не более 12 ядер, в том случае если у вас ПРОФ). Я ничего не знаю про 9900K, но проверить не мешает, нет ли случайно деления на NUMA-узлы?
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот