1C MSSQL против Матрицы виртуализации – перезагрузка

17.07.22

Интеграция - Облачные сервисы, хостинг

Продолжение статьи https://infostart.ru/1c/articles/1686720/ о методах анализа производительности 1С + MS SQL в виртуальной среде. Заключительная развязка оказалась одновременно неожиданной и банальной в духе современной эпохи.

The matrix has you

Краткое содержание предыдущей серии //infostart.ru/1c/articles/1686720/ 

Тестирование виртуального кластера на VMWare схожей конфигурации с рабочим кластером - показало более низкую производительность с 1493 минут против 937 минут на «железном» рабочем кластере. Анализ показал высокие задержки на уровне Write log и повышенные задержки по сети.

Ликвидация задержек по сети улучшила результат, но не радикально  до 1233 мин

Мозговой штурм задержек SQL Write log вывел нас на несоответствие  виртуальных ядер \ Numa node физической структуре машин. Когда виртуальные машины выровняли с физическим – результат улучшился 1162 минуты против 937.

Поскольку победа не была достигнута, было решено добраться до сути такой разницы производительности. Стратегия была понятна, выявить все несоответствия отображения виртуальных машин в «железо».

Замечу что VMWare содержит много способов Вас «обмануть» – когда мы говорим Numa node

Мы понимаем под этим hardware Numa

https://docs.microsoft.com/en-us/previous-versions/sql/sql-server-2008-r2/ms178144(v=sql.105), но VWWare предлагает администратору еще технологию vNuma в vSphere 6.5 https://blogs.vmware.com/performance/2017/03/virtual-machine-vcpu-and-vnuma-rightsizing-rules-of-thumb.html

Просто почитайте выдержку для понимания, какое бесконечное количество реальностей вам предлагают и как это будет реально работать с SQL Server или другим ПО одному архитектору Матрицы будет известно

«When a vNUMA topology is calculated, it only considers the compute dimension. It does not take into account the amount of memory configured to the virtual machine or the amount of memory available within each pNUMA node when a topology is calculated. So, this needs to be accounted for manually.

Example: An ESXi host has 2 pSockets, each with 10 Cores per Socket, and has 128GB RAM per pNUMA node, totalling 256GB per host.

If you create a virtual machine with 128GB of RAM and 1 Socket x 10 Cores per Socket, vSphere will create a single vNUMA node. The virtual machine will fit into a single pNUMA node.

If you create a virtual machine with 192GB RAM and 1 Socket x 10 Cores per Socket, vSphere will still only create a single vNUMA node even though the requirements of the virtual machine will cross 2 pNUMA nodes resulting in remote memory access. This is because only the compute dimension in considered.

The optimal configuration for this virtual machine would be 2 Sockets x 5 Cores per Socket, for which vSphere will create 2 vNUMA nodes and distribute 96GB of RAM to each of them.»

Это только то, что вскрылось при тестировании, я думаю, специалисты по VMWare расскажут больше точек, где может потеряться производительность

Не думай о миллисекундах с высока

Поскольку все были озадачены такими результатами, были подключены администраторы СУБД по другим системам. Две головы, как говорится, лучше двух, и было найдено еще одно противоречие с реальностью.

Странно, Avg Disk sec \ Transfer сильно отличалось от Service Time которое регистрирует VMWare при обращениях к диску


 

Ниже Вы видите 2 мс Service time против 20 мс Avg Disk sec / transfer в счетчиках Windows over VMWare!

 

 

Поиск в сети вывел на статью http://performancebydesign.blogspot.com/2013/12/how-windows-performance-counters-are.html где подробно изложена проблема VMWare приводящая к “неточностям “ измерений в  Windows.  Не знаю, когда это исправят, но такие «неточности»  приводят к логической проблеме

Исходные данные кривые & Алгоритм анализа верен = Результат анализа кривой

Поскольку данный факт не объяснял отставание производительности виртуального кластера от реального, исследования продолжили. Было ясно, что что-то еще душит связку процессор, память, взаимодействие с устройствами. Диски\Контроллеры пока можно было исключить.

 

Почему текст в Матрице зеленый?

Горизонтальное маштабирование //infostart.ru/1c/articles/1683197/ нашего решения  на 1С позволяло еще увеличить давление на кластер, что и сделали

Со стороны Windows картина показала очереди на процессор Processor Queue Length и много переключений контекста

 

 

Результат вычислений улучшился, но несущественно, видимо упирался в ту самую причину

 

 

Зато гипервизор показал

  • Readiness: 1-2 %.
  • Co-stop: 0,5 %
  • А вот CPU latency выросло до 30%, многовато. ( CPU latency - % of time the VM is unable to run because it is contending for access to the physical CPU. )

Судя по всему, мы не первые, которые сталкиваются с подобными проблемами – вот статья из Хабр https://habr.com/ru/company/dataline/blog/452884/. Там же объяснение терминов, и некоторые утверждения вызывают сомнения.

Например

«если не хотите углубляться и у вас нет лицензионных ограничений по ОС, установленной на ВМ, делайте на ВМ много виртуальных сокетов по одному ядру. Много не потеряете»

Хотя как заметили в комментариях

«Always configure the virtual machine vCPU count to be reflected as Cores per Socket, until you exceed the physical core count of a single physical NUMA node OR until you exceed the total memory available on a single physical NUMA node.

https://blogs.vmware.com/performance/2017/03/virtual-machine-vcpu-and-vnuma-rightsizing-rules-of-thumb.html »

В общем из таких статей видно, что нет единства даже среди тех, кто сопровождает VMWare и я был интуитивно прав что нужно выравнивать виртуальную машину с физической. Наши администраторы пошли искать кто создает эту CPU latency … и на следующий день предложили повторить тест.

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

 

 

Waits & Spinlock улучшились по сравнению с //infostart.ru/1c/articles/1686720/

 

 

На вопрос, что же Вы нашли, ответ был неожиданным

 

Гензель и Грета – как в Европе борются за ограниченные ресурсы.

Да, это была  зеленая повестка, когда добавляли железные  сервера в кластер, ее просто забыли отключить. Производитель HP заботливо оставляет включенным соответствующие опции, причем формулировки опций двухсмысленные (Balanced). Вот пример, как в Европе с этим сталкиваются

https://helgeklein.com/blog/the-effects-of-power-savings-mode-on-vcpu-performance/

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

Но сервер - он изначально предназначен быть разделяемым ресурсом, готовым принять нагрузку на 100%. А пока нам предлагают гоночный авто формулы 1 с принудительной зеленой повесткой J . Зелень приходится вырубать на всех уровнях.

  1. Операционная система
  2. VMWare https://blogs.vmware.com/performance/2014/09/custom-power-management-settings-power-savings-vsphere-5-5.html
  3. Драйвера
  4. И еще BIOS + на уровне процессора ( см C-states  в Perfomance monitor)

И везде эта повестка включена в некий режим «Balanced» который по факту снижает производительность даже при высокой нагрузке. Скажете,  ничего страшного - в каждой программе есть ошибка?

Нет, это не ошибка, это шиза,  которая пронизывает всю систему:

У Вас на авто детали стали служить меньше потому, что уменьшены высота поршня, толщина колец, задраны температурные режимы для лучшего сгорания. Железная цепь не дотягивает до ресурса ремня, поскольку на обслуживании пресса экономят + делают ее тоньше. Между прочим - это выгодно и автопроизводителю, меньше металла, меньше ресурс = больше прибыль. Вот подробный отчет от BMWService по надежности новых технологий https://bmwservice.livejournal.com/270037.html  https://bmwservice.livejournal.com/278784.html

Экономика разбалансирована, поскольку политики не просто играют в зелень, но и вводят экономические санкции тем, кто менее зелен https://www.rbc.ru/opinions/economics/20/09/2021/61489ee09a79479eafb96584?ysclid=l5m8lln9rj476073198 «Экономическими инструментами для перехода к низкоуглеродной экономике должны стать торговля эмиссионными квотами, углеродные налоги, государственные закупки экологичной продукции и инвестиции в экологическую инфраструктуру»

Классный инструмент для политического давления. Кстати цены на газ раскрутили вверх еще до Z – эпохи именно как следствие зеленой повестки и переход на спекулятивный фьючерсный рынок, а уже Z эпоха добавила ускорение.

Грустно, но слив Японией в 2021 более миллиона тонн радиактивной воды из Фукусимы, не вызывает санкций, культуры отрицания суши, или значимых протестов зеленых https://zvezdaweekly.ru/news/2021413120-PU2ea.html?ysclid=l5lg7fb0m6258832098

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

Причем тут Гензель и Грета? Просто прочитайте краткое изложение сюжета https://ru.wikipedia.org/wiki/%D0%93%D0%B5%D0%BD%D0%B7%D0%B5%D0%BB%D1%8C_%D0%B8_%D0%93%D1%80%D0%B5%D1%82%D0%B5%D0%BB%D1%8C

Если кратко, дети все время возвращаются к отцу, который их предал и решил от них избавиться под угрозой голода. Какая-то семейная шизофрения – как ни разбирай мотивы, все себе врут, а раз так цикл обязательно повторится, поскольку доверие выстраивается годами, а предав один раз, можно это делать сколько угодно.

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

Игра в имитацию

Если сложить все с предыдущей частью //infostart.ru/1c/articles/1686720/ получается, что виртуализация только искажает данные о производительности. Она дает нам не аналог физического сервера, а его проекцию. Напр. проекция шара может выглядеть как круг или овал в зависимости от источника света. Но ведь проекцию круга может дать и другая фигура. И весь анализ подразумевает попытку восстановить исходный объект по проекции.

Дружественно настроенный администратор с гипервизором может помочь, но у него будут похожие проблемы. Если же  администраторы доступны только по почте, то с такими облаками лучше вообще не связываться. Это не просто еще один слой, который скрыт от Вас. Например, слой драйверов изначально пишут для достижения максимальной производительности и там как правило настройки ограничены, а VMWare это слой, который конструирует Вам очередную версию Матрицы с новыми сюрпризами «оптимального распределения ресурсов».

Я надеюсь, что виртуализация это временный этап развития ИТ, и будущие операционные системы будут организовывать кластеры более прозрачным образом, а приложения будут написаны уже сразу под такие ОС. Мы ведь можем делать сейчас кластера на основе Windows в рамках одной организации. Кроме того, горизонтальное масштабирование   приложений //infostart.ru/1c/articles/1683197/ выдвигает требования не только к архитектуре приложения, но и к возможностям операционной системы, поэтому совершенствование ОС в этом направлении неизбежно.  

P. S. Поскольку ссылки на телеграмм канал выкладывать запрещено, интересующиеся подробностями пишите в личку.

Виртуализация Производительность

См. также

Оптовая торговля Розничная торговля Логистика, склад и ТМЦ Облачные сервисы, хостинг Программист Пользователь Платформа 1С v8.3 Управляемые формы 1С:Управление торговлей 10 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Платные (руб)

Данная система предназначена всем, кому нужно выгружать данные в SPOT 2D или в ОРИМИ. Позволяет гибко настроить получение данных для каждого поля файла и файла выгрузки в целом. Имеет отборы по организации, складу, и папкам номенклатуры. Есть возможность выгружать данные как вручную, с выбором конкретного файла, за конкретный период, так и в автоматическом режиме в указанное вами время. Выгрузка может выполняться в файл или через http напрямую. Имеется подробная справка по настройке, а также примеры запросов для приведенных в примерах файлов выгрузки. Может работать в составе любой конфигурации! Обновление от 31.03.2020!

14400 руб.

19.10.2018    28609    7    1    

9

Управление взаимоотношениями с клиентами (CRM) Телефония, SIP Облачные сервисы, хостинг Платформа 1С v8.3 Конфигурации 1cv8 Управленческий учет Платные (руб)

Продукт интеграции возможностей Облачной АТС Билайн в систему 1С Предприятие 8. Звонки прямо из программы 1С, уведомления о текущих звонках, регистрация пропущенных и завершенных вызовов, ведение журнала, анализ данных об использовании мобильной связи.

12000 руб.

20.03.2019    22889    53    0    

36

Облачные сервисы, хостинг Бесплатно (free)

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

02.09.2024    342    EFSOL_oblako    0    

0

Облачные сервисы, хостинг Системный администратор Программист Бесплатно (free)

Примеры решения некоторых насущных проблем при работе с облачными сервисами, покрываемых CLI версией Открытого пакета интеграций - OInt CLI.

05.08.2024    1718    bayselonarrend    7    

26

Облачные сервисы, хостинг Linux Системный администратор Программист Платформа 1С v8.3 Бесплатно (free)

Одна из завершающих публикаций цикла "В облако на работу:.. Рецепты от Капитана" в ходе которых был собран полнофункциональный рабочий контур 1С в сети на отечественной Ред ОС. С веб-серверами, доменной авторизацией, архивированием и прочая прочая... Это основное блюдо, на закуску разберемся с отказоустойчивостью. В этой публикации для PostgreSQL, заодно попробуем сделать это по новому.

17.06.2024    7138    capitan    18    

40

Облачные сервисы, хостинг Linux Системный администратор Программист Платформа 1С v8.3 Бесплатно (free)

В прошлых публикациях мы, не торопясь, после настройки персонального рабочего места на РедОС 7.3, посмотрели РедОС 8 и почти полностью собрали рабочую сеть 1С на отечественной ОС подходящую для работы среднего размера компании. С веб-серверами, доменной авторизацией и прочая прочая... Осталось настроить регулярное архивирование, чтобы не потерять нажитое.

27.05.2024    1303    capitan    6    

9

Облачные сервисы, хостинг Linux Системный администратор Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

В одном из лучших руководств администраторов "UNIX and Linux System Administration Handbook, © 2018 Pearson Education lnc." описывается такой метод настройки систем: "Копируй, вставляй, молись". Какой бы ни была подробной инструкция и на какой бы типовой системе она ни составлялась, всегда что-то может пойти не так. В этой публикации рассмотрим, как искать и устранять ошибки авторизации ОС сервером 1С на базе linux.

02.05.2024    1286    capitan    0    

11

Облачные сервисы, хостинг Linux Системный администратор Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

В публикации рассматриваются все варианты авторизации ОС сервером 1С на базе РЕД ОС 8 в домене windows. Как случаи, когда сервер 1С авторизирует веб и обычных клиентов 1С в active directory, так и когда сам сервер является клиентом, например при HTTP запросах выполняемых сервером 1С.

18.03.2024    1449    capitan    1    

9
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. 3vs 18.07.22 06:56 Сейчас в теме
Круто!
Отличная статья к утреннему чаю! :-)
nshestak; +1 Ответить
2. TMV 14 20.07.22 09:37 Сейчас в теме
Если Вам предлагают новые технологии, которые улучшат жизнь вашей компании - сразу ищите, где Вам врут, для кого Вы ресурс и кто Вас использует.
В этом месте у Нуралиева глаз дернулся.
DrAku1a; IgorS; +2 Ответить
Оставьте свое сообщение