На главную страницу
 
  Главная 
  Новости 
  Статьи  RSS
  Программное обеспечение 
  Форум 
  Опросы 
  Полезные ссылки 
MSExchange.ru ISADocs.ru WinSecurity.ru NetDocs.ru

Exchange 5.5
Exchange 2000
Exchange 2003
Exchange 2007
Общее
Exchange 2010

Поиск по сайту


Авторизация

Запомнить меня на этом компьютере
  Забыли свой пароль?
  Регистрация

Подписка

Изменение параметров

Статистика

Hits 2749312
14005
Hosts 1649588
507
Visitors 229699
585

12

Главная / Статьи / Exchange 2007 / Тестирование производительности диска с помощью Jetstress 2007


Тестирование производительности диска с помощью Jetstress 2007

Версия для печати Версия для печати

Эта статья переведена силами и средствами компании Red Line Software. Размещение данного переведенного материала на других сайтах без разрешения компании Red Line Software запрещается.

Введение

Хотя требования по пропускной способности ввода/вывода для сервера Exchange 2007 существенно снизились по сравнению с предыдущими версиями (более чем на 70%), дисковая система все равно остается критическим компонентом любого решения на базе Exchange-сервера.

Новейшая версия программы Jetstress поддерживает серверы Exchange 2000, 2003 и 2007. Не важно, какую версию Exchange вы используете, Jetstress поможет вам проверить производительность и стабильность дисковый системы до внедрения Exchange-сервера в продуктивное окружение. Jetstress работает с механизмом хранилищ баз данных Exchange-сервера (Exchange Server Database Storage Engine) для симулирования загрузки баз данных Exchange-сервера и журналирования данных ввода/вывода.

Существует два вида сценариев для тестирования: пропускной способности дисковой системы и профиль почтовых ящиков Exchange-сервера.

  • В случае тестирования пропускной способности дисковой системы вы можете выполнить следующие тесты:
    • Производительность транзакций базы данных (повышенные нагрузки тестируются при продолжительности теста более шести часов)
    • Потоковое резервное копирование
    • Восстановление программного обеспечения
  • В случае тестирования профиля почтовых ящиков Exchange-сервера вы можете указать количество пользователей почтовых ящиков и операции ввода/вывода в секунду на каждый почтовый ящик для симулирования загрузки почтовых ящиков Exchange-сервера.

Хотя Jetstress выдает отчет о результатах, рекомендуется помимо Jetstress воспользоваться программами System Monitor и Event Viewer для проверки достижения критериев производительности и того, что во время проверки не произошло никаких ошибок.

Первые впечатления

Первое, на что я обратил внимание в новой версии, это наличие файла помощи (Microsoft Exchange Server Jetstress.chm), который заменил документ формата Word с инструкциями, поставляемый с предыдущими версиями, а также то, что выглядит средство также, как и остальные приложения Exchange-сервера для анализа. Но, естественно, есть и другие нововведения:

Упрощенная настойка
Графический интерфейс средства Jetstress, JetstressWin.exe, упрощает процесс настройки теста. С помощью конфигурационного XML-файла можно настраивать дополнительные параметры.
Критерий прохождения теста
критерий прохождения теста теперь зависит от типа используемой вами архитектуры: 32 или 64 бит.
Требования к памяти
Jetstress ограничивает количество групп хранилищ на основе физической памяти системы. Для запуска тестов сервера Exchange 2007 вам потребуется как минимум 1 ГБ плюс 256 МБ для каждой группы хранилища. Средству Jetstress не требуется столько же физической памяти, сколько серверу Exchange 2000 и библиотекам механизма баз данных сервера Exchange 2003.
Отношения ввода/вывода и модели
средство Jetstress разработано для соответствия отношениям ввода/вывода для диска и моделей пакетов сервера Exchange 2007. Для баз данных это примерно 1:1 (чтение : запись) и для журналов - 0.5-1:1 (чтение : запись).
Максимум/Минимум размера кэша
Jetstress устанавливает максимальный размер кэша базы данных равным 256 МБ, умноженные на количество групп хранилищ. Минимальный размер кэша базы данных равен 32 МБ, умноженным на количество групп хранилищ.
Генерация уменьшения нагрузки
Jetstress искусственно уменьшает количество дисковых операций ввода/вывода, создаваемых потоком, для поддержки сложного контроля общей пропускной способности операций ввода/вывода и обеспечения условия для 50 групп хранилищ, где несколько потоков могут внести значительные изменения в количество операций ввода/вывода в секунду.
Сдерживание настройки и использование счетчика потоков
Jetstress иногда может сбросить автоматические настройки, если вы решите использовать на одном диске много групп хранилищ. Теперь есть функция сдерживания настроек.
Выбор диапазона времени журнала производительности
Jetstress сохраняет журнал производительность на все время работы теста. Но отчет о тесте принимает во внимание временной диапазон, в течение которого было достигнуто 90% от максимума размера кэша.

Установка Jetstress

Предпочтительно выполнять проверки с помощью Jetstress до установки Exchange-сервера. Существуют известные риски, связанные с запуском Jetstress на компьютере с установленным Exchange-сервером. Если вы используете версию Jet (ESE.DLL и ESEPERF.*) отличную от установленной с Exchange-сервером, регистрация счетчиков базы данных Jet в установочной папке Jetstress повредит счетчики баз данных Exchange-сервера после удаления Jetstress. Возможно, вам потребуется удалить существующие счетчики механизма баз данных Exchange-сервера до запуска Jetstress с помощью команды unlodctr ESE, запускаемой из командной строки. Однако, после окончания тестов вам все равно придется переустановить счетчики механизма баз данных Exchange-сервера версии Exchange-сервера.

Для установки Jetstress выполните следующее:

  1. Убедитесь, что выполняются следующие требования:
    • Средству Jetstress 2007 необходимо, чтобы на сервере был установлен пакет .NET Framework 2.0.
    • Jetstress работает только на Windows 2000 Server и Windows Server 2003 (32 или 64 бит).
  2. Настройка системы хранилищ:
    • Хотя это и не является обязательным условием, воспользуйтесь следующими рекомендациями: используйте аппаратное обеспечение, сертифицированное Windows Hardware Quality Labs (WHQL). Если сервер является кластером, вся конфигурация сервер/хранилище должна быть сертифицирована.
    • Убедитесь, что на всех компонентах хранилища установлены последние обновления.
    • Отформатируйте логические устройства внутри файловой системы NTFS Windows (размер распределения по умолчанию) и выполните согласование дисков с помощью diskpart (информацию о том, как работать с diskpart, можно взять из статьи Геометрия дисков).
    • Проверьте, что все настройки HBA/SAN выполнены верно. Многие адаптеры HBA используют ключи реестра для настройки различных платформ SAN (например, Queue Depth).
    • Настройте логические единицы хранилищ (примите во внимание устройства для журналов и устройства для баз данных).
  3. Скачайте Jetstress и запустите программу установки, дважды щелкнув по файлу Jetstress.msi. Следуйте инструкциям программы установки.
  4. Скопируйте базы данных ESE в папку с установленным Jetstress.
    • ESE.DLL
    • ESEPERF.DLL
    • ESEPERF.INI
    • ESEPERF.HXX

    Если вы не скопируете эти файлы, вы получите следующее предупреждение при запуске средства:

    Рисунок 1 Проверка наличия необходимых файлов
  5. Запуск средства запустит на выполнение несколько проверок, наподобие указанной выше. Проверка счетчиков логических дисков – еще одна проверка, запускаемая автоматически.
    Рисунок 2 Проверка счетчиков производительности

Запуск теста

Прежде, чем запустить тест, следует выполнить несколько настроек, влияющих на производительность системы:

  • Количество групп хранилищ и баз данных
  • Размер базы данных
  • Ограничения размера почтового ящика
  • Профиль пользователя (примерное количество операций ввода/вывода на почтовый ящик)
  • Репликация данных

То, как каждый из этих факторов влияет на производительность, не является темой данной статьи, но если вы хотите узнать об этом, вы можете обратиться за подробной информацией к файлу помощи Jetstress 2007.

  1. Для запуска Jetstress просто щелкните по ярлыку из меню Пуск, или запустите файл JetstressWin.exe. На странице Open Configuration (Открыть конфигурацию) вы можете либо создать новую тестовую конфигурацию, либо открыть существующий файл конфигурации.
    Рисунок 3 Тестовая конфигурация
  2. На странице Define Test Scenario (Определение варианта теста) вы можете выбрать один из двух вариантов тестирования:
    • Test a disk subsystem throughput (Тестирование пропускной способности дисковой системы)
    • Test an Exchange mailbox profile (Тестирование профиля почтового ящика Exchange-сервера)

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

    Рисунок 4 Определение варианта теста
  3. В следующем окне вам нужно выбрать тип теста: производительность, повышенные нагрузки или потоковое резервное копирование.
    • Performance (Производительность) – генерирует операции ввода/вывода, характерные для Exchange-сервера, путем доступа к базе данных с транзакциями Jet.
    • Streaming backup (Потоковое резервное копирование) – Оценивает производительность резервного копирования. Учтите, что Jetstress может выполнять потоковое резервное копирование только на устройство, которому может быть приписано буквенное обозначение.
    • Soft recovery (Программное восстановление) – оценивает степень воспроизведения журнала.
    Рисунок 5 Тип теста

    Поскольку мы выполняем тест пропускной способности дисковой системы, появится окно Select Capacity and Throughput (Выбор размера и пропускной способности). Здесь есть возможность выбора размера тестовых баз данных с помощью указания процента от максимального размера хранилища и пропускной способности с помощью указания процента от максимального размера пропускной способности дисковой системы. Jetstress резервирует 25% от размера файла начальной базы данный для дальнейшего роста во время теста. Также, для случаев неправильной автоматической настройки, вы можете применить сдерживание настроек и использовать счетчики потока.

    Рисунок 6 Размер и пропускная способность
  4. На странице Define Test Run (Определение параметров теста) вы устанавливаете следующие параметры:
    • В поле Output path for test results (Путь для вывода результатов теста) вы указываете папку для хранения журналов производительности и отчетов.
    • В поле Test duration (hours) (Продолжительность теста (в часах)) вы указываете период сбора информации. При продолжительности теста более 6 часов начинается тест на повышенные нагрузки, так что при этом используются разумные установки времени ожидания операций ввода/вывода.
    Рисунок 7 Продолжительность теста

    Как я уже говорил выше, Jetstress ограничивает количество групп хранилищ на основе физической памяти системы. Если вы используете механизм базы данных серверов Exchange 200x, вы можете ввести четыре группы хранилища. Для сервера Exchange 2007 требуется 256МБ для каждой группы хранилищ плюс 1 ГБ для запуска Jetstress. Также вы можете использовать сетевые системы хранения (помните, что NAS не поддерживается сервером Exchange 2007).

    Рисунок 8 Определение групп хранилищ
  5. На странице Select Database Source (Выбор источника базы данных) у вас есть три варианта выбора:
    • Create new databases (Создать новые базы данных)
    • Restore backup databases (Восстановить базы данных из резервной копии)
    • Attach existing databases (Присоединить существующие базы данных)

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

    Рисунок 9 Источник базы данных
  6. На странице Review & Execute Test (Просмотр установок и запуск теста) вы можете просмотреть ваши установки. У вас есть следующие возможности для выбора:
    • Prepare test (Подготовить тест) – создаются тестовые базы данных.
    • Execute test (Выполнить тест) – выполнить подготовку баз данных, выполнить автоматическую настройку и запустить тест.
    • Save test (Сохранить тест) – сохранить настройки в новый файл конфигурации.
    Рисунок 10 Просмотр установок и запуск теста
  7. При нажатии Execute test (Выполнить тест) появляется страница Test in Progress (Идет тест), на которой вы можете отменить выполнение теста и выйти из приложения.
    Рисунок 11: Тест

Анализ результатов

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

Примите во внимание следующие рекомендации при проверке данных.

Счетчик производительности Рекомендации по тесту производительности Рекомендации по тесту при повышенных нагрузках
Database Avg. Disk sec/Read (Среднее время чтения диска для базы данных, сек) Среднее значение должно быть менее 20 мс (0.20), а максимум – менее 50 мс. Максимальное значение не должно превышать 100 мс.
Log Avg. Disk sec/Write (Среднее время записи диска для журнала, сек) Журналы на диск пишутся последовательно, потому среднее время ожидания должно быть не менее 10 мс, а максимум – не более 50 мс. Максимальное значение не должно превышать 100 мс.
%Processor Time (Время процессора, %) Среднее значение – не более 80%, максимум – менее 90%. Также, как и в тесте производительности.
Available Mbytes (32-bit Windows Server) (Доступно, МБ (32-битный сервер Windows Server)) Минимум – не менее 50 МБ. Также, как и в тесте производительности
Free System Page Table Entries (32-bit Windows Server)(Свободных записей таблицы системного страничного файла (32-битный сервер Windows Server)) Минимум – не менее 5000. Также, как и в тесте производительности
Transition Pages Repurposed/sec (Windows Server 2003) (Предварительные страницы переходов (Windows Server 2003)) Среднее – менее 100. Также, как и в тесте производительности
Pages/sec (Windows 2000 Server) (Страниц, сек (Windows 2000 Server)) Среднее – менее 100. Также, как и в тесте производительности
Pool Nonpaged Bytes (32-bit Windows Server) (Накоплено, нестраничных байт (32-битный сервер Windows Server)) Максимум – менее 75 МБ. Также, как и в тесте производительности
Pool Pages Byes (32-bit Windows Server) (Накоплено, страничных байт (32-битный сервер Windows Server)) Максимум – менее 180 МБ. Также, как и в тесте производительности
Database Page Fault Stalls/sec. (Остановок по ошибке страниц базы данных, сек) Максимум – менее 1.0. Также, как и в тесте производительности
Таблица 1: Рекомендации по проверке отчетов Jetstress 2007

Если вы откроете файл Performance_(ДатаВремя).html, вы увидите неплохой отчет в формате HTML с таблицами анализа производительности:

Таблица 2 Отчет о производительности дисковой системы

Как читать отчет:

  • Раздел Test Summary (Общие установки теста): общие установки теста.
  • Раздел Test Issues (Ошибки теста) показывает, были ли ошибки в тесте. Также здесь показаны средние значения и пики значений.
  • Раздел Database Sizing and Throughput (Размеры и пропускная способность) показывает запланированные размеры баз данных Exchange и целевую пропускную способность операций ввода/вывода.
  • Раздел Jetstress System Parameters (Системные параметры Jetstress) показывает параметры, относящиеся к механизму баз данных Exchange.
  • Разделы Disk Subsystem Performance (Производительность дисковой системы) и Host System Performance (Производительность системы узла) показывают данные производительности и ошибки.

Поскольку для теста я использовал виртуальную систему на моем компьютере, тест не прошел. Я так и ожидал, поскольку и меня нет достаточно производительности для запуска Exchange-сервера в продуктивном окружении.

Заключение

Jetstress – это превосходное средство, но вы должны полностью понимать результаты тестов для их анализа и применения. Хорошее знание требований к хранилищам Exchange-сервере совершенно необходимо для того, чтобы вы не получили неожиданных результатов (см. Дополнительные ссылки).





Рейтинг:  
0 (голосов 0)  
 1   2   3   4   5    

Автор: Руи Силва (Rui J.M. Silva)
Руи Силва (Rui J. Silva) является Старшим Консультантом, работая в основном с Microsoft Technologies at ParaRede, компанией-Золотым Партнером Microsoft в Португалии. Он является сертифицированным MCDBA/MCSA/MCSE:Messaging и признан в качестве Microsoft MVP для Exchange Server, благодаря его вкладу в некоторые технические форумы. Руи тратит немного своего свободного времени на обновление Exchange выделенных блогов http://msmvps.com/ehlo (на английском) и http://ehlo.blogspot.com/ (на португальском).
Эта статья переведена и опубликована с разрешения http://www.msexchange.org/

Эта статья переведена силами и средствами компании Red Line Software. Размещение данного переведенного материала на других сайтах без разрешения компании Red Line Software запрещается.





Работает на «Битрикс: Управление сайтом»
Работает на «Битрикс:
 Управление сайтом»
© MSExchange.ru, 2005-2010