Что мы можем проверить с помощью облачных сервисов? Часть 2

Опубликовано: Artem Prysyazhnuk 2017-01-20 все статьи | Глоссарий | FAQ

Вначале компания HostTracker была основана на базе простого веб-сайта для предоставления бесплатных услуг клиентам. Однако, спустя несколько лет, этот стартап разработал широкий спектр инструментов, служащих для решения различных проблем, в том числе и различных сетевых вопросов. В серии публикаций мы решили подробно описать все возможности нашего сервиса, а также поделиться с вами опытом разработки подобных проектов и упомянуть об интересных задачах, с которыми мы столкнулись. Кроме того, для тех, кто ищет пример того, как продавать то, что было сделано для себя, наш опыт будет полезен, так как большинство наших функций были разработаны в связи с нашими личными потребностями.

В предыдущей части обзора мы рассказали об истории создания сервиса и самых основных функциях - регулярной проверке сайтов и серверов, и более того, уведомлении об их работоспособности. Прежде чем приступить к описанию более продвинутых возможностей, следует написать, откуда берутся все эти идеи и как расставить приоритеты. Один из ключевых секретов, часто используемых предпринимателями, - следовать утверждению: "Все люди уникальны. Все "клиенты’ уникальны, поэтому вы должны научиться работать с ними. Поэтому ИТ-сектор в полной мере подвержен этому фактору, так как огромное количество клиентов обладают глубокими знаниями и разнообразным опытом. Тем не менее, часть проблем можно решить с помощью имеющихся ресурсов. Однако главная особенность нашей работы заключается в том, что часто приходится что-то дорабатывать. Большинство функций HostTracker’а были разработаны или адаптированы в связи с удобствами и потребностями конкретных людей. Мы также являемся частью этих людей, так как имеем довольно большую инфраструктуру, и также нуждаемся в том, чтобы все работало правильно. Поэтому мы сами являемся самым придирчивым клиентом.

Дорогие мелочи

Стоит отметить, что помимо различных регулярных проверок, существуют и другие полезные инструменты. К ним относится мониторинг срока действия домена и SSL-сертификата. Это вроде бы мелочь, но может принести массу неожиданных неудобств в работе. Эти функции появились в HostTracker, когда истек срок действия одного из наших личных доменов. Более того, крупные компании также часто сталкиваются с этими проблемами, так как продление срока действия домена /сертификата зависит от ненадежного человеческого фактора. Поэтому уведомление о том, что домен необходимо продлить, попадает не только в папку спама (и без того переполненную постоянными маркетинговыми сообщениями от вашей хостинг-компании), но и в папку с данными о падениях сайта. Кроме того, сохраняется возможность SMS-уведомления. Вот почему эти функции так удобны.

Еще одна интересная функция - проверка доменов на наличие их в черных списках DNS. Эти списки являются независимыми и составляются отдельно по разным алгоритмам. Более того, они были созданы в основном для фильтрации подозрительных объектов. Каждый администратор может настроить собственный веб-сервер различными способами, например, не получать сообщения от серверов из определенного списка. Это помогает бороться со спамом, распространением вредоносных программ, DDoS-атаками и другими проблемами. Но все эти списки имеют свои алгоритмы, и нет никакой гарантии, что в результате каких-либо совпадений ваш сайт не окажется в каком-либо из этих черных списков. Более того, согласно статистике, это происходит на регулярной основе с самыми невинными сайтами. Например, никто не может гарантировать, что хакер не использует ваш близлежащий IP для различных спам-атак. В такой ситуации весь диапазон IP будет считаться ненадежным. Каковы последствия этого?  Ваши сообщения не будут доставлены клиентам, сайт не будет так легко найден в поисковой системе и так далее. Более того, вы обнаружите эту проблему, когда изменения станут критическими или даже необратимыми. Поэтому мониторинг и уведомление DNSBL также необходимы.

Проверка содержания

Здесь хороший пример того, как использование функций может превзойти ожидания разработчиков. Ранее мы уже упоминали о нескольких подобных случаях. На самом деле, сейчас многие вещи имеют веб-интерфейс, в то время как для других – при необходимости его можно легко создать. Поэтому была разработана не только функция проверки, полностью ли загрузилась страница, используя простой парсинг, но и другие умопомрачительные вещи этой проверки. Адаптируясь к различным запросам клиентов, эта функция стала очень гибкой. Она может искать одно или сразу несколько слов из списка. Более того, она может обнаружить появление определенных фраз. Эта функция также может выдать за ошибку всю строку, содержащую ключевое слово. Например, если есть некая страница состояния сервера (“Server 1 OK” и т.д.), а на ней отображается “Error”, то сообщение будет “1 Server Error”.  В этом случае вся диагностика уже проведена, и можно сразу приступать к устранению неполадок.

Что если случится так, что сервер должен быть отключен?

Помимо уведомления о сбоях в работе сайтов, HostTracker предоставляет еще одну важную функцию – собирает статистику каждого исследуемого сайта. Когда различные кнопки на сайтах были популярны – часто появлялась и кнопка HostTracker’с цифрами посещаемости сайта, прогнозом погоды и прочими подобными вещами. Сейчас можно использовать виджет, но все равно кнопка также доступна для любителей ретро. Кроме того, статистика очень важна для менеджеров. Они постоянно хотят знать, правильно ли работает сайт и его администрация. Поэтому существует еще одна полезная функция - планирование технического обслуживания. Даже самые стабильные сайты и серверы необходимо время от времени обновлять или перезагружать. В то же время не хочется терять так называемые “9s” в плане аптайма. Планирование обслуживания позволяет достичь двух целей (вместе или по отдельности). Это: не отправлять уведомления об ошибках и не записывать ошибки в статистику в течение определенного промежутка времени. Конечно, это кажется своего рода жульничеством, но намеченное обслуживание оправдано, особенно в исключенное время. Кроме того, во время обслуживания проводятся различные проверки, которые записываются в журнал. Это может быть полезно для веб-мастеров и администраторов, так как журнал позволяет точно определить продолжительность обновления или перезапуска процессов, возникшие ошибки, другие поломки и т.д.. Более того, благодаря этому можно проследить весь процесс возникновения ошибки: от этапа, когда сервер становится недоступен в течение некоторого времени, до этапа, когда приложение выдает ошибку.

Обслуживание может быть запланировано как разовое задание или на регулярной основе. Например, если резервное копирование выполняется каждую ночь, или новый релиз - каждый четверг. Единственное условие - расписание обслуживания должно быть составлено не менее чем за 12 часов до ближайшего периода приостановки работы сайта/сервера. Это делается для того, чтобы все профилактические работы не вызывали жалости, а статистика, предоставляемая HostTracker, была достоверной.

Своеобразный эпилог

Нас часто спрашивают, зачем мы это делаем. Ведь то же самое можно было бы сделать и без помощи HostTracker’  И знаете что - безусловно, можно. Особенно, если вам нужен только один инструмент. Многие говорят, что весь деловой мир построен на человеческой лени. Решая рутинные проблемы, HostTracker предоставляет кусочек свободного от работы и ответственности времени в расписании клиента. Воистину, не каждый способен самостоятельно собрать автомобиль. Мы равняемся на людей, которые стремятся создать что-то хорошее для личных нужд в нашей области, но большинство людей не хотят тратить свое свободное время на подобное занятие.

Мы не хотим тратить свое свободное время на то, чтобы делать что-то подобное.

Кроме того, нашими клиентами являются: не IT-специалисты; IT-специалисты, которым нужно что-то докладывать руководителям; сами руководители; любители надежности – они используют свои инструменты и пользуются чужими’ и многие другие группы людей.

Вообщем, мы всегда рады вашим комментариям.


Об авторе

Артем Присяжнюк
Генеральный директор и основатель компании HostTracker. Он увлеченный предприниматель с сильным техническим образованием в области F#. Артем работает в индустрии разработки программного обеспечения уже более 20 лет.
Loading...