Архитектура контроллера хоста

Архитектура платформы тестирования VTS интегрирована с облачным сервисом тестирования. Хост-контроллер VTS работает на хост-машине и управляет экземпляром тестовой программы (например, Tradefed), как показано ниже:

Архитектура контроллера хоста

Рисунок 1. Архитектура контроллера хоста VTS.

Контроллер получает команды от управляющего кластера, работающего как экземпляр Google App Engine (GAE), а затем передает команды и ответы между управляющим кластером и экземпляром тестовой программы.

Такая архитектура имеет следующие преимущества:

  • Поскольку он не связан с экземпляром тестовой программы, он может управлять разными типами тестовых программ и более надежен. Альтернативный дизайн (встраивание логики управления хостом в тестовую программу) не блокирует распространение ошибок.
  • Поскольку он использует модель управления на основе запросов, он может работать с разными типами контроллеров кластеров на стороне облака, а также с хостами, которые находятся за межсетевым экраном (для входящих подключений). Альтернативная архитектура (модель C&C на основе push-уведомлений) может не позволить облачному контроллеру получить доступ к экземплярам контроллера хоста, которые существуют на хост-компьютерах в частной сети.