ПагерДути, или Зашто Оперативно одељење не може да спава ноћу

Што је систем сложенији, то више постаје обрастао свим врстама упозорења. И постоји потреба да се реагује на иста ова упозорења, агрегира их и визуализује. Мислим да је то ситуација која је многима позната до границе нервозе.

Решење о коме ће се расправљати није најнеочекиваније, али претрага не враћа пуноправни чланак на ову тему.

Због тога сам одлучио да поделим искуство ФунЦорп-а и причам о томе како је структурисан процес дежурства, ко зове, зашто и како све то можете погледати.

ПагерДути, или Зашто Оперативно одељење не може да спава ноћу

Шта је ПагерДути?

Дакле, да бисмо решили све ове проблеме, почели смо да тражимо погодан алат. После дужег претраживања, изабрали смо ПагерДути. ПД нам се чинио као прилично комплетно и сажето решење са великим бројем интеграција и подешавања. Каква је она?

Укратко, ПагерДути је платформа за обраду инцидената која може да обрађује долазне инциденте кроз различите интеграције, поставља дежурне налоге и затим упозорава дежурног инжењера у зависности од нивоа инцидента (на високом нивоу - позив, на ниском нивоу - притисак из апликације / СМС).

Ко је дежурни?

Ово је вероватно прво место за почетак постављања ПД.

У ФунЦорп-у, као иу другим компанијама, постоји почасни положај дежурног. Преноси се од инжењера до инжењера једном дневно. Постоји такозвани први и други ред одговора на упозорење од ПагерДути. Претпоставимо да стигне упозорење високог приоритета и ако 10 минута након позива дежурном са прве линије нема реакције на њега (тј. није пребачено у статус потврде или решено), позив иде на други дежурни инжењер. Ово је конфигурисано у самом ПагерДути-у кроз смернице ескалације.

ПагерДути, или Зашто Оперативно одељење не може да спава ноћу

Ако други дежурни не одговори, обавештење се враћа на главном дежурном.

Стога, било које долазно упозорење високог приоритета не може остати необрађено. 

Сада да видимо одакле могу доћи инциденти.

Које интеграције користимо?

ПД прима много различитих инцидената од разних служби. Тренутно имамо око 25 таквих сервиса, а за њихову обраду користимо неке готове интеграције.

  • Прометеј

Главни систем прикупљања метрике је Прометеј. О томе је већ доста писано на Хабреу, само ћу рећи да их имамо неколико за различита окружења: један прикупља метрику са виртуелних машина и доцкер-а, други са Амазон сервиса, трећи са хардверских машина. Телеграф се углавном користи као извозник метрике.

  • Е-pošta

И овде је, мислим, све јасно из наслова. Ова интеграција се користи за слање обавештења из неких скрипти које извршава црон. ПД вам даје одређену адресу на коју шаљете писма. Приликом креирања сервиса са таквом интеграцијом можете поставити приоритете, којим редоследом ће се обрађивати долазни инциденти, како тачно креирати упозорење (за свако долазно писмо, за долазно писмо + одређено правило итд.).

ПагерДути, или Зашто Оперативно одељење не може да спава ноћу

  • Слацк

По мом мишљењу, веома интересантна интеграција. Постоје тренуци када се нешто деси, али није покривено инцидентима. Стога смо додали интеграцију из Слацк-а да бисмо направили инцидент. То јест, можете писати корпоративном Слацку /цаллофдути све је споро и ускоро ће се покварити а ПД ће то обрадити и инцидент послати дежурном инжењеру.

Радимо:

ПагерДути, или Зашто Оперативно одељење не може да спава ноћу

Видимо:

ПагерДути, или Зашто Оперативно одељење не може да спава ноћу

  • АПИ за

ХТТП интеграција. У ствари, овде нема ничег посебно занимљивог, само ПОСТ захтев са телом у ЈСОН формату. На пример, нешто занимљиво: користимо га за спољно праћење https://www.statuscake.com/. Ова услуга проверава доступност наших сајтова из различитих делова света. У случају када добијемо неприхватљив код одговора (на пример, 502), долази до инцидента и онда све следи горе описани ланац. Сам СтатусЦаке има могућност надгледања интерних УРЛ-ова, ССЛ сертификата или истека домена.

  • ЛибреНМС

Ово је још један систем за праћење, више о томе можете прочитати на њиховој веб страници https://www.librenms.org/. Уз његову помоћ пратимо мрежне интерфејсе и иДРАЦ са сервера.

ПагерДути, или Зашто Оперативно одељење не може да спава ноћу

Постојале су и интеграције као што су Датадог, ЦлоудВатцх. Можете видети више о томе шта им се догодило овде.

Визуализација

Главни систем извештавања о инцидентима је Слацк. Сви инциденти који долазе у ПД записују се у посебан цхат, а ако се њихов статус промени, то се такође приказује у ћаскању.

ПагерДути, или Зашто Оперативно одељење не може да спава ноћу

Када се указала прилика да се корисни подаци приказују на екранима монитора који висе са плафона, одједном смо схватили да ми (у девопс одељењу) немамо шта да прикажемо на њима. Постоји дивна Графана, али она не покрива све, а запослени реагују на упозорења, а не на графиконе.

Након темељне, али неуспешне претраге на ГитХубу за сажетом и информативном „плочом“ за ПД, одлучили смо да напишемо сопствену - само са оним што нам је потребно. Иако је у почетку постојала идеја да се прикаже сам ПД интерфејс, изгледало је још незгодније.

Да бисте га написали, све што треба да урадите је да добијете кључ од ПД са правима само за читање.
И ево шта смо добили:

ПагерДути, или Зашто Оперативно одељење не може да спава ноћу

На екрану се приказују тренутни отворени инциденти, име тренутног дежурног инжењера из изабраног распореда и време без инцидента високог приоритета (панел са инцидентом високог приоритета ће бити истакнут црвеном бојом).

Погледајте изворе ове имплементације овде.

Као резултат тога, добили смо згодну контролну таблу за преглед свих наших инцидената. Биће ми драго ако некоме од вас наше искуство буде корисно.

Извор: ввв.хабр.цом

Додај коментар