Экспорт (0) Печать
Развернуть все

Счетчики производительности в нагрузочных тестах на платформе Windows Azure

При выполнении нагрузочных тестов Visual Studio позволяет собирать данные счетчиков производительности (которые обычно просматриваются с помощью Perfmon.exe). Счетчики производительности зависят от компьютера (рабочая или веб-роль), на котором размещается тестируемая система. С помощью системного монитора можно указать отслеживаемые процессы, включая процессы приложений. В этом разделе описываются действия, которые необходимо произвести для записи этих счетчиков во время выполнения нагрузочного теста Visual Studio в Windows Azure.

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

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

Авторы: Сидни Хига (Sidney Higa) и Паоло Сальватори (Paolo Salvatori).

Выражаем благодарность Джейми Альва Браво (Jaime Alva Bravo).

Предварительные требования

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

  1. Исполняемый файл установки конечной точки Windows Azure Connect, Wacendpointpackage.exe.

    См. раздел Как установить локальные конечные точки с Windows Azure Connect. Загрузите исполняемый файл для последующего использования.

  2. Токен активации конечной точки Windows Azure.

    Для получения этого токена следуйте инструкциям, описанным в разделе Как установить локальные конечные точки с Windows Azure Connect. Сохраните токен для последующего использования.

Общие сведения

Нагрузочные тесты Visual Studio состоят из двух логических частей.

  1. Компоненты нагрузочного теста. К этим компонентам относятся тестовый контроллер и агенты.

  2. Тестируемая система. Приложение, которое подвергается нагрузочному тестированию.

Тестируемую систему и компоненты нагрузочного теста можно развернуть совместно в одной системе, размещенной в Windows Azure. В этом случае связь между частями является оптимальной, так как узлы агентов могут взаимодействовать напрямую с экземплярами роли, выполняющими приложение. Эти части можно развернуть в отдельных размещенных системах с помощью средств Visual Studio, но собирать данные счетчиков производительности будет невозможно. (Это будет объяснено позже.)

В этом случае тестируемая система и компоненты нагрузочного теста работают в различных размещенных службах, но при этом данные счетчиков производительности должны собираться. Существует две размещенные службы, одна для тестового контроллера и агентов, а вторая для тестируемой системы. При этом есть только одна группа Windows Azure Connect, которая используется для обеспечения взаимодействия.

«Агенты и система» в поле «Тестирование» в разных службах

Метод создания группы Connect по умолчанию — использование флажка Активировать Windows Azure Connect в Visual Studio. (Дополнительные сведения см. в разделе Использование Windows Azure Connect для создания виртуальных сетей.) В этом случае агенты и тестируемая система работают в разных службах. Поэтому роли не могут взаимодействовать друг с другом с помощью метода по умолчанию — флажок не работает. Конструкция Windows Azure Connect не допускает взаимодействие между экземплярами роли, которые работают в разных размещенных службах. Решение состоит в том, чтобы установить конечную точку Connect:

  1. на рабочие роли, в которых размещаются агенты;

  2. веб-роли или рабочие роли, в которых размещается тестируемая система.

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

Автоматическая установка конечной точки Connect

Для обеспечения связи между размещенными службами сначала загрузите файл Wacendpointpackage.exe. Храните этот исполняемый файл с проектом Visual Studio, содержащим рабочую роль, в которой размещается агент. Затем настройте рабочую роль для автоматической установки конечной точки, как показано в этом разделе.

Автоматическая установка конечной точки Connect

  1. Скопируйте и вставьте Wacendpointpackage.exe в проект Visual Studio для рабочей роли, в которой размещается агент. Выполните следующие действия, чтобы настроить рабочую роль для автоматической установки конечной точки.

    1. Запустите Visual Studio от лица администратора и откройте решение, содержащее проект нагрузочного теста.

    2. В обозревателе решений вставьте Wacendpointpackage.exe в проект Visual Studio с рабочей ролью, в которой размещается агент.

    3. В обозревателе решений щелкните правой кнопкой мыши файл Wacendpointpackage.exe и выберите команду Свойства.

    4. В области свойств присвойте свойству Действие построения значение Нет.

    5. В области свойств убедитесь, что свойству Копировать в выходной каталог присвоено значение Всегда копировать.

  2. Создайте пакетный файл, который запускает исполняемый файл установки.

    1. Создайте файл с именем Startup.cmd.

    2. Скопируйте и вставьте в файл следующий код. Замените <windows azure connect group activation token> на токен активации вашей группы Connect.

      Wacendpointpackage.exe /i  /s /m ru-ru /token <windows azure connect group activation token>
      
  3. Скопируйте и вставьте файл Startup.cmd в проект Visual Studio для рабочей роли, в которой размещается агент. Присвойте свойству файла Действие построения значение Нет. Установите для свойства Копировать в выходной каталог значение Всегда копировать.

  4. Настройте рабочую или веб-роль для запуска пакетного файла.

    1. Откройте облачный проект Azure, содержащий файлы определения и конфигурации службы.

    2. Откройте файл ServiceDefinition.csdef.

    3. В элемент <WebRole>, в котором размещается агент, добавьте элемент <Runtime> и установите «повышенный» контекст выполнения. Под элементом <Runtime> добавьте элемент <Startup>. Затем добавьте элемент <Task> для запуска пакетного файла в режиме с повышенными правами. Далее показан полный код:

      <Runtime executionContext="elevated"/>
      <Startup>
          <Task commandLine="setup\startup.cmd" executionContext="elevated" taskType="simple" />
      </Startup>    
      
      

Описанный метод обычно используется для установки программного обеспечения на рабочих и веб-ролях Azure. Дополнительные сведения см. в разделе Запуск задач перед запуском экземпляров ролей в Windows Azure.

Инициализация

Перед переходом к следующему разделу разверните и запустите виртуальные машины в Windows Azure. Запущенные экземпляры необходимы для создания наборов счетчиков и включения сопоставления наборов счетчиков. Дополнительные сведения о развертывании и запуске размещенных служб на платформе Azure см. в разделе Запуск приложения в Windows Azure.

Создание наборов счетчиков производительности

Для создания наборов счетчиков производительности используйте средства Visual Studio Load Test.

Создание набора счетчиков производительности

  1. Откройте проект Visual Studio, который содержит компоненты Load Test.

  2. Откройте тестовый проект и откройте файл нагрузочного теста (*.loadtest).

  3. Щелкните правой кнопкой мыши папку Наборы счетчиков и выберите Добавить пользовательский набор счетчиков. Имя по умолчанию — Custom1. Задайте для папки набора счетчиков нужное имя.

  4. Щелкните правой кнопкой мыши новую папку и выберите команду Добавить счетчики.

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

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

  7. Повторите предыдущие шаги, чтобы добавить требуемые счетчики.

После создания набора счетчиков создайте сопоставление для каждой запущенной роли.

Создание сопоставления счетчика производительности

  1. В файле нагрузочного теста (*.loadtest) откройте папку Параметры запуска.

  2. В папке Сопоставления набора счетчиков найдите имена запущенных экземпляров Azure. Имена виртуальных машин обычно начинаются с «RD». Для каждого экземпляра рабочей роли агента существует одна виртуальная машина.

  3. Щелкните правой кнопкой мыши узел компьютера и выберите команду Управление наборами счетчиков.

  4. В диалоговом окне Управление наборами счетчиков выберите для добавления пользовательский набор счетчиков.

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

Включение сквозной безопасности

Удаленный рабочий стол — это стандартный способ доступа к экземпляру роли. С помощью средств Visual Studio можно настроить роли, которые будут использовать удаленный рабочий стол. Средство Visual Studio создает сертификат с указанными именем пользователя и паролем. Дополнительные сведения см. в разделе Использование удаленного рабочего стола с ролями Windows Azure. При использовании этого метода имя пользователя автоматически добавляется в группу администраторов во всех ролях, в которых настроено использование удаленного рабочего стола. Тот же пользователь должен входить в группу администраторов на компьютерах рабочих ролей. Это значит, что одно имя пользователя и один пароль применяются для входа в агенты и в тестируемую систему. Для этого необходимо создать локального пользователя и применять этот идентификатор для развертывания размещенной службы нагрузочного теста. Чтобы проверить правильны ли настройки, используйте удаленный рабочий стол для изучения группы администраторов на запущенной рабочей роли. Убедитесь, что тот же пользователь входит в эту группу. Дополнительные сведения о создании локального пользователя для нагрузочного теста см. в разделе «Создание локального пользователя для управления контроллером нагрузочного теста» статьи Публикация нагрузочного теста в Windows Azure.


Дата сборки:

2013-07-25

Добавления сообщества

Показ:
© 2014 Microsoft