Jinsi nilitumia wiki kama mhandisi wa ndani wa SRE. Wajibu kupitia macho ya mhandisi wa programu

Jinsi nilitumia wiki kama mhandisi wa ndani wa SRE. Wajibu kupitia macho ya mhandisi wa programu

Mhandisi wa SRE - mwanafunzi

Kwanza, wacha nijitambulishe. mimi - @tristan.soma, mhandisi wa mwisho katika kikundi Monitor::Afya GitLab. Wiki iliyopita nilipata heshima ya kufanya kazi na mmoja wa wahandisi wetu wa SRE wanaopiga simu. Lengo lilikuwa kuangalia jinsi afisa wa zamu anavyojibu matukio ya kila siku na kupata uzoefu wa maisha halisi kazini. Tungependa wahandisi wetu kuelewa vyema mahitaji ya mtumiaji kazi Monitor::Afya.

Ilinibidi kufuata mhandisi wa SRE kila mahali kwa wiki. Hiyo ni, nilikuwepo kwenye makabidhiano, nilifuatilia njia sawa za tahadhari na kujibu matukio ikiwa na wakati yalitokea.

Matukio

Kulikuwa na matukio 2 ndani ya wiki.

1. Cryptominer

GitLab.com iliona matumizi makubwa Jumatano Mkimbiaji wa GitLab'a, iliyosababishwa na majaribio ya kutumia dakika za mkimbiaji kuchimba cryptocurrency. Tukio hili lilishughulikiwa kwa kutumia zana yetu wenyewe ya kutoruhusu ukiukaji, ambayo husimamisha kazi za mtekelezaji na kufuta mradi na akaunti inayohusishwa nao.

Ikiwa tukio hili halingegunduliwa, chombo cha kiotomatiki kingeipata, lakini katika kesi hii, mhandisi wa SRE aliona ukiukaji kwanza. Jukumu la tukio liliundwa, lakini habari juu yake imefungwa.

2. Uharibifu wa utendaji wa maombi ya Canary na Main

Tukio hilo lilisababishwa na kupungua kwa kasi na kuongezeka kwa mara kwa mara ya makosa katika canary na programu kuu za wavuti kwenye Gitlab.com. Thamani kadhaa za Apdex zilikiukwa.

Fungua kazi ya tukio: https://gitlab.com/gitlab-com/gl-infra/production/issues/1442

Matokeo Muhimu

Hapa kuna mambo machache niliyojifunza wakati wa wiki yangu ya zamu.

1. Tahadhari ni muhimu sana wakati wa kugundua mikengeuko kutoka kwa kawaida.

Arifa zinaweza kugawanywa katika aina kadhaa:

  • Arifa kulingana na thamani fulani ya kiwango cha juu, kama vile "hitilafu 10 za 5xx zilitokea kwa sekunde."
  • Arifa ambazo kiwango cha juu ni thamani ya asilimia kama vile "marudio ya makosa 5xx kwa 10% ya jumla ya kiasi cha maombi kwa wakati fulani."
  • Arifa kulingana na wastani wa kihistoria kama vile "hitilafu 5xx katika asilimia 90".

Kwa ujumla, aina ya 2 na 3 ni muhimu zaidi kwa SREs za zamu, kwa kuwa zinafichua kupotoka kutoka kwa kawaida katika mchakato.

2. Arifa nyingi hazizidi matukio.

Wahandisi wa SR hushughulika na mtiririko wa mara kwa mara wa arifa, nyingi ambazo sio muhimu sana.

Kwa hivyo kwa nini usiweke kikomo arifa zako kwa zile muhimu tu? Kwa njia hii, hata hivyo, huenda usitambue dalili za mwanzo za nini mpira wa theluji utaingia kwenye tatizo halisi ambalo linatishia uharibifu mkubwa.

Kazi ya SRE inapopiga simu ni kubainisha ni arifa zipi zinaonyesha jambo zito, na kama zinahitaji kuongezwa na kushughulikiwa. Ninashuku kuwa hii pia ni kwa sababu ya kutobadilika kwa arifa: ingekuwa bora ikiwa kungekuwa na viwango kadhaa au njia "mahiri" za kusanidi arifa kulingana na hali iliyoelezwa hapo juu.

Pendekezo la Kipengele: https://gitlab.com/gitlab-org/gitlab/issues/42633

3. SRE zetu za zamu hutumia zana nyingi.

Ndani:

  • Mradi wa infra wa GitLab: vitabu vya kukimbia vinaishi hapa, kazi za zamu/wiki, majukumu ya kukabiliana na matukio.
  • Masuala ya GitLab: Uchunguzi, hakiki, na matengenezo pia hufuatiliwa katika masuala.
  • Lebo za GitLab: Kazi za otomatiki zinazinduliwa kwa kutumia lebo maalum, ambazo roboti hutumia kufuatilia shughuli za kazi.

Ya nje:

  • PagerDuty: Arifa
  • Slack: Mtiririko wa ujumbe wa PagerDuty/AlertManager huenda hapa. Kuunganishwa na amri za kufyeka ili kutekeleza kazi mbalimbali, kama vile kufunga arifa au kuzidisha tukio.
  • Grafana: taswira ya vipimo kwa kuzingatia mitindo ya muda mrefu.
  • Kibana: Hutoa taswira/utafutaji wa kumbukumbu, uwezo wa kuchimba zaidi katika matukio maalum.
  • Kuza: Kuna "chumba cha mapumziko" kinachoendelea kila mara katika Zoom. Hii inaruhusu wahandisi wa SRE kujadili matukio kwa haraka bila kupoteza wakati muhimu kuunda chumba na kuunganisha washiriki.

Na wengine wengi.

4. Kufuatilia GitLab.com na GitLab ni hatua moja ya kushindwa

Iwapo GitLab.com itakabiliwa na hitilafu kubwa ya huduma, hatutaki iathiri uwezo wetu wa kutatua suala hilo. Inaweza kusimamishwa kwa kuzindua mfano wa pili wa GitLab ili kudhibiti GitLab.com. Kwa kweli, hii tayari inafanya kazi kwetu: https://ops.gitlab.net/.

5. Vipengele vichache vya kuzingatia kuongeza kwenye GitLab

  • Uhariri wa kazi za watumiaji wengi, sawa na Hati za Google. Hii inaweza kusaidia na kazi za matukio wakati wa tukio, na vile vile kazi za kutoa muhtasari. Katika visa vyote viwili, washiriki kadhaa wanaweza kuhitaji kuongeza kitu kwa wakati halisi.
  • Vijiti zaidi vya kazi. Uwezo wa kuendesha hatua tofauti za mtiririko wa kazi wa GitLab kutoka ndani utasaidia kupunguza utegemezi wako kwenye miunganisho ya Slack. Kwa mfano, uwezo wa kuruhusu tahadhari katika PagerDuty kupitia amri ya kufyeka katika suala la GitLab.
    Hitimisho

Wahandisi wa SRE wana wakati mgumu na magumu mengi. Itakuwa nzuri kuona bidhaa zaidi za GitLab zinazoshughulikia maswala haya. Tayari tunashughulikia baadhi ya nyongeza kwa bidhaa ambayo itafanya utiririshaji wa kazi uliotajwa hapo juu kuwa rahisi. Maelezo yanapatikana kwa Sehemu ya Maono ya Bidhaa ya Ops.

Tunapanua timu katika 2020 ili kuleta vipengele hivi vyote muhimu pamoja. Ikiwa una nia, tafadhali angalia nafasi za kazi, na jisikie huru kuwasiliana na mtu yeyote kwenye timu yetu na maswali yoyote.

Chanzo: mapenzi.com

Kuongeza maoni