Определение требований к производительности и емкости для сред совместной работы отделов (SharePoint Server 2013)

Определение требований к производительности и емкости для сред совместной работы отделов (SharePoint Server 2013)

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

Спецификации среды лаборатории тестирования, например оборудование, топология фермы и конфигурация.

Рабочая нагрузка фермы тестирования и набор данных, с помощью которого создается тестовая нагрузка.

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

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

Введение

В этой статье описано, как выполнять горизонтальное масштабирование серверов в решении для совместной работы отделов на основе SharePoint Server 2013. Решение для совместной работы отделов — это развертывание SharePoint Server 2013, в котором для совместной работы используется меньшее количество компьютеров, чем в корпоративном решении для совместной работы. В этой статье предполагается, что отдел — это организация внутри предприятия, в которой работает от 1000 до 10000 сотрудников.

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

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

В этой статье содержится следующая информация.

Спецификации, включающие сведения об оборудовании, топологии и конфигурации.

Рабочая нагрузка, которая включает анализ потребностей фермы, числа пользователей и характеристик использования

Сведения о наборе данных, например о размерах баз данных и типах контента.

Результаты тестов и их анализ для горизонтального масштабирования веб-серверов.

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

Глоссарий

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

RPS. Количество запросов в секунду. RPS — это количество запросов, получаемых фермой или сервером за одну секунду. Это общепринятая единица измерения нагрузки на сервер или ферму.

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

Зеленая зона. Зеленая зона представляет собой заданный набор характеристик нагрузки в нормальных условиях работы (до прогнозируемых ежедневных пиковых нагрузок). Ферма, работающая в этом диапазоне, должна быть способна поддерживать время ответа и задержки в рамках допустимых параметров.

Это состояние, в котором сервер удовлетворяет указанным ниже условиям.

Задержка на стороне сервера для не менее чем 75 % запросов составляет менее одной секунды.

Уровень использования ЦП на всех серверах фермы не превышает 60 %.

Наша лабораторная среда не имеет активного запущенного обхода контента при поиске, поэтому мы поддерживали использование ЦП на сервере базы данных на уровне, не превышающем 50 %, чтобы зарезервировать 10 % для нагрузки обхода контента при поиске. При этом предполагается, что для ограничения нагрузки обхода контента при поиске на уровне 10 % в рабочей среде используется регулятор ресурсов SQL Server.

Процент сбоев составляет менее 0,01 %.

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

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

Компонент регулирования запросов HTTP включен, но ошибки 503 (сервер занят) отсутствуют.

Процент сбоев составляет менее 0,1 %.

Задержка на стороне сервера для не менее чем 75 % запросов составляет менее 3 секунд.

Уровень использования ЦП на всех серверах фермы (кроме серверов баз данных) не превышает примерно 90 %.

Использование ЦП сервера базы данных не превышает примерно 50 %, что позволяет иметь достаточный резерв для нагрузки обхода контента при поиске.

AxBxC (примечание к графику). Это, соответственно, число веб-серверов, серверов приложений и серверов баз данных в ферме. Например, значение 10x1x1 указывает на то, что в данной среде имеется 10 веб-серверов, 1 сервер приложений и 1 сервер базы данных.

MDF и LDF: SQL Server физические файлы. Дополнительные сведения см. в материалах Files and Filegroups Architecture.

Обзор

В этом разделе приведен обзор способа масштабирования и методики тестирования.

Способ масштабирования

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

Мы выполнили горизонтальное масштабирование веб-серверов, пока не получили четыре используемых веб-сервера. На каждом сервере работает служба распределенного кэша.

Мы добавили выделенный сервер, на котором работает служба распределенного кэша.

Мы отключили службу распределенного кэша на веб-серверах.

Мы выполнили горизонтальное масштабирование дополнительных веб-серверов в максимально допустимом для тестирования объеме.

Методика и замечания по тестированию

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

В рабочих средах исключать эти элементы не рекомендуется.

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

Серверы баз данных не входили в кластер, поскольку избыточность для такого тестирования не требовалась.

Обход контента при поиске во время тестирования не выполнялся, хотя в рабочей среде это может происходить. Чтобы учесть это, мы снизили уровень использования ЦП SQL Server при определении значений "Зеленая зона" и "Красная зона", чтобы выделить ресурсы, которые были бы использованы обходом контента при поиске.

Спецификации

В этом разделе приведены подробные сведения об оборудовании, программном обеспечении, топологии и конфигурации тестовой лабораторной среды.

Оборудование

В следующих разделах описано оборудование, которое использовалось в среде лаборатории тестирования.

Мы использовали узлы Hyper-V для виртуализации всех веб-серверов и серверов приложений в тестовой лаборатории. Серверы баз данных не были виртуализированы. В этом разделе физическое оборудование узла и виртуальное оборудование виртуальной машины описаны раздельно.

Узлы Hyper-V

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

Оборудование узла Значение Процессоры 2 четырехъядерных процессора с тактовой частотой 2,49 ГГц ОЗУ 32 ГБ Операционная система Windows Server 2008 R2 с пакетом обновления 1 (SP1) Количество сетевых адаптеров 2 Скорость сетевого адаптера 1 гигабит

Виртуальные веб-серверы и серверы приложений

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

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

Оборудование виртуальной машины WFE1-8 и DC1 Процессоры 4 виртуальных процессора ОЗУ 12 ГБ Операционная система Windows Server 2008 R2 с пакетом обновления 1 (SP1) Размер диска для SharePoint 100 ГБ Количество сетевых адаптеров 2 Скорость сетевого адаптера 10 гигабит (трафик между узлами ограничен в соответствии со скоростью сетевых адаптеров узлов) Проверка подлинности Windows NTLM Тип подсистемы балансировки нагрузки F5 Big IP Запускаемые локально службы WFE 1-8: базовые федеративные службы. Сюда входит служба таймера SharePoint, служба трассировки, службы Word Automation Services, службы Службы Excel и служба изолированного кода Microsoft SharePoint Foundation. DC1: служба распределенного кэша. Серверы баз данных

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

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

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

Сервер базы данных — экземпляр по умолчанию SQL Server Процессоры 4 четырехъядерных процессора с тактовой частотой 2,4 ГГц ОЗУ 32 ГБ Операционная система Windows Server 2008 R2 с пакетом обновления 1 (SP1) Хранилище и геометрия Непосредственно подключенное хранилище (DAS) 1 системный том (RAID0, 1 шпиндель, 300 ГБ) 2 тома для данных контента (RAID0, 4 шпинделя, по 450 ГБ) 2 тома для журналов контента (RAID0, 2 шпинделя, по 450 ГБ) 1 том для временных данных (RAID0, 2 шпинделя, по 300 ГБ) 1 том для временных журналов (RAID0, 2 шпинделя, по 300 ГБ) Количество сетевых адаптеров 1 Скорость сетевого адаптера 1 гигабит Проверка подлинности Windows NTLM Версия программного обеспечения SQL Server 2008 R2

Топология

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

Конфигурация

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

Параметр Значение Примечания Семейство веб-сайтов 179 (общее количество в среде) Для семейств веб-сайтов в нашей тестовой среде используются параметры по умолчанию и проверка подлинности на основе утверждений Windows. Кэширование больших двоичных объектов Вкл. По умолчанию выключено. Включение кэширования больших двоичных объектов повышает эффективность работы сервера благодаря сокращению количества вызовов к серверу базы данных для статических ресурсов страниц, часто запрашиваемых браузером. Максимальная степень параллелизма (MAXDOP) 1 Этот параметр задается для экземпляра SQL Server или экземпляров, содержащих базы данных контента SharePoint Server 2013. По умолчанию используется значение, которое позволяет SQL Server самостоятельно определять максимальную степень параллелизма. В SharePoint Server 2013 параметр MAXDOP должен иметь значение 1 для экземпляров SQL Server, содержащих базы данных SharePoint Server 2013. Дополнительные сведения о настройке параметра MAXDOP для SQL Server 2008 R2 см. в статье Параметр max degree of parallelism. Сведения о настройке параметра MAXDOP для SQL Server 2012 см. в статье Настройка параметра конфигурации сервера max degree of parallelism.

Рабочая нагрузка

В этом разделе разъясняются лабораторные тесты, проведенные для SharePoint Server 2013. Параметры теста типичны для среды совместной работы отделов.

Набор данных

Набор данных, использованный в среде лаборатории тестирования, отражает типичную среду совместной работы отделов. Этот набор данных содержит различные семейства веб-сайтов, сайтов, списков, библиотек, типов и размеров файлов.

Характеристики набора данных Значение Размер базы данных (общий) 174 ГБ Размер MDF 154 ГБ Размер LDF 20 ГБ Размер большого двоичного объекта 152 ГБ Число баз данных контента 2 Число семейств веб-сайтов 179 Число веб-приложений 1 Число сайтов 1,471

Результаты и анализ

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

Горизонтальное масштабирование веб-серверов

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

Методология тестирования

Добавьте веб-серверы с аналогичными характеристиками оборудования и выполните тест еще раз, не изменяя параметры фермы или теста.

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

Анализ

Во время тестирования мы обнаружили следующее.

Было выполнено масштабирование среды до десяти веб-серверов на сервер базы данных. Увеличение пропускной способности было относительно линейным.

Даже при максимальном протестированном количестве веб-серверов, равном 10, добавление серверов баз данных не приводило к увеличению пропускной способности. Узким местом, как правило, являются ресурсы веб-серверов.

Средняя задержка в "зеленой зоне" была практически постоянной в течение всего тестирования. Количество веб-серверов и пропускная способность не оказывали на нее влияние. Данные по задержке в "красной зоне" соответствуют ожидаемой тенденции. На одиночном веб-сервере задержка очень высока. Кривая в пределах от 2 до 8 веб-серверов находится в рамках условий "красной зоны".

Некоторое влияние на задержку может оказать перемещение службы распределенного кэша с веб-серверов фермы на выделенный сервер. Это связано с тем, что трафик распределенного кэша, который ранее был внутренним для каждого веб-сервера, начинает передаваться через сеть. Протестируйте горизонтальное масштабирование в собственной среде, чтобы определить, является ли это снижение производительности существенным. Обратите внимание, что задержка в нашей тестовой среде увеличилась незначительно при переносе службы распределенного кэша на выделенный сервер. Задержка снижалась при добавлении каждого веб-сервера, так как номинальное увеличение задержки компенсировалось уменьшением нагрузки на процессоры и память веб-серверов. > дополнительные сведения о планировании емкости распределенного кэша см. в руб. Plan for feeds and the Distributed Cache service in SharePoint Server.

Из-за улучшения характеристик кэширования и использования баз данных в SharePoint Server 2013 средняя нагрузка на слой серверов баз данных низка. Мы обнаружили, что во время наших тестов не было необходимости в горизонтальном масштабировании серверов баз данных.

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

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

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

Результаты, графики и диаграммы

На графиках ниже по оси x отображается изменение количества веб-серверов в ферме. Шкала начинается с одного виртуального веб-сервера и одного физического сервера баз данных (1x1). Максимальная конфигурация состоит из восьми виртуальных веб-серверов, одного выделенного сервера распределенного кэша (добавленного к четырем веб-серверам) и одного физического сервера баз данных (8x1x1).

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

1. Количество запросов в секунду

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

2. Задержка

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

3. Использование ЦП и памяти на веб-сервере

На следующем графике показано, как горизонтальное масштабирование влияет на средние показатели использования ЦП и памяти на веб-серверах. Обратите внимание, что в "зеленой зоне" показатели использования ЦП и среднего использования памяти остаются относительно постоянными, а RPS растет.

Показатель использования процессора в "красной зоне" имеет тенденцию к понижению. Эта тенденция отражает тот факт, что средняя потребность в ЦП веб-сервера при максимальной нагрузке постепенно снижается по мере увеличения количества серверов.

4. SQL Server Количество операций ввода-вывода в секунду и использование ЦП

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

PhysicalDisk: количество операций чтения с диска в секунду

PhysicalDisk: количество операций записи на диск в секунду

Значения каждого счетчика, полученные на протяжении всего теста, были усреднены и просуммированы для получения общего количества операций ввода-вывода в секунду.

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

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

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

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

На основании этой тенденции можно сделать следующие предположения.

Если бы тестовая нагрузка была увеличена при добавлении шестого веб-сервера, можно было бы достичь большего количество запросов в секунду. При этом использование ресурсов серверов осталось бы на том же уровне.

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

Общее количество операций ввода-вывода в секунду для SQL Server

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

Количество операций ввода-вывода в секунду для SQL Server, разбитое по числу операций чтения и записи

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

Загрузка процессоров SQL Server

На следующем графике показано, как горизонтальное масштабирование влияет на загрузку процессоров SQL Server.

📎📎📎📎📎📎📎📎📎📎