Производительность «1С» в виртуальной машине

Аудит виртуальной среды командой gilev.ru

По нашему опыту, каждый второй клиент использует виртуализацию, и практически все уверены, что проблемы производительности не связаны с использованием этой технологии.
Виртуализация даёт некоторые преимущества, однако, часто вместе к этим преимуществами происходит падение производительности.

Вы используете виртуализацию, и при этом у вас наблюдаются проблемы с производительностью общесистемного характера? Специально для этого варианта мы разработали услугу по анализу виртуальной машины сервера 1С.
Именно при использовании виртуализации есть возможность за небольшую сумму (20 000 рублей) получить помощь специалиста с большим опытом и увеличить производительность виртуальной машины с 1С и СУБД.

В каких случаях вам нужна эта услуга:

  • для 1С используется виртуальный сервер
  • в 1С все операции работают очень медленно (или медленнее, чем на аналогичной физической машине) в 1С
    либо периодически ВСЕ операции сильно замедляются

  • тест Гилёва показывает 12 баллов или меньше в клиент-серверном варианте (медленное выполнение нагрузочного теста)
     
    Что вы получаете:

    В результате вы быстро и за небольшую цену сможете улучшить производительность 1С, без дополнительных затрат на оборудование, анализ и оптимизацию кода.

    Стоимость работ: 20 000 рублей

    Если вы найдете дешевле, то обратитесь к нам и мы предложим лучший вариант.

    Для заказа услуги напишите нам письмо на электронный адрес slava@gilev.ru или andrey@gilev.ru

    Шаблон договоря для ознакомления можно скачать по ссылке.

    Мы уверены в качестве наших работ. Если не будет результата, мы вернём деньги.
    Таким образом вы получаете 100% гарантию качества и удовлетворяющий вас результат.

  • Отзывы

    Богомаз Кирилл Олегович, Диагностические Решения:
     

    В результате работ была определена проблема в настройках нашей системы, после исправления причин, скорость работы системы, включая выполнение операций, возросла примерно в 10 раз… См. полный отзыв.

    Конев Андрей Анатольевич, Инвестгеосервис:

    Также аудит выявил сильное негативное влияние виртуальной среды… 1С стала работать в 10 раз быстрее. См. полный отзыв.

    Долгих Валерий, Лебедяньмолоко:
     

    Выполнив рекомендации по установке оптимальных параметров виртуализации и BIOS удалось ускорить выполнение операции «Расчет себестоимости» в 2 раза… мы остались довольны! См. полный отзыв.

    Показать больше отзывов

    Актуальность виртуализации.
    События 2020 года накладывают новые требования к работе бизнеса — организации дистанционной инфраструктуры, ее быстрой модификации и миграции…. Виртуализация становится объективной действительностью. Однако любое усложнение инфраструктуры создает новые проблемы, повышает требования к квалификации ИТ-специалистов. На практике же многие не разбираясь применяют виртуализацию ТОТАЛЬНО как серебряную пулю от всех проблем. Такой подход гарантированно формирует скрытые проблемы, которые проявляются не сразу, и не постоянно, но мешают комфортной и стабильной работе. Не облегчает ситуацию использования виртуальной среды в аренде в чужом облаке, когда вы не можете знать достоверно, деретесь ли вы с неким соседом на хосте за физические ресурсы опосредованно через виртуализацию. Практически невозможно объективно изнутри из виртуальной среды узнать, есть давление и троттлинг ресурсов снаружи от кого-либо, насколько качественно провайдер услуг их Вам оказывает.
     

    Наша компания также применяет виртуализацию, а конкретно VMWare ESXi для таких задач как:

    1. Удаленные рабочие места пользователей (терминальный сервер)
    2. Веб-сервера сайтов
    3. Учебный сервер для проведения курсов
    4. Веб-сервисы 1С НЕ КРИТИЧНЫЕ к нагрузке

    Однако для наших задач, где вливаются миллиарды строк каждые сутки у нас около десятка именно физических серверов разделяют нагрузку между высоконагруженными сервисами работами фоновиков 1С.

    Небольшой подарок / бонус от нашей команды

    PostgeSQL (CentOS) — образ виртуальной машины


    Если Вы — программист 1С, который никогда не работал в линукс, то чтобы оценить работу линукс в виртуальной среде Вам достаточно скачать образ и развернуть виртуалку на своем сервере и сразу начать “пощупать на практике” как оно работает)
    вопросы support@gilev.ru


    https://yadi.sk/d/URT6Xzsn6EpeYg или ftp:isinka.gilev.ru , логин client1C, пароль free , файл vm_centospostgres.7z — образ виртуалки vmware — PostgreSQL pro  на centos (распаковать через 7zip)
    Примечание.
    Сетевой интерфейс настроен на 192.168.0.70
    линукс-учётка: root
    пароль GilevRu_centos
    логин на субд: postgres
    пароль: GilevRu_pgsql

     
    Проведя сотни аудитов, мы обратили внимание, что например такая фича виртуализации, как возможность формирования оперативной памяти виртуалки больше объёма физической оперативной памяти хоста кажется многим специалистам полноценной заменой покупке недостающего объёма ОЗУ. Действительно, допустим при наличии 16 ГБ реальной ОЗУ можно нарезать группе виртуалок в сумме 200-300 ГБ, причем они будут одновременно работать — это кажется очень соблазнительным решением, особенно если бóльшую часть дня пользователи не сильно активны. Однако за всё надо платить. Когда памяти в реальности не хватает, начинает работа с диском как эмуляция работы с памятью — подкачка. Диски в десятки раз медленнее памяти и в пиковые моменты, когда запускается что-то тяжелое, да еще во многих сессиях — наступает расплата. Иногда она выливается в полный паралич информационной системы. Выясняется, что “плотное нарезание виртуалок для максимальной утилизации ресурсов” является отложенным техническим долгом и такой “бест практикс” заканчивается реальной бедой.

    Причины замедлений
    Симуляция железа кодом всегда была медленней работы реального железа.
    Изначально виртуализация была только на программном уровне и плюсы виртуализации нивелировались существенным замедлением работы в виртуальной среде. Частично вопрос получилось решить аппаратно — вендоры разработали инструкции процессоры Intel VT-d , AMD-V и т.п. для ускорения работы. Однако память и процессор это не единственные компоненты, есть также видеокарта, жесткие диски и т.п. и от реализации доступа к ним напрямую зависит скорость операций. Т.е. в зависимости от производителя виртуальной машины, драйверов от производителя оборудования, от умения конечного ПО распознавать виртуализацию по-прежнему скорость работы зависит значительно.

    Пример подтверждения замедлений виртуализации:
    Первое с чего начинается описание преимуществ «контейнеров»: Контейнеры требуют значительно меньше ресурсов для своей работы чем виртуализация, что положительно сказывается на производительности и бюджете. Т.е. виртуализация требует больше ресурсов.
    Помимо издержек оборудования на обслуживание ПО виртуализации еще один фактор замедления — это организация течения времени. Скорость течения в физическом железе и виртуалке не одинаковы. Плюс виртуальную машину можно ставить «на паузу». Сложность реализации таймеров, переключателей синхронизаторов, перехват физических аппаратных ресурсов в виртуальной системы не позволяют решить задачу один в один как на физическом железе, много зависит от конкретного вендора.

    Разные приложения по разному замедляются в виртуалке.
    Мы провели тест на исследование потоковой скорости 1С, чтобы оценить насколько виртуализация может повлиять на скорость работы однопоточных задач в 1С, включая интерфейсные операции. Для данного графика важно понимать, что все эти результаты достигнуты на одном и том же физическом железе, то есть во всех случаях компоненты сервера полностью идентичны.

    res1cvirt

    Из полученных результатов самый главный вывод не цифры, а то что по прежнему требуется опыт чтобы нащупать на практике, а не теоретически оптимальный вариант эксплуатации 1С под вашу конкретную нагрузку.
    Влияние слоя виртуализации особенно заметно на очень быстрых операция информационной базы 1С и это логично. Чем меньше время операции, тем больше оно сопоставимо с временем задержки на обслуживание слоя виртуализации.
    Другими словами если мы выполняем одну длительную операцию тысячу секунд, то лаг в одну десятую на обслуживание виртуализации будет каплей в море и не заметен. А вот если мы выполняем десять тысяч операций с временем каждой операции одна десятая секунды, то задержки на обслуживание будут заметны так как будут соизмеримы с длительностью операции.

    Рейтинг облачных провайдеров

    Не последним фактором в скорости работы вашего виртуального сервера является выбор облачного провайдера.
    Чтобы облегчить Вам жизнь, здесь мы будем накапливать информацию о качестве услуг с точки зрения производительности и вести рейтинг провайдеров. (чем больше баллов, тем лучше)

    1. Селектел 42 балла
    2. servers.com 40 баллов
    3. КРОК 35 баллов
    4. ООО «СервисКлауд» (scloud) 28 баллов
    5. Microsoft Azure 24 балла
    6. b25.online 23 балла
    7. ГК «Активные Технологии» 20 баллов
    8. ООО «Архитектор ИТ» (arcloud) 17 баллов
    9. Яндекс.Облако Compute Cloud 17 баллов
    10. OneSCloud 16 баллов
    11. Первый Бит (liveCloud) 14 баллов
    12. ООО «АСТЭК-М» 14 баллов
    13. ООО «Флекс» (Cloud4Y) 13 баллов
    14. ООО «1 ОФИС» 13 баллов
    15. 1С-Рарус 13 баллов
    16. ООО «Офис24” 12 баллов
    17. ServerSpace 12 баллов
    18. DigitalOcean 12 баллов
    19. Облакотека 11 баллов
    20. Аренда 1С (Компания «Деловые Решения») 11 баллов
    21. arenda1c.ru 11 баллов
    22. ООО «Е-Офис 24» 9 баллов
    23. ИТ-Град 9 баллов

    Более подробный обзор тут https://infostart.ru/public/1235750/, https://infostart.ru/public/1239857/ и https://infostart.ru/public/1250884/
    Баллы отражают исключительно субъективное мнение о качестве услуг. Личный опыт в разных случаях может отличаться.
    Будем Вам признательны, если свяжетесь с нами и поможете протестировать провайдеров, отсутствующих в рейтинге.


    Лучшие практики

    Есть два способа решения проблемы.
    1й способ. Если настройками виртуализации вам не удается достичь желаемой производительности — используйте  физическое оборудование.
    2й способ. Минимизировать лаги виртуализации подобрав настройки, соответствующие характеру нагрузки. При этом надо понимать, в что виртуализация это не стопроцентный аналог физического оборудования и компенсировать скорость надо более мощным физическим оборудованием.
    Некоторые вендоры обеспечивают повышение скорости за счет встроенных в слой виртуализации механизмов кэширования. Однако кэш может быть «пробит» и тогда будет резкое падение производительности. Т.е. надо помнить не только про плюсы технологий, но и про минусы.

    1. «Снимки»  надо выключать — они замедляют. При чем влияние далеко не очевидно. Подробно смотрите http://vkeygen.blogspot.ru/2011/10/snapshot.html

    2. Использовать только физические диски под данные, а не виртуальные.

    3. Вендоры виртуальных систем честно указывают примерный процент замедления относительно физических серверов от 9 до 24 %. Виртуалки это удобно, но не быстро. «Хочу как на физическом сервере» это пустое. Если на физическом хосте более одной виртуальной машины, то все еще хуже — квотирование всегда замедляет потоковую скорость еще больше.

    4. Передача по сети между двумя виртуальными машинами на одной физической машине медленней протокола Shared Memory

    5. Функции динамического перераспределения ресурсов между несколькими виртуальными машинами увеличивают возможности по ресурсам, но само перераспределение также вносит замедление. Для 1С рекомендуется выключать такие функции. Если стоит динамическое распределение ресурсов, также может «слететь» программная лицензия 1С.

    6.  В BIOS должны быть включены технологии виртуализации (VT-x, EPT, AMD-V и т.п.). Там же переданное управление питание ОС — CPU Power Saving — OS Controlled mode. Или что-то аналогичное. Если поддерживается. ESXi — имеет полный набор средств для управления питанием сервера. И лучше отдать этот вопрос на откуп гипервизору, если хочется быть уверенным, что он не скажется на производительности негативно.
    Там же отключите опцию NUMA Node Interleaving или включите опция Enable NUMA. Данный пункт часто вводит в заблуждение. ESXi — NUMA-awared ОС, более того, она умеет транслировать NUMA-архитектуру в виртуальные машины, так что включение возможности распознавать NUMA-ноды сказывается положительно на общей производительности в большинстве случаев. Однако опция «NUMA Node Interleaving», будучи в состоянии «Enable» на деле объединяет ноды в единое пространство, то есть отключает распознавание NUMA-нод.

    7. На хостовой машине исключите из проверки антивирусом каталоги виртуальных машин

    8. Миграция виртуалок на разные сервера может приводить к проблемам синхронизации времени, подробнее http://www.gilev.ru/changed_the_time/

    Параметры Microsoft Hyper-V и VMware ESXi & vSphere


    ОПЕРАТИВНАЯ ПАМЯТЬ


    ПРОЦЕССОР


    СЕТЬ


    ДРАЙВЕРА


    Проверка VMware Tools


    ДИСКИ

    особенности подключения NVMe дисков сморите в отдельной статье


    Как выглядит на практике отказ от виртуализации. Далеко не всегда виртуализация сильно замедляет, все таки характер нагрузки, объем данных имеют тоже значение.

    вывпай

     

    Если приведённая выше информация не позволила Вам исправить общесистемную производительность среды, то это не значит что больше ничего сделать нельзя, но проблема не самая простая и требует погружения в проблему специальноста с большим опытом, а значить заказать услугу аудта написав нам письмо на электронный адрес slava@gilev.ru или andrey@gilev.ru