Технологические вопросы крупных внедрений
03.03.2021
Для своевременного обнаружения узких мест в оборудовании необходимо проводить постоянный мониторинг загруженности всех основных аппаратных компонентов системы. К ним в первую очередь относятся:
Для каждого из этих компьютеров необходимо настроить сбор информации по загруженности оборудования.
Во время работы системы рекомендуется осуществлять постоянный мониторинг и запись основных показателей загруженности оборудования. Для этого можно использовать разные средства, в данной статье будет рассказано, как это можно сделать с помощью Performance Monitor, входящего в состав операционной системы Windows, и ЦКК – Центра контроля качества, типовой конфигурации, входящая в Корпоративный инструментальный пакет.
Для запуска Performance Monitor выберите соответствующий пункт меню раздела Administrative Tools контрольной панели Windows.
Добавьте в список наборов счетчиков (Data Collector Sets) новый набор (User Defined – пользовательский):
Настройка будет осуществляться вручную – в диалоговом окне нужно выбрать соответствующий пункт и нажать «Далее»:
Выберите, какие именно данные будут собираться. Нас интересуют Счетчики производительности:
На следующем шаге выбираются сами счетчики, которые будут входить в набор.
Мы рекомендуем в обязательном порядке собирать данные по следующим счетчикам:
Копировать в буфер обмена"\Processor(_Total)\Interrupts/sec"
"\LogicalDisk(_Total)\% Free Space"
"\Memory\Available Mbytes"
"\PhysicalDisk(_Total)\Avg. Disk Queue Length"
"\PhysicalDisk(_Total)\Avg. Disk Sec/Read"
"\PhysicalDisk(_Total)\Avg. Disk Sec/Write"
"\Processor(_Total)\% Idle Time"
"\Processor(_Total)\% Processor Time"
"\Processor(_Total)\% User Time"
"\System\Context Switches/sec"
"\System\File Read Bytes/sec"
"\System\Context Switches/sec"
"\System\File Read Bytes/sec"
"\System\File Write Bytes/sec"
"\System\Processes"
"\System\Processor Queue Length"
"\System\Threads"
Состав счетчиков может меняться в зависимости от роли компьютера. Например, для сервера приложений 1С:Предприятие к перечисленным выше стоит добавить показатели работы процессов 1с:Предприятие:
Копировать в буфер обмена"\Process("1cv8*")\% Processor Time"
"\Process("1cv8*")\Private Bytes"
"\Process("1cv8*")\Virtual Bytes"
"\Process("ragent*")\% Processor Time"
"\Process("ragent*")\Private Bytes"
"\Process("ragent*")\Virtual Bytes"
"\Process("rphost*")\% Processor Time"
"\Process("rphost*")\Private Bytes"
"\Process("rphost*")\Virtual Bytes"
"\Process("rmngr*")\% Processor Time"
"\Process("rmngr*")\Private Bytes"
"\Process("rmngr*")\Virtual Bytes"
Обратите внимание, что имена счетчиков могут незначительно отличаться в зависимости от версии вашей операционной системы
Рекомендуемая частота получения значений для рабочей системы – один раз в 15 секунд. В нагрузочных тестах рекомендуем собирать счетчики чаще, например, один раз в 1 секунду, т.к. длительность каждого непрерывного нагрузочного теста обычно не превышает десятка часов, а анализировать более детальные данные удобнее.По окончании выбора нажмите «Далее», укажите директорию хранения логов, при необходимости – пользователя, от имени которого будет запускаться процесс сборщика, и сохраните набор.
Откройте для дальнейшего редактирования его свойства (например, кликнув по нему в списке двойным щелчком мыши):
Можно выбрать формат файла логирования: бинарный удобен, если планируется анализировать графические данные, CSV – если планируется как-либо программно обрабатывать данные. В данном примере выбран бинарный.
На закладке «Files» можно настроить шаблон имени файлов и режим записи. Для сохраненного набора также можно настроить расписание и задать ограничения и условия окончания сбора.
В данном случае замер не стартует автоматически, но на продуктивных площадках рекомендуется не забыть настроить планировщик задач на автозапуск выбранного счетчика, например, каждый час, если сбор данных ещё не запущен.
После сохранения можно запустить замер (при помощи кнопки Start контекстного меню).
Создать набор счетчиков Performance Monitor и управлять сбором данных можно не только интерактивно, но и при помощи консольной утилиты logman. Подробно работа с ней описана на сайте Microsoft https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/logman
Команда создания набора будет выглядеть так:
Копировать в буфер обменаlogman create counter 1C_counter -f bincirc -c "\Processor(_Total)\Interrupts/sec" "\LogicalDisk(_Total)\% Free Space" "\Memory\Available Mbytes" "\PhysicalDisk(_Total)\Avg. Disk Queue Length" "\PhysicalDisk(_Total)\Avg. Disk Sec/Read" "\PhysicalDisk(_Total)\Avg. Disk Sec/Write" "\Processor(_Total)\% Idle Time" "\Processor(_Total)\% Processor Time" "\Processor(_Total)\% User Time" "\System\Context Switches/sec" "\System\File Read Bytes/sec" "\System\Context Switches/sec" "\System\File Read Bytes/sec" "\System\File Write Bytes/sec" "\System\Processes" "\System\Processor Queue Length" "\System\Threads" -si 5 -v mmddhhmm
Для просмотра данных откройте бинарный файл замера .blg, по умолчанию Windows откроет такой тип при помощи Performance Monitor:
Выделить график, относящийся к конкретному счетчику, можно, встав на линию графика либо на строку счетчика в списке снизу. Для него при этом отобразятся среднее, минимальное, максимальное и последнее значение за период замера:
Интерес представляют, как правило, среднее значение и «пики» - максимум / минимум в зависимости от смысла счетчика.
Ниже в таблице приведены описания и предельные значения некоторых из них:
Группа |
Счетчик |
Описание |
Критерий |
Узкое место |
Memory |
Pages/sec |
Интенсивность обмена между дисковой подсистемой и оперативной памятью |
Среднее: около 0 Максимальное: не более 20 |
Недостаточно оперативной памяти |
Processor [_Total] |
% Processor Time |
Загруженность процессоров | Не более 70% в течение длительного времени | Недостаточная производительность процессоров |
System |
Processor Queue Length |
Очередь к процессорам | Не более 2 * количество ядер процессоров в течение длительного времени | Недостаточная производительность процессоров |
Physical Disk |
Avg. Disk Queue Length |
Очередь к дискам | Не более 2 * количество дисков, работающих параллельно | Недостаточная производительность дисковой подсистемы |
Network Interface |
Bytes Total/sec |
Скорость передачи данных через сеть | Не более 65% от пропускной способности сетевого адаптера | Недостаточная пропускная способность сетевого интерфейса |
Для остальных показателей значения будут зависеть от конкретного оборудования, системы и характера нагрузки.
Если в вашей системе используется Центр контроля качества (процедура установки и настройки ЦКК описана в статье «Мониторинг на продукционных серверах» https://its.1c.ru/db/metod8dev#content:5809:hdoc), сбор и анализ счетчиков производительности для серверов (как Windows, так и для Linux) удобно выполнять непосредственно в нем.
Для этого откройте список площадок эксплуатации (по умолчанию он находится сразу на главной странице), раскройте нужную площадку и в списке оборудования и найдите необходимый сервер:
Для сервера в примере сбор не производится: в поле «Сбор счетчиков» указано значение «Отключить»). Включите его, выбрав способ доступа из двух возможных:
В данном примере выбирается значение «Агент КИП»: у нас на сервере установлено и работает это приложение, пользователь, от имени которого запущена служба Агента, имеет соответствующие права (входит в группу Performance Monitor Users).
Необходимые счетчики можно добавить в список вручную, выбрав из списка:
Кроме того, можно заполнить список исходя их счетчиков по умолчанию, указанных для роли оборудования сервера (если они были заданы). Для этого необходимо нажать кнопку «Сихронизировать» на командной панели формы элемента справочника:
По умолчанию для добавленных счетчиков устанавливается свойство использования (флажок «Вкл») – сбор начнется после записи элемента автоматически, если включено соответствующее регламентное задание. Также можно выполнить настройку контроля для формирования инцидентов по счетчикам: https://its.1c.ru/db/kip. Пример: создание инцидентов по счетчикам производительности.
Просмотреть результаты в интерфейсе ЦКК можно, например, непосредственно из карточки оборудования, нажав на кнопку «Диаграмма» командной панели:
Интерфейс диаграммы практически аналогичен интерфейсу Performance Monitor: доступно изменение масштаба, цветов, отключение отображения счетчиков, выделение текущего и др.