PagerDuty və ya Əməliyyatlar Departamenti Gecələr Niyə Yata bilmir

Sistem nə qədər mürəkkəb olsa, bir o qədər də hər cür xəbərdarlıqlarla dolur. Və bu eyni xəbərdarlıqlara reaksiya vermək, onları toplamaq və vizuallaşdırmaq lazımdır. Düşünürəm ki, bu, çoxlarına əsəbilik həddinə qədər tanış olan bir vəziyyətdir.

Müzakirə ediləcək həll ən gözlənilməz deyil, lakin axtarış bu mövzuda tam hüquqlu bir məqaləni qaytarmır.

Buna görə də, FunCorp-un təcrübəsini bölüşmək və vəzifə prosesinin necə qurulduğu, kimin zəng etdiyi, niyə və necə baxa biləcəyiniz barədə danışmaq qərarına gəldim.

PagerDuty və ya Əməliyyatlar Departamenti Gecələr Niyə Yata bilmir

PagerDuty nədir?

Beləliklə, bütün bu problemləri həll etmək üçün rahat bir vasitə axtarmağa başladıq. Bəzi axtarışlardan sonra biz PagerDuty-ni seçdik. PD bizə çoxlu sayda inteqrasiya və parametrlərlə kifayət qədər tam və qısa bir həll kimi görünürdü. O necədir?

Bir sözlə, PagerDuty müxtəlif inteqrasiyalar vasitəsilə daxil olan insidentləri emal edə, növbətçi əmrlər qura və sonra hadisənin səviyyəsindən (yüksək səviyyədə - zəng, aşağı səviyyədə) proqramdan / SMS-dən təkan).

Növbətçi kimdir?

Bu, yəqin ki, PD qurmağa başlamaq üçün ilk yerdir.

FunCorp-da digər şirkətlər kimi fəxri növbətçi vəzifəsi var. Gündə bir dəfə mühəndisdən mühəndisə ötürülür. PagerDuty-dən gələn xəbərdarlığa sözdə birinci və ikinci cavab xətti var. Tutaq ki, yüksək prioritetli xəbərdarlıq gəldi və birinci cərgədən növbətçiyə edilən zəngdən 10 dəqiqə sonra ona heç bir reaksiya yoxdursa (yəni, təsdiq və ya həll edilmiş statusa keçməyib), zəng ikinciyə keçir. növbətçi mühəndis. Bu, PagerDuty-nin özündə Eskalasiya Siyasətləri vasitəsilə konfiqurasiya edilmişdir.

PagerDuty və ya Əməliyyatlar Departamenti Gecələr Niyə Yata bilmir

İkinci növbətçi cavab vermədikdə bildiriş geri qayıdır əsasdır növbətçiyə.

Beləliklə, hər hansı yüksək prioritetli gələn xəbərdarlıq emal olunmadan qala bilməz. 

İndi gəlin görək hadisələr haradan yarana bilər.

Hansı inteqrasiyalardan istifadə edirik?

PD müxtəlif xidmətlərdən çoxlu müxtəlif hadisələr alır. Hazırda 25-ə yaxın belə xidmətimiz var və onları emal etmək üçün bəzi hazır inteqrasiyalardan istifadə edirik.

  • Prometey

Əsas metrik toplama sistemi Prometeydir. Habré-də artıq bu barədə çox şey yazılmışdır, sadəcə deyim ki, bizdə müxtəlif mühitlər üçün onlardan bir neçəsi var: biri virtual maşınlardan və dokerlərdən, digəri Amazon xidmətlərindən, üçüncüsü isə aparat maşınlarından ölçülər toplayır. Teleqraf əsasən metrik ixracatçısı kimi istifadə olunur.

  • mina

Burada da, məncə, başlıqdan hər şey aydın görünür. Bu inteqrasiya cron tərəfindən icra edilən bəzi skriptlərdən bildirişlər göndərmək üçün istifadə olunur. PD sizə məktublar göndərdiyiniz müəyyən ünvanı verir. Bu cür inteqrasiya ilə bir xidmət yaratarkən, prioritetləri təyin edə bilərsiniz, daxil olan insidentlərin hansı ardıcıllıqla işlənəcəyini, dəqiq bir siqnalın necə yaradılacağını (hər gələn məktub üçün, gələn məktub üçün + müəyyən qayda və s.)

PagerDuty və ya Əməliyyatlar Departamenti Gecələr Niyə Yata bilmir

  • Süstlük

Məncə, çox maraqlı inteqrasiya. Elə vaxtlar olur ki, nəsə baş verir, amma hadisələrlə örtülmür. Buna görə də insident yaratmaq üçün Slack-dən inteqrasiya əlavə etdik. Yəni korporativ Slack-ə yaza bilərsiniz /callofduty hər şey yavaşdır və tezliklə pozulacaq və PD onu emal edəcək və hadisəni növbətçi mühəndisə göndərəcək.

Biz edirik:

PagerDuty və ya Əməliyyatlar Departamenti Gecələr Niyə Yata bilmir

Biz görürük:

PagerDuty və ya Əməliyyatlar Departamenti Gecələr Niyə Yata bilmir

  • API

HTTP inteqrasiyası. Əslində burada xüsusi maraqlı heç nə yoxdur, sadəcə JSON formatında gövdəsi olan POST sorğusu. Məsələn, maraqlı bir şey: biz istifadə edərək xarici monitorinq üçün istifadə edirik https://www.statuscake.com/. Bu xidmət dünyanın müxtəlif yerlərindən saytlarımızın əlçatanlığını yoxlayır. Qəbuledilməz cavab kodu aldığımız halda (məsələn, 502) insident yaranır və sonra hər şey yuxarıda təsvir olunan zənciri izləyir. StatusCake özü daxili URL-lərə, SSL sertifikatına və ya domen müddətinin bitməsinə nəzarət etmək imkanına malikdir.

  • LibreNMS

Bu başqa bir monitorinq sistemidir, bu barədə onların saytında daha çox oxuya bilərsiniz https://www.librenms.org/. Onun köməyi ilə biz serverlərdən şəbəkə interfeyslərinə və iDRAC-a nəzarət edirik.

PagerDuty və ya Əməliyyatlar Departamenti Gecələr Niyə Yata bilmir

Datadog, CloudWatch kimi inteqrasiyalar da var idi. Onların başına gələnləri daha çox görə bilərsiniz burada.

Vizualizasiya

Əsas hadisə hesabat sistemi Slack-dir. PD-yə gələn bütün hadisələr xüsusi çata yazılır və onların statusu dəyişərsə, bu da söhbətdə göstərilir.

PagerDuty və ya Əməliyyatlar Departamenti Gecələr Niyə Yata bilmir

Tavandan asılmış monitorların ekranlarında faydalı məlumatları göstərmək fürsəti yarandıqda, birdən başa düşdük ki, bizim (devops departamentində) onlarda göstərmək üçün heç bir şeyimiz yoxdur. Gözəl Grafana var, lakin hər şeyi əhatə etmir və işçilər qrafiklərə deyil, xəbərdarlıqlara reaksiya verirlər.

GitHub-da PD üçün qısa və məlumatlandırıcı "lövhə" üçün hərtərəfli, lakin uğursuz axtarışdan sonra biz özümüzü yazmağa qərar verdik - yalnız bizə lazım olanlarla. Əvvəlcə PD interfeysinin özünü göstərmək ideyası olsa da, daha da əlverişsiz görünürdü.

Onu yazmaq üçün yalnız oxumaq hüququ olan PD-dən açar əldə etmək kifayətdir.
Və əldə etdiyimiz budur:

PagerDuty və ya Əməliyyatlar Departamenti Gecələr Niyə Yata bilmir

Ekranda cari açıq insidentlər, seçilmiş cədvəldən hazırkı növbətçi mühəndisin adı və yüksək prioritetli insident olmayan vaxt göstərilir (yüksək prioritet hadisə olan panel qırmızı rənglə vurğulanacaq).

Bu tətbiqin mənbələrinə burada baxın.

Nəticədə, bütün hadisələrimizə baxmaq üçün rahat tablosuna sahib olduq. Bəziləriniz təcrübəmizi faydalı hesab etsəniz, şad olaram.

Mənbə: www.habr.com

Добавить комментарий