`

СПЕЦІАЛЬНІ
ПАРТНЕРИ
ПРОЕКТУ

Чи використовує ваша компанія ChatGPT в роботі?

BEST CIO

Определение наиболее профессиональных ИТ-управленцев, лидеров и экспертов в своих отраслях

Человек года

Кто внес наибольший вклад в развитие украинского ИТ-рынка.

Продукт года

Награды «Продукт года» еженедельника «Компьютерное обозрение» за наиболее выдающиеся ИТ-товары

 

Host Tracker: веб-мониторинг в Windows Azure

+33
голоса

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

Тем, кто активно работает с Вебом, должно быть знакомо название украинской компании Host Tracker, которая с 2004 г. поддерживает один из крупнейших мировых сервисов веб-мониторинга. Его задачей является отслеживание работоспособности и доступности сайтов в масштабе времени близком к реальному — оперативно оповещая о перебоях в их работе, Host Tracker помогает сократить время простоев, улучшить качество обслуживания посетителей, выявлять причины проблем и пр.

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

Первая версия Host Tracker, функционирующая до сих пор и обслуживающая десятки тысяч заказчиков, была реализована на базе Linux. На сегодняшний день ее поддерживают девять управляющих серверов, размещенных в двух ЦОД на принципах colocation, и несколько десятков агентов. Поскольку конечной задачей веб-мониторинга является повышение показателя работоспособности (uptime) клиентских веб-ресурсов — а около 95% заказчиков Host Tracker смогли довести его до 99%, — то производительность и доступность самого сервиса являются не просто важными, а основополагающими параметрами, от которых зависит весь бизнес. В идеале Host Tracker должен демонстрировать доступность близкую к 100%, однако экстенсивное расширение сервиса сделало эту задачу трудноразрешимой.

С ростом нагрузки обеспечивать бесперебойное функционирование Host Tracker становилось все сложнее, в том числе из-за невозможности оперативного добавления новых управляющих серверов, сложностей с обслуживанием разношерстной и разновозрастной аппаратной базы и пр. Кроме того, желание развивать функциональность сервиса за счет расширения поддержки протоколов и сетевых служб также натолкнулось на определенные проблемы. «К сожалению, для Linux оказалось не так много готовых наработок и библиотек, а разрабатывать все с нуля слишком сложно,» — говорит Артем Присяжнюк, директор Host Tracker. — «Возникла идея кардинально сменить стек технологий на более развитый, и, ближе познакомившись с платформой .NET, с ее возможностями в части масштабируемости и сетевой поддержки, я понял, что это то, что нам нужно».

Естественно, миграция на совершенно иную платформу — задача не из простых, проект растянулся на три года. Но нет худа без добра: за это время на сцену вышли облачные вычисления, с помощью которых можно было не просто решить проблему с масштабированием, но и полностью отказаться от собственной инфраструктуры. Более того, модель PaaS позволяла снять большую часть нагрузки по администрированию решения и управлять приложением как самодостаточной сущностью, вплоть до полной автоматизации — соответственно, выбор Windows Azure был фактически безальтернативным.

Таким образом, вторая версия Host Tracker, промышленная эксплуатация которой началась в мае 2012 г., функционирует уже в Windows Azure. Центральный компонент реализован в виде Web Role и взаимодействует с SQL Azure Database — он обеспечивает внешний портал, аналитику и построение отчетов, управление задачами мониторинга. Последние возлагаются на экземпляры Worker Role, которые также используют SQL Azure Database для хранения своих данных — изменение количества экземпляров и обеспечивает масштабирование сервиса в зависимости от нагрузки. Агенты функционируют прежним образом, целесообразность их переноса в Windows Azure изучается. В ближайшей перспективе планируется большую часть данных (в частности, журналы мониторинга) хранить в Windows Azure Table Storage, что позволит дополнительно оптимизировать производительность и снизить стоимость решения.

Host Tracker веб-мониторинг в Windows Azure

Пример диаграммы работоспособности сайта

На текущий момент Host Tracker обеспечивает мониторинг по протоколам HTTP/HTTPS и ICMP, по конкретным портам, в том числе различными методами (HEAD/POST/GET) и пр. Оповещение о проблемах возможно по электронной почте, посредством SMS и мгновенных сообщений. Заказчику предоставляются отчеты со статистикой доступности контролируемых ресурсов и диаграммами их работоспособности. Для настройки мониторинга пяти сайтов достаточно всего 6 мин, при этом среднее время реакции на проблему составляет порядка нескольких минут и заказчик будет оповещен спустя еще 1-3 мин. Сервис также позволяет всем желающим оперативно проверить любой сайт, в том числе, с точки зрения доступа из различных регионов. В настоящее время на новую версию Host Tracker уже перешли более 2,5 тыс заказчиков.

Host Tracker веб-мониторинг в Windows Azure

Пример оперативного теста доступа к веб-ресурсу

Таким образом, если сам по себе переход на .NET дал возможность осовременить Host Tracker, оптимизировать архитектуру приложения и реализовать в нем новые возможности, то миграция в облако позволила отказаться от второстепенных, но довольно трудоемких задач по администрированию решения, а главное — добиться необходимых показателей функционирования. Microsoft для всех основных служб Windows Azure декларирует доступность на уровне 99,9% и гарантирует ежемесячные компенсации, если показатель окажется ниже. Это создает надежную основу для функционирования сервисов наподобие Host Tracker, для которых доступность является наиболее критичным параметром. Использование облачной инфраструктуры также обеспечивает высокую защищенность сервиса: несанкционированный доступ к приложению и многие типы атак фактически исключены, а сохранность данных гарантируется трехкратным резервированием.

Отказ от собственной инфраструктуры дал Host Tracker еще одно преимущество. Производительность сервиса также довольно критична, поскольку от нее напрямую зависит скорость оповещения клиентов. В этом плане Windows Azure является практически неисчерпаемым источником вычислительных ресурсов, соответственно, оперативно запуская дополнительные мониторинговые экземпляры, можно поддерживать необходимые показатели функционирования Host Tracker. Более того, именно облачная среда позволяет максимально автоматизировать эту задачу и практически исключить потребность в непосредственном управлении. «В Windows Azure особенно подкупает простота развертывания и масштабирования решения,» — говорит Артем Присяжнюк. — «Не требуется никакой подготовительной работы, вроде закупок оборудования и лицензий, настройки ПО — процесс абсолютно предсказуемый, простой и понятный и выполняется в полуавтоматическом режиме за считаные минуты».

Дополнительную информацию о компании и ее решениях вы можете найти на специальной странице http://ko.com.ua/azure

Ready, set, buy! Посібник для початківців - як придбати Copilot для Microsoft 365

+33
голоса

Напечатать Отправить другу

Читайте также

 

Ukraine

 

  •  Home  •  Ринок  •  IТ-директор  •  CloudComputing  •  Hard  •  Soft  •  Мережі  •  Безпека  •  Наука  •  IoT