Як і що можна перевіряти хмарними сервісами? Огляд сервісу ХостТрекер. Частина 2

Компанія ХостТрекер почалася з простенького сайту на базі не менш простенького скрипта, який надавав безкоштовні послуги всім бажаючим. Але за кілька років роботи сервіс, розвиваючись як стартап, обзавівся солідним інструментарієм для вирішення різноманітних задач людей, так чи інакше причетних до Мережі. У серії публікацій ми вирішили докладно описати функції нашого сервісу, поділитися досвідом розвитку подібних проектів, згадати цікаві завдання, з якими нам довелося зіткнутися. Відзначимо, що найчастіше розробка нових функцій відбувається з оглядкою на наші особисті потреби, тому наша історія може ще стати хорошим прикладом того, як «продати те, що зроблено для себе».



Все справа в наборі функцій?

попередній частині огляду описувалася історія сервісу, а також найбільш базова функція — регулярна перевірка сайтів і серверів та оповіщення про їх працездатності. Починаючи розповідь про більш просунутих функцій, необхідно розповісти звідки взагалі беруться ідеї і як розставляються пріоритети. Один із секретів, про які часто згадують бізнесмени, які працюють у сфері послуг, і якому буде присвячено наступні кілька рядків, звучить так: «всі люди унікальні». Всі клієнтські запити індивідуальні, і треба навчитися з цим жити. У сфері ІТ це відчувається особливо гостро: з-за великої кількості непересічних особистостей і різноманітного досвіду, яким вони володіють. Втім, не рідко виходить придумати спосіб, яким вдається вирішити проблему клієнта вже наявними засобами. Але часто доводиться щось допілівать напилком — в цьому і криється головна особливість такої діяльності. Безліч функцій ХостТрекера були розроблені або адаптовані під потреби конкретних людей і для їх зручності. У число цих людей входимо і ми самі — володіючи досить великою інфраструктурою, нам теж необхідно, щоб все справно працювало. Тому ми самі є найбільш вибагливим клієнтом.

Дрібниця, а приємно

Описуючи регулярні перевірки, бажано відразу відзначити деякі корисні додаються функції. До них відноситься моніторинг терміну дії домену та SSL сертифікату. Такі, начебто, дрібниці, приносять величезні незручності коли проявляються в несподіваний час. Ці функції з'явилися у ХостТрекере, коли як завжди раптово «завершився один з наших особистих доменів. Але подібні проблеми виникають навіть у великих компаній, так як продовження доменів/сертифікатів завжди впирається у людський фактор, про надійність якого тут говорити не будемо. Деякі приклади ми зібрали і описали ось тут. Тому оповіщення, що даний домен необхідно продовжити, яке потрапить не тільки в папку спам, де вже прописався ваш хостер завдяки безперервному потоку маркетингових листів, а і в папку про падіння вашого сайту (не кажучи вже про можливості СМС оповіщення), звичайно ж, є вкрай корисним.

Іншою цікавою функцією є перевірка доменів в чорних списках DNSBL. Ці списки незалежні і формуються кожен за своїм алгоритмом і створені, головним чином, для фільтрації підозрілих суб'єктів. Кожен адміністратор може налаштувати свій веб-сервер, наприклад, не отримувати листи від серверів, перелічених у певному списку. Це допомагає боротися зі спамом, поширенням шкідливого ПО, ддос-атак і іншими проблемами. Але всі ці списки мають свої алгоритми, і немає гарантії, що в результаті випадкових обставин ваш сайт там не виявиться. Більше того, статистика показує, що таке регулярно відбувається навіть з самими безневинними сайтами. Наприклад, ніхто не дасть гарантію, що на сусідній з вами айпишнике не пропишеться місцевий Король Спаму, внаслідок чого весь діапазон буде занесений в неблагонадійні. У що це може вилитися? Листи від вас перестануть приходити клієнтам, сайт стане гірше відображатися в пошуковиках… Ну і так далі по наростаючій. А ви дізнаєтеся про це, коли зміни стануть критичними, а часом, на жаль, і незворотними. Тому функція контролю і оповіщення про попаданні в найбільш популярні чорні списки також є досить затребуваною.



Перевірка вмісту

Ось це хороший приклад того, як використання функції може перевершити всі очікування розробників. Раніше ми згадували кілька подібних випадків. Справа в тому, що безліч речей зараз має веб-інтерфейс. А для ще більшого безлічі його можна написати без особливих складнощів. Тому крім основної задумки — перевірки, подгрузилась сторінка цілком, шляхом простого парсинга, — відкрилися нові простори. Підлаштовуючись під різних клієнтів, ця функція стала максимально універсальною: може шукати відразу багато слів, або ж лише одне зі списку. Або навпаки — реагувати на появу певних фраз. Також може видавати помилку рядок, в якій міститься ключове слово. Наприклад, багато роблять сторінку статусів: «Server 1 OK» і так далі. Якщо він раптом стане «Error», тоді прийде в повідомленні «Server 1 Error» — вся діагностика вже проведена, можна відразу приступати до усунення.

А що, якщо сервер ПОВИНЕН прилягти?

Крім повідомлень про падіння сайтів, ХостТрекер виконує ще одну важливу функцію – збирає статистику по кожному перевіряється сайту. У часи, коли різні кнопки на сайтах ще були популярними – кнопка ХостТрекера також нерідко з'являлася поруч з показниками відвідуваності, прогнозом погоди та іншими, безумовно, дуже важливими речами. Зараз же є можливість вставити віджет, хоча кнопка теж все ще доступна для любителів ретро. Крім того, статистика часто є показником для керівництва: добре чи працює сайт і його відділ адміністрування? Тому ще однією корисною функцією є планування технічних робіт. Навіть найбільш стабільні сайти та сервери повинні час від часу оновлюватися або перезавантажуватися. І при цьому не хочеться втрачати горезвісні «дев'ятки» в показниках аптайма. Планування технічних робіт дозволяє досягти двох цілей (разом або роздільно): не надсилати сповіщення про помилки і не записувати помилки під час визначеного інтервалу часу в статистику. Звичайно, це все одно пахне чітерство, але запланований простій, тим більше, у неробочий для цільової аудиторії час – цілком можна пробачити, з нашої точки зору. Тим не менш, перевірки під час технічних робіт все так само йдуть, і справно пишуться в лог, тому можуть бути корисними для вебмайстрів та адміністраторів: лог дозволяє визначити, скільки саме тривало оновлення або перезавантаження, які помилки при цьому видавалися (тобто простежується весь процес: сервер недоступний деякий час, потім повертає помилку додатка, потім іншу помилку і т. д.), які «гальма» при цьому спостерігалися тощо.



Технічні роботи можна запланувати як одноразово, так і на регулярній основі. Наприклад, якщо кожну ніч робиться бекап, або кожен четвер – новий реліз. Єдина умова – розклад технічних робіт має бути складено не пізніше, ніж за 12 годин до найближчої припинення сайту/сервера. Це зроблено для того, щоб на технічні роботи не списувалися раптово виниклі несподіванки, і статистика, надана ХостТрекером, залишалася достовірною.

Замість епілогу

Нам часто задають питання (в тому числі в коментарях на Хабре) — а для чого Ви це робите? Це ж можна робити і самостійно. Відповідаємо: так, можна. Особливо якщо потрібно щось одне. Але справа в тому, що, грубо кажучи, весь бізнес побудований на людській ліні. Полегшує людям життя, ми звільняємо час наших клієнтів для чогось більш важливого, бо завдання, які ми вирішуємо — повні рутини. Ну і не варто забувати, що не кожен здатний особисто зібрати для себе автомобіль або виростити хліб. Загалом, ми щиро поважаємо людей, які здатні самостійно зробити собі добре в нашій сфері, але практика показує, що далеко не всі готові витрачати на це свій час.

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

Але ми все одно дуже раді читати ваші зауваження, так як на Хабре не рідкість вловити щось корисне для себе навіть між рядків.
Джерело: Хабрахабр

0 коментарів

Тільки зареєстровані та авторизовані користувачі можуть залишати коментарі.