При подборе серверного оборудования, если подразумевается эксплуатация типовых продуктов 1С, следует обратиться к фирменным рекомендациям 1С по конфигурации сервера, учитывающих количество пользователей, чтобы производительность сервера им соответствовала. При наличии подписки на ИТС, подобрать конфигурацию в соответствии с имеющимися ресурсами можно, обратившись к соответствующей статье. Например, серверы для 1С при малом внедрении должны иметь следующие характеристики:
Количество пользователей | Процессор | Память | Диск |
---|---|---|---|
До 100 | 2 ядерный, HyperThreading | 8 ядер | 16 Гб |
Выбор сервера для 1С – рекомендации подбора необходимых компонент серверного оборудования
Оборудование сервера, которое оказывает влияние на производительность системы:
- Процессор;
- Жесткие диски;
- Оперативная память.
Процессор
При подборе модели процессора необходимо ориентироваться не только на количество ядер, но и на скорость работы, т.е. скорость обработки команд в одном потоке. При этом важно помнить, что планируемый процессор должен быть более позднего поколения, с такой же или большей частотой, чем текущий.
При расчете количества и параметров процессоров по методике 1С, получившееся дробное число необходимо округлить в сторону увеличения и после этого привести к количеству реальных процессоров. Например, если получилось 10,7, то округляя, получим 11, и кратное этому числу – 12 (два процессора по 6 ядер).
Основные показатели счетчиков:
\Processor(_Total)\% Processor Time – % загруженности процессоров;
\System(_Total)\Processor Queue Length – длина очереди к процессорам.
Диски
При подборе дисков следует руководствоваться показателями IOPS и пропускной способности, а также временем отклика в миллисекундах.
IOPS (input/output operations per second) или скорость обработки данных – это количество операций ввода-вывода, выполняемых системой хранения данных за одну секунду.
Замер IOPS обычно осуществляется по следующим показателям:
- IOPS среднее время операций произвольного чтения в секунду;
- IOPS среднее время операций произвольных записей в секунду;
- IOPS среднее число операций последовательных чтений в секунду;
- IOPS среднее число операций последовательных записей в секунду;
- Всего IOPS суммарное число записей/чтений в секунду.
На основании вышесказанного, необходимо определиться, какие именно параметры вас интересуют, и уточнить их у производителя, не полагаясь всецело только на итоговые показатели. Отметим, что указанные производителем величины воспроизвести на практике обычно не удается, поэтому перед приобретением, следует ознакомиться с существующими обзорами по выбранному продукту.
Под пропускной способностью обычно подразумевается запись/чтение файла в один поток, последовательно.
Под временем отклика подразумевается время, необходимое диску для начала операции чтения или записи.
Основные показатели счетчиков:
\PhysicalDisk(_Total)\Avg. Disk Queue Length – Очередь к дискам
\PhysicalDisk(*)\Avg. Disk Bytes/Write – Среднее время записи на диск
\PhysicalDisk(*)\Avg. Disk Bytes/Read – Среднее время чтения с диска
При выборе дискового массива следует также учитывать его отказоустойчивость, которая достигается во многом за счет дублирования информации. Рассмотрим наиболее часто употребляемый и рекомендуемый RAID 10 массив или RAID 1 + 0, известный как «чередование пары зеркал». Это обеспечивает избыточность первого зеркального отображения каждого диска, используя RAID 1, а затем чередование зеркальных дисков, с поддержкой RAID 0, повышает их производительность.
Недостатком конфигурации можно считать ее стоимость: поскольку только половина дискового пространства доступна для использования, для создания массива требуется приобрести вдвое большее число дисков. Тем не менее, именно эта конфигурация обладает оптимальной архитектурой для обеспечения отказоустойчивости, позволяя при выходе из строя нескольких дисков из разных блоков, поддержать работу системы в оперативном режиме, без снижения производительности.
Данный уровень комбинирует 0 и 1 уровень. От 1 уровня заимствуется создания пар «зеркал», а от 0 – объединение в массив. Получаются зеркальные пары, расположенные в массиве, что обеспечивает надежность и производительность. Заметим, что возможно использовать только четное число дисков и, если оба диска в одной из RAID 1 зеркальной пары выйдут из строя в одно и то же время, система больше не будет функционировать.
При подборе дисков также можно ориентироваться на:
- Рекомендации производителя. Результаты произведенных замеров предоставить поставщику дисков, чтобы он мог подобрать оборудование с расчетной скоростью больше, например, в 5раз и объемом – в 2 раза.
- Опубликованные данные программ нагрузочного тестирования. Многие производители, а также независимые ресурсы, публикуют данные по сравнительной производительности дисковых массивов.
- Выбор сервера для 1С - рекомендации. Например, получить информацию о тестировании по данной ссылке и пример использования утилиты SQLIO для сравнения производительности дисковых массивов для СУБД MS SQL Server.
- Рейтинги производителей. Информацию о надежности и долговечности носителей того или иного производителя легко найти в специализированных обзорах.
Память
При расчете целевой системы для подбора памяти сервера, необходимо просуммировать показатели следующих процессов:
- ragent
- rmngr
- rphost
Для SQL Sever наличие достаточного размера оперативной памяти является важным условием для оптимальной работы, поскольку любые изменения и данные, в том числе запросы на выборку данных, сначала загружаются в память, а затем записываются на диск. При этом многим другим операциям необходим скоростной доступ к памяти, например, при сортировке данных в предложения ORDER BY, в запросе для выполнения вычислений, для создания хэш объединения двух таблиц и пр.
Основные счетчики, которые необходимо собирать и анализировать:
Группа | Счетчик | Описание | Значения |
---|---|---|---|
Memory | Available Bytes | Свободно физической памяти | Зависит от системы |
Pages/sec | Скорость чтения и записи страниц на диск для разрешения серьезных сбоев страниц | Критично, если количество страниц подкачки превышает 50 на каждое устройство свопа | |
Page Faults/sec | Скорость общих ошибочных страниц | Показывает насколько часто данные не находятся в рабочем наборе. Включает случаи аппаратных и программных прерываний | |
Pages Input/sec | Скорость входных ошибок | ||
Pages Output/sec | Скорость выходных ошибок | ||
Paging File %Usage Peak | Пиковые значения в памяти файла подкачки | ||
Paging File: %Usage | Скорость использования памяти файла подкачки | ||
SQLServer:Buffer Manager | Buffer cache hit ratio | Полнота размещения данных в буфере кэша SQL Server | Не менее 90 |
Page Life Expectancy | Среднее время нахождения страницы в буфере (в секундах) | Чем выше значение, тем больше шансов, что при обращении к данным, они найдутся в буфере, и не придется обращаться к жесткому диску, чтобы заново их прочитать | |
Checkpoint Pages/sec | Число страниц, записываемых на диск за одну секунду при создании контрольной точки или выполнении другой операции, требующей, чтобы все «грязные» страницы были записаны на диск | Среднее значение <30 | |
Lazy writes/sec | Число буферов, записываемых за одну секунду модулем отложенной записи, входящим в диспетчер буферов | Среднее значение <20, но в контексте системы | |
SQLServer:Memory Manager | Memory Grants Pending | Число процессов, ожидающих доступа к памяти | Среднее значение = 0, но в контексте системы |
Target Server Memory (KB) | Максимальный объем, который может быть использован SQL сервером | Близко к размеру физической памяти | |
Total Server Memory (KB) | Физическая память, установленная серверу SQL | Близко к целевой памяти сервера | |
Process | Private Bytes | Объем занимаемой процессом памяти |
Настройка и оптимизация кластера серверов приложений 1С
Документация информационно-технической службы 1С содержит подробные указания по настройке серверов, поэтому рассматривать подробно этот вопрос не имеет смысла. Остановимся только на некоторых нюансах, заслуживающих особого внимания.
Максимальный объем памяти рабочих процессов
Установленное в этом поле по умолчанию значение «0» ограничивает размер доступной памяти на сервере 80% для всех процессов 1С. При большом объеме памяти на сервере, выделенном под 1С, 20 неиспользованных процентов составят довольно большой, но неэффективный объем. Например, в 132 Гб памяти, доступно для процессов 1С будет ~105,6 Гб, а оставшаяся память, за вычетом расходов на сервер, будет не использована. Поэтому для максимально эффективного использования памяти, в этом параметре следует установить значение отличное от нуля.
Параметры рабочих процессов
Комментарии 1С: «Поддержка NUMA в кластере серверов «1С:Предприятие» полноценно пока не реализована. Сервер 1С не управляет распределением ресурсов по NUMA-узлам, полностью полагаясь в этом на операционную систему, что не всегда дает оптимальный результат».
Использование Numa-технологии в несколько процессоров, приводит к необходимости запуска определенного количество рабочих процессов для планомерной нагрузки процессоров.
Данное плановое количество рассчитывается на основании статистических данных по количеству подключений: статистический показатель – среднее количество пользователей – делится на количество Numa Nod. На основании данного показателя редактируется лимит соединений.
Например, «Количество соединений на процесс» для 12 процессоров при среднем количестве подключений – 120 ставит 10 (120/12).
В процессе работы необходимо снимать показатели загрузки процессоров и корректировать количество процессов 1С, вводя корректирующие коэффициенты.
Заполнение по чек-листу настроек сервера для 1С
- На серверах разворачивайте только рабочие базы. Не держите там тестовые данные, развернутые бэкапы и другие базы разработчиков и тестировщиков.
- Определите, к каким из рабочих процессов rphost будет открыт доступ. В соответствии с политикой безопасности настройте права доступа для пользователя, под которым запущен сервер 1С. Можно также переопределить пользователей, от имени которых будут выполняться рабочие процессы и менеджер кластера.
- Настройте сбор логов и дампов с помощью технологического журнала и Windows Error Reporting Services.
События для технологического журнала:
- Проверьте, не блокирует ли брандмауэр соединения с сервером.
- Не используйте на рабочих серверах кластера одновременно IPv4 и IPv6.
- Для эффективного использования тактовой частоты процессора настройте схему управления питания и установите ее в положение «Высокая производительность».
- Для релизов, с установленным режимом совместимости 8.3.8 или выше, установите актуальную версию Microsoft SQL Server Native Client на сервер 1С.
- Добавьте необходимые базы в рабочий кластер.
- Настройте число соединений и ИБ на процесс.
- Настройте время перезапуска. Если в рабочий кластер входит несколько серверов, то распределите нагрузку по серверам, используя «Требования назначения функциональности».
- Правильно разместите программные лицензии.
- При использовании режима отказоустойчивости, установите соответственный уровень отказоустойчивости и признак центрального сервера. Важно учитывать, что репликация памяти между серверами вызовет увеличение накладных расходов.
- Не настраивайте бэкапирования папок директорий сервера.
- Не производите сжатие этих папок и их содержимого.
- По возможности, отключите антивирусную защиту на сервере.
64- или 32-разрядный сервер 1С. Какой платформе отдать предпочтение?
Немного об архитектуре:
При использовании 32-разрядной ОС виртуальный размер процесса для версии Windows по умолчанию составляет 2 Гб. Если приложение использует большее адресное пространство, и система загружена со специальным параметром, размер процесса для 32-разрядной версии Windows может возрасти до 3 Гб, а для 64-разрядной — до 4 Гб.
Размер виртуального адресного пространства процесса для 64-разрядной версии Windows на системах IA64 составляет 7,152 Гб, а на системах x64 — 8,192 Гб.
1С не использует технологию AWE (Address Windowing Extension), которая позволяет процессу выделять больше физической памяти, чем может быть представлено в его виртуальном адресном пространстве.
В условиях ограничения объема процесса 1С в 2Гб и ограничения памяти 32-разрядные приложения могут использоваться для небольших компаний с небольшим количеством пользователей и не ресурсоемкими операциями. Помимо этого, как рекомендует 1С, запуск нескольких rphost позволит эффективнее использовать оперативную память сервера и снизить издержки фрагментации памяти.
В 64-разрядном сервере «1С:Предприятие» один rphost может полностью использовать и оперативную память, и процессорные ресурсы сервера. Поэтому для 64-разрядного сервера 1С нормальным считается запуск одного рабочего процесса на один сервер. При этом следует учесть аварийное завершение в процессе. В данном случае рекомендуется не менее двух.
Большое количество процессов имеет как минусы:
- Увеличение издержек на служебные вызовы между процессами сервера «1С:Предприятие» и возможность снижения общей производительности системы;
- Занятие дополнительных IP-портов (по 2 на каждый процесс).
…так и плюсы:
- Дополнительная отказоустойчивость;
- Возможность равномерно распределить нагрузку по NUMA-нодам.
консультация эксперта
самые свежие новости 1 раз в месяц