часто задаваемые вопросы о Configuration Manager размера и производительности сайта

Относится к Configuration Manager (Current Branch)

В этом документе рассматриваются часто задаваемые вопросы о Configuration Manager рекомендации по выбору размера сайта и распространенные проблемы с производительностью.

Конфигурация компьютера и диска

Как отформатировать диски на сервере сайта и SQL Server?

Разделите Configuration Manager папки "Входящие" и SQL Server файлы по крайней мере на двух разных томах. Это разделение позволяет оптимизировать размеры распределения кластеров для различных типов операций ввода-вывода, которые они выполняют.

Для тома, в котором размещаются папки "Входящие" сервера сайтов, используйте NTFS с единицами распределения объемом 4 или 8 КБ. ReFS записывает 64k даже для небольших файлов. Configuration Manager содержит много небольших файлов, поэтому ReFS может создавать ненужные издержки на диске.

Для дисков, содержащих файлы SQL Server базы данных, используйте форматирование NTFS или ReFS с 64 КБ единиц распределения.

Как и где следует разместить файлы базы данных SQL Server?

Современные массивы твердотельных накопителей (SSD) и Azure хранилище класса Premium могут обеспечить высокий уровень операций ввода-вывода в секунду на одном томе с небольшим количеством дисков. Обычно в массив добавляются дополнительные диски для дополнительного хранилища, а не для дополнительной пропускной способности. Если вы используете физические диски на основе шпинделя, может потребоваться больше операций ввода-вывода в секунду, чем можно создать на одном томе. Необходимо выделить 60 % от общего рекомендуемого объема операций ввода-вывода в секунду и дискового пространства для файла .mdf , 20 % для LDF-файла и 20 % для временных файлов журнала и данных. LDF-файлы и временные файлы могут находиться на одном томе с 40 % (20 % + 20 %) выделенных операций ввода-вывода в секунду.

SQL Server версиях, предшествующих SQL Server 2016, по умолчанию создан только один временный файл данных. Следует создать дополнительные сведения, чтобы избежать SQL Server блокировки и ожидания доступа к одному файлу. Мнения сообщества зависят от лучшего количества временных файлов данных, которые нужно создать, от четырех до восьми. Тестирование показывает небольшую разницу между четырьмя и восемью, поэтому можно создать четыре файла временных данных одинакового размера . Размер файлов данных tempdb должен составлять до 20–25 % от размера полной базы данных.

Существуют ли другие рекомендации по настройке диска?

При настройке задайте для параметра Память контроллера RAID значение 70 % выделения для операций записи и 30 % для операций чтения. Как правило, для базы данных сайта используйте конфигурацию массива RAID 10. RAID 1 также допустим для небольших сайтов с низкими требованиями к вводу-выводу или при использовании быстрых SSD. При использовании больших массивов дисков настройте резервные диски для автоматической замены неработообразующих дисков.

Пример. Физический компьютер с физическими дисками

Рекомендации по размеру для совместно размещенного сервера сайта и SQL Server с 100 000 клиентов — 1200 операций ввода-вывода в секунду для почтовых ящиков сервера сайта и 5000 операций ввода-вывода в секунду для SQL Server файлов.

Результирующая конфигурация диска может выглядеть следующим образом:

Диски1 RAID Формат Содержимое тома Минимальное количество операций ввода-вывода в секунду Около2 операций ввода-вывода в секунду
2x10k 1 - Windows -
6x15k 10 NTFS 8k папки "Входящие" ConfigMgr 1700 1751
12x15k 10 64k ReFS SQL .mdf 60%*5000 = 3000 3476
8x15k 10 64k ReFS SQL .ldf, временные файлы 40%*5000 = 2000 2322
  1. Не включает рекомендуемые резервные диски.
  2. Это значение из примеров конфигураций дисков.

Я использую Hyper-V на Windows Server. Как настроить диски для виртуальных машин Configuration Manager для обеспечения максимальной производительности?

Hyper-V обеспечивает аналогичную производительность физического сервера, если для виртуальной машины выделены аппаратные ресурсы (ядра ЦП и сквозное хранилище). Использование VHD - или VHDX-файлов фиксированного размера приводит к снижению производительности операций ввода-вывода на 1–5 %. Использование динамически расширяющихся VHD- или VHDX-файлов приводит к снижению производительности операций ввода-вывода для рабочей нагрузки Configuration Manager до 25 %. Если требуется динамическое расширение дисков, выполните компенсацию, добавив дополнительную производительность в 25 % операций ввода-вывода в секунду в массив.

При запуске сервера сайта Configuration Manager или SQL Server на виртуальной машине изолируйте диски ОС узла Hyper-V от ос виртуальной машины и дисков данных.

Дополнительные сведения об оптимизации виртуальных машин см. в разделе Настройка производительности серверов Hyper-V.

Пример. Сервер сайта на основе виртуальной машины Hyper-V

Рекомендации по размеру для совместно размещенного сервера сайта и SQL Server с 150 000 клиентов — 1800 операций ввода-вывода в секунду для почтовых ящиков сервера сайта и 7400 операций ввода-вывода в секунду для SQL Server файлов.

Результирующая конфигурация диска может выглядеть следующим образом:

Диски1 RAID Формат2 Содержимое тома Минимальное количество операций ввода-вывода в секунду Около3 операций ввода-вывода в секунду
2x10k 1 - ОС узла Hyper-V - -
2x10k 1 - (Виртуальная машина) ОС сервера сайта - -
2xSSD SAS 1 NTFS 8k (Виртуальная машина) ConfigMgr папки "Входящие" 1800 7539
4xSSD SAS 10 64k ReFS (Виртуальная машина) SQL Server узла (все файлы) 7400 14346
  1. Не включает рекомендуемые резервные диски.
  2. VHDX-файл фиксированного размера для диска виртуальной машины, выделенного для базового тома.
  3. Это значение из примеров конфигураций дисков.

Существуют ли рекомендации по Configuration Manager средам в Microsoft Azure?

Начните с чтения Configuration Manager Azure часто задаваемых вопросов.

Azure виртуальные машины IaaS ( инфраструктура как услуга), использующие диски на основе хранилище класса Premium, могут иметь высокий уровень операций ввода-вывода в секунду. На этих виртуальных машинах настройте дополнительные диски для ожидаемого дискового пространства, а не для дополнительных операций ввода-вывода в секунду.

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

Дополнительные сведения и рекомендации по повышению производительности хранилище класса Premium и запуску SQL Server на виртуальных машинах IaaS Azure см. в следующем разделе:

Пример: сервер сайта на основе Azure

Рекомендации по размеру для совместно размещенного сервера сайта и SQL Server с 50 000 клиентов — это 8 ядер, 32 ГБ и 1200 операций ввода-вывода в секунду для почтовых ящиков сервера сайта и 2800 операций ввода-вывода в секунду для SQL Server файлов.

Результатом Azure компьютера может быть DS13v2 (8 ядер, 56 ГБ) со следующей конфигурацией диска:

Drives Формат Contains Минимальное количество операций ввода-вывода в секунду Приблизительно1 число операций ввода-вывода в секунду
<Стандартный> - ОС сервера сайта - -
1xP20 (512 ГБ) NTFS 8k папки "Входящие" ConfigMgr 1200 2334
1xP30 (1024 ГБ) 64k ReFS SQL Server (все файлы2) 2800 3112
  1. Это значение из примеров конфигураций дисков.
  2. Azure руководство позволяет разместить TempDB на локальном диске D: на основе SSD, так как он не превысит доступное пространство и позволяет дополнительно распределить дисковые операции ввода-вывода.

Пример: сервер сайта на основе Azure (для мгновенного повышения производительности)

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

Измените диски в предыдущем примере Azure, чтобы увидеть, как изменяется число операций ввода-вывода в секунду.

DS13v2

Диски1 Формат Contains Минимальное количество операций ввода-вывода в секунду Около2 операций ввода-вывода в секунду
<Стандартный> - ОС сервера сайта - -
2xP20 (1024 ГБ) NTFS 8k папки "Входящие" ConfigMgr 1200 3984
2xP30 (2048 ГБ) 64k ReFS SQL Server (все файлы3) 2800 3984
  1. Диски чередуются с помощью дисковые пространства.
  2. Это значение из примеров конфигураций дисков. Размер виртуальной машины ограничивает производительность.
  3. Azure руководство позволяет разместить TempDB на локальном диске D: на основе SSD, так как он не превысит доступное пространство и позволяет дополнительно распределить дисковые операции ввода-вывода.

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

DS14v2

Диски1 RAID Формат Contains Минимальное количество операций ввода-вывода в секунду Около2 операций ввода-вывода в секунду
<Стандартный> - ОС сервера сайта - -
2xP20 (1024 ГБ) NTFS 8k папки "Входящие" ConfigMgr 1200 4639
2xP30 (2048 ГБ) 64k ReFS SQL Server (все файлы3) 2800 6182
  1. Диски чередуются с помощью дисковые пространства.
  2. Это значение из примеров конфигураций дисков. Размер виртуальной машины ограничивает производительность.
  3. Azure руководство позволяет разместить TempDB на локальном диске D: на основе SSD, так как он не превысит доступное пространство и позволяет дополнительно распределить дисковые операции ввода-вывода.

Производительность SQL Server

Лучше ли запускать с SQL Server совместно с сервером сайта или запускать его на удаленном сервере?

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

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

  • Расширенные возможности доступности сайтов, например SQL Server Always On
  • Возможность выполнения интенсивных отчетов с меньшим количеством подслушив на сайте
  • Более простое аварийное восстановление в некоторых ситуациях
  • Упрощение управления безопасностью
  • Разделение ролей для управления SQL Server, например с помощью отдельной команды DBA

Для совместного размещения SQL Server требуется один сервер, и это типично для большинства мелких клиентов. Преимущества этой конфигурации:

  • Снижение затрат на компьютеры, лицензии и обслуживание
  • Меньше точек сбоя на сайте
  • Улучшенный контроль за планированием простоя

Сколько ОЗУ следует выделить для SQL?

По умолчанию SQL Server использует всю доступную память на сервере, что может привести к нехватке операционной системы и других процессов на компьютере. Чтобы избежать потенциальных проблем с производительностью, важно явно выделить память для SQL Server. На серверах сайта, совместно размещенных с SQL Server, убедитесь, что ОС имеет достаточно ОЗУ для кэширования файлов и других операций. Убедитесь, что для SMSExec и других Configuration Manager процессов осталось достаточно ОЗУ. При выполнении SQL Server на удаленном сервере можно выделить большую часть памяти SQL, но не всю. Ознакомьтесь с рекомендациями по выбору размера , чтобы ознакомиться с первоначальными рекомендациями.

SQL Server выделение памяти должно округлиться до всего ГБ. Кроме того, по мере увеличения объема ОЗУ можно позволить SQL Server иметь более высокий процент. Например, если доступно 256 ГБ или более ОЗУ, можно настроить SQL Server до 95 %, так как это по-прежнему сохраняет много памяти для ОС. Мониторинг файла подкачки — это хороший способ убедиться, что для ОС и Configuration Manager процессов достаточно памяти.

Ядра дешевые в наши дни. Следует ли просто добавить их в свою SQL Server?

Вы можете столкнуться с проблемами, связанными с памятью, если на SQL Server имеется более 16 физических ядер и недостаточно ОЗУ. Рабочая нагрузка Configuration Manager работает лучше, если для SQL доступно не менее 3–4 ГБ ОЗУ на ядро. При добавлении ядер в SQL Server обязательно увеличьте объем ОЗУ пропорционально.

Повлияет ли группа доступности SQL Server Always On на мою производительность?

Как правило, группы доступности незначительно влияют на производительность системы, если между реплика серверами имеется достаточное количество сетевых подключений. Вы можете быстро расти LDF-файл журнала базы данных в среде группы доступности с напряженной работой. Однако после успешного резервного копирования базы данных пространство журнала освобождается автоматически. Добавьте задание SQL Server для базы данных Configuration Manager для резервного копирования, например каждые 24 часа, и резервного копирования LDF каждые шесть часов. Дополнительные сведения о группах доступности и Configuration Manager, в том числе о стратегиях SQL Server резервного копирования, см. в статье Подготовка к использованию группы доступности SQL Server Always On.

Следует ли включить сжатие SQL Server в базе данных?

SQL Server сжатие не рекомендуется для базы данных Configuration Manager. Хотя с включением сжатия в базе данных Configuration Manager не возникает никаких функциональных проблем, результаты тестирования не показывают большого сокращения размера по сравнению с потенциальным влиянием на производительность системы.

Следует ли включить шифрование SQL Server в базе данных?

Все секреты в базе данных Configuration Manager уже хранятся безопасно, но добавление SQL Server шифрования может добавить еще один уровень безопасности. Функциональные проблемы с включением шифрования в базе данных отсутствуют, но производительность может быть снижена на 25 %. Поэтому шифруйте с осторожностью, особенно в крупномасштабных средах. Кроме того, не забудьте обновить планы резервного копирования и восстановления, чтобы обеспечить успешное восстановление зашифрованных данных.

Какую версию SQL Server следует запустить?

Поддерживаемые версии SQL см. в разделе Поддержка SQL Server версий. С точки зрения производительности все поддерживаемые версии SQL Server соответствовать требуемым критериям производительности. Обновление SQL Server на месте не обновляет уровни совместимости.

Если в некоторых SQL-запросах SQL Server 2016 или более поздних версий возникает необычное время ожидания или задержка, например при использовании RBAC в консоли Администратор, попробуйте изменить уровень совместимости SQL Server в базе данных Configuration Manager на 110. Полностью поддерживается работа на SQL Server уровне совместимости 110 SQL Server 2014 г. и более поздних версий SQL Server. Дополнительные сведения см. в статье Время ожидания SQL-запроса или замедление работы консоли при определенных Configuration Manager запросах базы данных.

С января 2018 г. следует избегать следующих SQL Server версий из-за различных известных проблем, связанных с производительностью, или других потенциальных проблем:

  • SQL Server 2012 с пакетом обновления 3 (SP3) с накопительным пакетом обновления 1 (CU1) до CU5
  • SQL Server 2014 с пакетом обновления 1 (SP1) с накопительным пакетом обновления 6 (CU6) — с пакетом обновления 2 (SP2)
  • SQL Server 2016 RTM — CU3, SP1 CU3 — CU5

Следует ли реализовывать дополнительные задачи обслуживания SQL Server?

Встроенная задача обслуживания "Перестроение индексов" перестраивает только сильно фрагментированные индексы. Затем Оптимизатор запросов обновляет статистику по связанным объектам, как описано в разделе После операций обслуживания документации ПО SQL. Таким образом, если вы полагаетесь исключительно на эту встроенную задачу, статистика может не обновляться для некоторых таблиц и представлений, что приводит к неоптимальным планам запросов и снижению производительности.

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

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

Дополнительные рекомендации доступны в сообществах Configuration Manager и SQL Server, включая сценарии обслуживания сторонних корпораций. В техническом документе Рекомендации ПО SQL для MECM приводится сводка опыта работы microsoft CSA по обслуживанию и настройке SQL.

На больших сайтах некоторые таблицы баз данных, такие как CI_CurrentComplianceStatusDetails, HinvChangeLog, могут быть большими в зависимости от шаблонов использования. Вам может потребоваться уменьшить или изменить свой подход, чтобы поддерживать их по одному.

Когда следует использовать полный SQL Server вместо SQL Server Express на дополнительных сайтах?

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

Существует одна ситуация, когда может потребоваться полная установка SQL Server. Если в вашей среде имеется большое количество точек распространения и пакетов или источников, можно превысить ограничение размера SQL Server Express в 10 ГБ. Если количество пакетов, в разных количествах точек распространения, превышает 4 000 000, например 2000 DPs с 2000 фрагментами содержимого, рассмотрите возможность использования полной SQL Server на дополнительных сайтах.

Следует ли изменить параметры MaxDOP в базе данных?

Оставить значение 0 (использовать все доступные процессоры) является оптимальным для общей производительности обработки в большинстве случаев.

Многие администраторы Configuration Manager следуют рекомендациям, приведенным в статье Рекомендации и рекомендации по параметру конфигурации "максимальная степень параллелизма" в SQL Server. На большинстве современных крупных оборудования это руководство приводит к рекомендуемой максимальной настройке восьми. Однако если вы выполняете много запросов меньшего размера, чем количество процессоров, это может помочь установить для него большее число. Ограничение до восьми не обязательно является лучшим параметром на больших сайтах, когда доступно больше ядер.

На серверах SQL Server с более чем восемью ядрами начните с параметра 0 и вносите изменения только в том случае, если возникают проблемы с производительностью или чрезмерная блокировка. Если вам нужно изменить MaxDOP из-за проблем с производительностью с 0, начните с нового значения, по крайней мере больше или равное минимальному рекомендуемом количеству ядер для SQL Server размера этого сайта. Переход ниже этого значения почти всегда имеет негативные последствия для производительности. Например, удаленному SQL Server для 100 000 клиентского сайта требуется не менее 12 ядер. Если SQL Server имеет 16 ядер, начните тестирование параметра MaxDOP со значением 12.

Настройка защиты от вредоносных программ

Какие папки на сервере сайта (или других ролях) следует исключить для антивирусной программы?

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

Дополнительные сведения о рекомендуемых исключениях антивирусной программы см. в статье Рекомендуемые исключения антивирусной программы для серверов сайта, систем и клиентов Configuration Manager.

Обслуживание WSUS

Что можно сделать, чтобы повысить эффективность работы СЛУЖБ WSUS при использовании с Configuration Manager?

Изменение нескольких ключевых параметров IIS, таких как длина очереди WsusPool и ограничение частной памяти WsusPool, может повысить производительность WSUS даже в небольших установках. Дополнительные сведения см. в примечании WSUS в статье Рекомендуемое оборудование.

Кроме того, убедитесь, что установлены последние обновления для операционной системы под управлением WSUS:

  • Windows Server 2012: любое накопительное обновление, отличное от "Только для безопасности", выпущенное в октябре 2017 г. или более поздней версии. (KB4041690)
  • Windows Server 2012 R2: любое накопительное обновление, отличное от "Только для безопасности", выпущенное в августе 2017 г. или более поздней версии. (KB4039871)
  • Windows Server 2016: любое накопительное обновление, отличное от "Только для безопасности", выпущенное в августе 2017 г. или более поздней версии. (KB4039396)

Какой тип обслуживания следует выполнять на серверах WSUS?

Я хочу настроить базовый мониторинг производительности для моего сайта. Что смотреть?

Традиционный мониторинг производительности сервера эффективно работает для общих Configuration Manager. Вы также можете использовать решения мониторинга, такие как Azure Monitor, для мониторинга базовой работоспособности серверов. См. статью ConfigMgr базовые показатели производительности в записи блога Easy Way. Вы также можете напрямую отслеживать счетчики Windows Монитор производительности (PerfMon), Configuration Manager предоставляет. Отслеживайте невыполненную работу в различных почтовых ящиках на наличие ранних предупреждений о потенциальных проблемах с производительностью сайта или невыполненной работе.