Начало работы с IBM Lotus Domino Server.Load V8

Узнайте об IBM Lotus Domino Server.Load V8. В статье показывается, как быстро начать использование этого инструмента с инсталляции и конфигурации до запуска рабочих нагрузок.

Даниэль Дюмушель, инженер-программист, IBM

Даниэль Дюмушель (Daniel Dumouchel) - инженер-программист из группы по производительности IBM Lotus Domino. В настоящий момент он помогает инженерам по производительности и тестирует инструменты измерения производительности. В IBM он пришёл в июне 2007 г. в качестве практиканта.



Джо Малек, инженер-программист, IBM

Джо Малек (Joe Malek) - разработчик в группе IBM Domino Performance. В настоящее время занимается созданием эффективных инструментальных средств, работающих на различных платформах, таких как Microsoft .Net, Linux, IBM AIX и Sun Solaris. Джо пришел в Iris Associates/Lotus в октябре 2000 года.



Джим Пауэрс, инженер-программист, IBM

Джим Пауэрс (Jim Powers) является членом группы Domino Performance. До этого Джим руководил отделом производительности в Lotus Domino Support. Имеет более чем 30-летний опыт работы с компьютерными системами; всю свою карьеру он занимался различными вопросами аппаратного и программного обеспечения.



18.12.2008

Lotus Server.Load - это основанный на функциях IBM Lotus Domino инструмент для создания нагрузки, который можно использовать для измерения и оценки различных численных показателей производительности и быстродействия серверов Lotus Domino. Нагрузка создаётся при запуске рабочих нагрузок (называемых также скриптами), моделирующих поведение клиент-серверных операций Lotus Domino. Рабочие нагрузки позволяют при помощи стандартного инструментального средства создавать постоянные повторяющиеся нагрузки на сервер Lotus Domino или IBM Lotus Sametime, чтобы можно было оценить эффект от использования различных операционных систем, аппаратного обеспечения и изменений в конфигурации.

Существует два разных типа рабочих нагрузок: встроенные и пользовательские. Большинство встроенных рабочих нагрузок предназначены для моделирования разнообразных действий пользователей электронной почты. Однако можно применять не только встроенные нагрузки. Их можно изменить или написать собственные для ваших нужд. Обзор Lotus Server.Load приведён в статье developerWorks Lotus: Введение в настройку производительности Domino (EN).

Как получить Lotus Server.Load?

Установить Lotus Server.Load можно во время инсталляции клиента IBM Lotus Domino Administrator, выбрав соответствующую опцию. На рисунке 1 показана опция Server Load Utility в окне Custom Setup программы установки клиента Lotus Domino Administrator.

Рисунок 1. Опции установки клиента Lotus Notes
Опции установки клиента Lotus Notes

Опция Lotus Server.Load выбрана, что дальше?

После выбора опции Server Load Utility инсталлятор создаёт файл sload.exe и базу данных namagent.nsf в каталоге Notes приложения Lotus Domino Administrator. Программа sload.exe находится в каталоге исполняемых файлов клиента (notes), а БД namagent.nsf - в каталоге данных клиента (notes\data). Если вы планируете запускать что-либо, связанное с Lotus Sametime, убедитесь, что файлы CstClientTest.java и stjavatk.jar также скопированы в каталог исполняемых файлов, где уже находится sload.exe. Эти два файла необходимы для запуска рабочих нагрузок для Lotus Sametime.


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

Для тестирования используется следующая среда:

  • Тестируемый сервер (Server Under Test - SUT). Это тестовая система с запущенным Lotus Domino, к которому подключаются виртуальные пользователи, смоделированные Lotus Server.Load. Агентов из базы данных (namagent.nsf) необходимо скопировать в каталог Domino этого сервера. Эти агенты создают документы Person тестовых пользователей, задают значения ACL, и т. д.
  • Клиенты/драйверы. На этих системах запускается Lotus Server.Load и скрипты рабочих нагрузок, моделирующие работу пользователей с SUT. На этих системах должен быть установлен клиент Lotus Notes, поскольку Lotus Server.Load для работы необходим Lotus Notes API. В зависимости от желаемой пользовательской нагрузки можно использовать несколько таких клиентов. На каждом клиенте обычно можно запустить от 512 до 1500 виртуальных пользователей (в зависимости от аппаратной конфигурации клиента). Lotus Server.Load также можно использовать для сбора статистической информации с сервера Lotus Domino и её сохранения в файл. Для выполнения скрипта сбора статистики следует выделить отдельный клиент (подробнее об этом ниже). Необязательно устанавливать администраторские клиенты на все машины. Можно использовать и стандартные клиенты Lotus Notes, если все необходимые файлы скопированы в каталог исполняемых файлов клиента (обычно это каталог Notes). Перед запуском Lotus Server.Load клиенты необходимо подключить к SUT с помощью клиентов Lotus Notes. Мы рекомендуем создать идентификатор для тестового пользователя и создавать на клиентах документы Location со ссылкой на SUT.

На рисунке 2 показан клиент IBM Lotus Domino Designer с открытыми namagent.nsf и каталогом Domino тестируемого сервера. Агенты из базы данных .nsf готовы к копированию в каталог. Агентов, показанных на правой панели, необходимо выбрать, скопировать и вставить в одну и ту же папку (Shared Code - Agents) каталога Domino тестируемого сервера.

Рисунок 2. Агенты Lotus Server.Load
Агенты Lotus Server.Load

Использование агентов Lotus Server.Load

Теперь, когда агенты скопированы в каталог Domino тестируемого сервера, их можно использовать для настройки документов Mail Person. Выполните следующие шаги:

  1. В Lotus Domino Designer выберите Actions - Other.
  2. Откроется диалоговое окно Run Agent, в котором нужно выбрать агентов для запуска. Выберите агента "Create NotesBench Mail Person Documents" для создания документов Person. Нажмите Run.
  3. В диалоговом окне "Enter A Number 1-9 to Select Workload Setup" введите 1, чтобы выбрать NRPC Mail. Нажмите OK.
  4. В диалоговом окне "Create NotesBench Mail Person Documents" введите 1 в поле "Starting Value to Create Mail Users". Нажмите OK.
  5. Далее, введите 1000 в поле "Number of Users to Create", чтобы добавить пользователей в каталог Domino. Можно добавлять сколько угодно пользователей, однако имейте в виду, что для запуска данного пользователя в рабочей нагрузке у него должен быть соответствующий документ Person. Нажмите OK.
  6. Затем введите такое же число, как на шаге 5, в поле "Number of Mailn.NSF Files to Use". В данном случае введите 1000. Нажмите OK.
  7. Введите 1 в поле "Starting Mailn.NSF File". Обязательно введите в это поле такое же значение, какое вводилось на шаге 4 в поле "Starting Value to Create Mail Users". Нажмите OK.
  8. В поле "Location for Mail Databases (relative to Notes Data directory, blank = root)" введите mail\. Нажмите OK.
  9. В поле "Mail Domain (пример: notebnch)" введите имя домена вашего сервера в качестве имени домена SUT. Нажмите OK.
  10. В поле "Mail Server (пример: sut1/notebnch)" введите yourserver/yourdomain (имя и домен вашего сервера) в качестве имени домена SUT. Нажмите OK.
  11. В диалоговом окне "Create Person Documents for NRPC Mail" введите квалифицированное имя хоста SUT, например, yourserver.yourdomain.com, в поле Internet Host Name. Нажмите OK.
  12. В открывшемся диалоговом окне "Create NotesBench Mail Person Documents" введите значение в поле "Message Storage Format". Это значение зависит от того, какого формата придерживаются пользователи. Для установки формата Notes выберите 0, чтобы не задавать этот параметр - 1; а для выбора формата Internet/Web - 2. В большинстве случаев, например, для запуска рабочей нагрузки N8Mail, нужно выбирать значение 0. Нажмите OK.
  13. Введите 1 в поле "Mail System", а затем нажмите OK.
  14. Наконец, введите y в поле "Click OK to run Create Notesbench Person Documents Agent with the following settings", а затем нажмите OK.

Как использовать Lotus Server.Load?

После настройки среды на SUT нужно выполнить настройку на стороне клиента. Рабочие нагрузки работают с базами данных, которые необходимо заполнить данными. Далее, следует определить, какие наборы рабочих нагрузок вам нужны. Многие рабочие нагрузки встроены в Lotus Server.Load. В этих рабочих нагрузках собраны модели поведения, характерные для среднестатистического пользователя, и действия, которые он может выполнять. Тем не менее, рабочая нагрузка, поставляющаяся с Lotus Server.Load, может содержать не все функции, необходимые для вашей среды тестирования, поэтому она работает также с пользовательскими нагрузками Lotus Server.Load. Подробную информацию по различным встроенным нагрузкам см. в разделе документации по Lotus Server.Load в Справке администратора Lotus Domino.

На рисунке 3 показан выпадающий список с различными рабочими нагрузками из Lotus Server.Load.

.

Рисунок 3. Рабочие нагрузки Lotus Server.Load
Рабочие нагрузки Lotus Server.Load

Как запустить рабочую нагрузку?

Начнём с запуска встроенной рабочей нагрузки. Запустите программу sload.exe, которая является одним из файлов, устанавливаемых при выборе опции Lotus Server.Load во время инсталляции клиента Lotus Domino Administrator. По умолчанию в качестве типа рабочей нагрузки выбирается опция Built-In. При выборе этой опции из раскрывающегося списка можно выбирать рабочие нагрузки, которые вы хотите запустить.

Как было упомянуто ранее, необходимо создать и инициализировать на сервере (SUT) почтовые базы данных, с которыми будет работать наша рабочая нагрузка. Для этого запустите рабочую нагрузку инициализации рабочей нагрузки; когда она закончит работу, можно запускать саму рабочую нагрузку. Эту операцию необходимо выполнить для большинства рабочих нагрузок. Более подробную информацию по этому процессу можно найти в документации по Lotus Domino Administrator.

Имейте в виду, что если входящие в комплект поставки рабочие нагрузки не соответствуют вашим потребностям, можно выбрать в качестве типа теста Custom. В Lotus Server.Load на выбор имеется множество команд (см. документацию). Можно просматривать встроенные рабочие нагрузки, копировать эти наборы команд и редактировать их по вашему желанию. При таком подходе легче редактировать собственные пользовательские рабочие нагрузки. После написания пользовательской рабочей нагрузки можно сохранить её на своей машине, а с помощью опции Lotus Server.Load можно открыть скрипт. Просмотреть скрипт можно, нажав на кнопку Edit Script, которая позволяет при необходимости модифицировать пользовательские скрипты.

В качестве типа теста можно также выбрать опцию Manual, как показано на рисунке 3. Ручной режим используется для запуска различных команд рабочей нагрузки. При выборе ручного режима можно вводить команды с помощью вкладки Command-Line Screen. Этот режим полезен для тестирования частей скрипта перед его запуском целиком.


Дополнительные возможности настройки тестов

На рисунке 4 показаны четыре разные вкладки, находящиеся под областью выбора типа рабочей нагрузки. На этих вкладках, использующихся для дополнительной настройки рабочей нагрузки, имеются некоторые настройки, которые можно редактировать. На первой вкладке, Test Parameters, можно редактировать количество виртуальных пользователей и количество выполнений теста. Здесь также можно задать интервал между созданием потоков (т. е. задержку между запуском каждого пользователя/потока на указанное число секунд), а также количество запускаемых потоков. Иногда может возникнуть необходимость выполнения скрипта в течение определённого периода времени; Lotus Server.Load позволяет сделать это при помощи опции Test Time Parameter. Наконец, можно с помощью имени и адресной книги создавать список получателей и сохранять результаты теста в указанном файле.

Рисунок 4. Вкладки для дополнительной настройки в диалоговом окне Lotus Server.Load
Вкладки для дополнительной настройки в диалоговом окне Lotus Server.Load

Иногда лимит времени исполнения скрипта может быть превышен, а время отклика - оказаться слишком большим. Вкладка Stop Conditions, показанная на рисунке 5, позволяет настраивать эти условия. Lotus Server.Load позволяет вводить вручную верхние значения для обоих параметров. При достижении этих значений исполнение теста немедленно прекращается, а в результатах тестирования регистрируется, какое из условий привело к прерыванию теста.

Рисунок 5. Вкладка Stop Conditions диалогового окна Lotus Server.Load
Вкладка Stop Conditions диалогового окна Lotus Server.Load

В большинстве рабочих нагрузок для запуска скрипта используется переменная скрипта. На третей вкладке, Script Variables, показанной на рисунке 6, можно изменять значение каждой переменной. (Более подробную информацию о переменных и рекомендуемых значениях см. в Справке администратора Lotus Domino Administrator).

Рисунок 6. Вкладка Script Variables диалогового окна Lotus Server.Load
Вкладка Script Variables диалогового окна Lotus Server.Load

Последняя вкладка, Command Line Screen, используется только в ручном режиме. Как упоминалось ранее, в этом режиме можно вручную вводить команды для вашего скрипта.

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


А как же численные показатели?

Последнее, что нужно сделать перед запуском скрипта - определить, какие численные показатели вы хотите записывать для данного теста. После нажатия на кнопку Execute у вас имеется возможность выбрать численные показатели, как показано на рисунке 7. Lotus Server.Load позволяет выбирать показатели скрипта (Script Metrics), а также ограниченный набор показателей, отражающих статистическую информацию по серверу (Server Stat Metrics). Lotus Server.Load также ежеминутно отслеживает статистику по потокам. Кроме того, можно дополнительно указать файл, в котором будут храниться численные показатели.

Рисунок 7. Определение параметров Script Metrics и Server Stat Metrics
Определение параметров Script Metrics и Server Stat Metrics

Теперь можно запускать рабочую нагрузку. Результаты тестирования отображаются в окне, показанном на рисунке 8. Lotus Server.Load регистрирует время запуска и окончания, а также информирует вас о времени завершения теста.

Рисунок 8. Окно Output Monitor
Окно Output Monitor

Пример: запуск скрипта Init

Ниже приводится пример создания почтовых баз данных, которые будут использоваться с рабочей нагрузкой N8Mail. На рисунке 9 показано, что выбранное количество пользователей/потоков равно 1; поэтому будет создана одна база данных, mail1.nsf. Затем можно написать скрипт для операционной системы, многократно копирующий эту базу данных и дающий этим копиям имена mail2.nsf, mail3.nsf и т. д., в соответствии с количеством созданных вами виртуальных пользователей. Также можно создать все эти базы данных с помощью Lotus Server.Load, введя их общее количество в поле "Number of Users/Threads".

Рисунок 9. Создание почтовых баз данных
Создание почтовых баз данных

Пример: запуск рабочей нагрузки

В этом примере показываются настройки для запуска рабочей нагрузки N8Mail, для которой ранее были созданы почтовые базы данных. Предполагается запустить 1000 виртуальных пользователей. См. рисунок 10.

Рисунок 10. Определение количества пользователей
Определение количества пользователей

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

  • Значение для nb-dbdir. Это подкаталог каталога данных Lotus Domino на сервере, содержащий почтовые базы данных виртуальных пользователей. В нашем случае это подкаталог mail.
  • Переменная MailTemplate. В нашем примере мы будем использовать почтовый шаблон, расположенный на сервере (SUT) Dolly. Имя этого почтового шаблона - mail8.ntf. Символы !! означают, что Lotus Server.Load должен использовать файл на сервере, предшествующем этим обозначениям. Следовательно, эта переменная будет выглядеть как Dolly!!mail8.ntf.
Рисунок 11. Переменные, использующиеся для запуска рабочих нагрузок
Переменные, использующиеся для запуска рабочих нагрузок

ПРИМЕЧАНИЕ: Клиенты должны запускаться по очереди, каждый клиент должен полностью запуститься, прежде чем будет запущен следующий. (Исключением является клиент, на котором работают скрипты сбора статистики с сервера; этот клиент должен запускаться с первым клиентом).


Заключение

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

Ресурсы

Научиться

Получить продукты и технологии

Обсудить

Комментарии

developerWorks: Войти

Обязательные поля отмечены звездочкой (*).


Нужен IBM ID?
Забыли Ваш IBM ID?


Забыли Ваш пароль?
Изменить пароль

Нажимая Отправить, Вы принимаете Условия использования developerWorks.

 


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

Вся введенная информация защищена.

Выберите имя, которое будет отображаться на экране



При первом входе в developerWorks для Вас будет создан профиль и Вам нужно будет выбрать Отображаемое имя. Оно будет выводиться рядом с контентом, опубликованным Вами в developerWorks.

Отображаемое имя должно иметь длину от 3 символов до 31 символа. Ваше Имя в системе должно быть уникальным. В качестве имени по соображениям приватности нельзя использовать контактный e-mail.

Обязательные поля отмечены звездочкой (*).

(Отображаемое имя должно иметь длину от 3 символов до 31 символа.)

Нажимая Отправить, Вы принимаете Условия использования developerWorks.

 


Вся введенная информация защищена.


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=40
Zone=Lotus
ArticleID=359435
ArticleTitle=Начало работы с IBM Lotus Domino Server.Load V8
publish-date=12182008