Hvordan vi evakuerede Yandex-vagten

Hvordan vi evakuerede Yandex-vagten

Når arbejdet passer ind i én bærbar computer og kan udføres selvstændigt fra andre mennesker, så er der ingen problemer med at flytte til et fjerntliggende sted - bare at blive hjemme om morgenen. Men ikke alle er så heldige.

Vagtvagten er et team af servicetilgængelighedsspecialister (SRE'er). Det omfatter vagtadministratorer, udviklere, ledere samt et fælles "dashboard" med 26 LCD-paneler på hver 55 tommer. Stabiliteten af ​​virksomhedens ydelser og hastigheden af ​​problemløsning afhænger af vagtskiftets arbejde.

I dag Dmitry Melikov tal10n, lederen af ​​vagtvagten, vil fortælle om, hvordan det i løbet af få dage lykkedes dem at transportere udstyr til deres hjem og etablere nye arbejdsprocesser. Jeg giver ham ordet.

— Når du har en endeløs forsyning af tid, kan du komfortabelt bevæge dig hvor som helst med hvad som helst. Men den hurtige spredning af coronavirus har sat os i helt andre forhold. Yandex-medarbejdere var blandt de første til at skifte til fjernarbejde - selv før indførelsen af ​​selvisoleringsregimet. Det skete sådan her. Torsdag den 12. marts blev jeg bedt om at vurdere muligheden for at flytte holdets arbejde hjem. Fredag ​​den 13. dukkede en anbefaling op om at skifte til fjernarbejde. Natten til tirsdag den 17. marts havde vi alt klar: De vagthavende arbejdede hjemmefra, udstyret blev transporteret, den manglende software blev skrevet, processerne blev omkonfigureret. Og nu vil jeg fortælle dig, hvordan vi klarede det. Men først skal du huske de opgaver, som vagtvagten løser.

Hvem er vi

Yandex er en stor virksomhed med hundredvis af tjenester. Stabiliteten af ​​søgning, stemmeassistent og alle andre produkter afhænger ikke kun af udviklerne. Strømforsyningen i datacentret kan være afbrudt. En arbejder kan ved et uheld beskadige et optisk kabel under udskiftning af asfalt. Eller der kan være en stigning i brugeraktivitet, hvilket forårsager et presserende behov for at omfordele kapacitet. Desuden lever vi alle i stor, kompleks infrastruktur, og frigivelsen af ​​et produkt kan ved et uheld føre til nedbrydning af et andet.

26 paneler i vores åbne rum er halvandet tusinde alarmer og mere end hundrede diagrammer og paneler over vores tjenester. Grundlæggende er dette et enormt diagnostisk panel. En erfaren vagthavende administrator kan hurtigt forstå status for vigtige komponenter ved at se på den og kan sætte retningen for at undersøge et teknologisk problem. Dette betyder ikke, at en person konstant skal se på alle enheder: selve automatiseringen vil tiltrække opmærksomhed ved at sende en meddelelse til vagtchefens særlige grænseflade, men uden et visuelt panel kan det tage lang tid at løse problemet.

Når der opstår problemer, vurderer vagtchefen først deres prioritet. Det isolerer derefter problemet eller minimerer dets indvirkning på brugerne.

Der er flere standardmetoder til at isolere problemet. En af dem er forringelse af tjenester, når vagthavende administrator deaktiverer nogle af de funktioner, som brugerne mindst bemærker. Dette giver dig mulighed for midlertidigt at reducere belastningen og finde ud af, hvad der skete. Hvis der opstår et problem med datacentret, kontakter vagtchefen driftsteamet, forstår problemet, overvåger timingen af ​​dets løsning og involverer om nødvendigt specialiserede teams.

Når vagthavende administrator ikke kan isolere et problem, der er opstået på grund af en udgivelse, melder han det til serviceteamet – og udviklerne leder efter fejl i den nye kode. Hvis de ikke kan finde ud af det, tiltrækker administratoren udviklere fra andre produkter eller servicetilgængelighedsingeniører.

Jeg kan tale længe om, hvordan alt fungerer her, men jeg tror, ​​jeg allerede har formidlet essensen. Vagtskiftet koordinerer alle tjenesters arbejde og overvåger globale problemer. Det er vigtigt for den vagthavende administrator at have diagnosepanelet for øjnene. Det er derfor, når du skifter til fjernarbejde, kan du ikke bare give alle en bærbar computer. Diagrammer og alarmer passer ikke på skærmen. Hvad skal man gøre?

Idea

På kontoret arbejder alle ti vagthavende administratorer på skift bag ét dashboard, som omfatter 26 skærme, to computere, fire NVIDIA Quadro NVS 810-videokort, to rackmonterede uafbrydelige strømforsyninger og flere uafhængige netværksadgange. Vi skulle sikre, at alle havde mulighed for at arbejde hjemme. Det er simpelthen ikke muligt at samle en sådan væg i en lejlighed (min kone vil være særlig glad for dette), så vi besluttede at skabe en bærbar version, der kan medbringes og samles derhjemme.

Vi begyndte at eksperimentere med konfigurationen. Vi havde brug for at passe alle enheder på færre skærme, så hovedkravet til skærmen var en høj pixeltæthed. Af de tilgængelige 4K-skærme i vores miljø valgte vi Lenovo P27u-10 til test.

Fra bærbare computere tog vi en 16-tommer MacBook Pro. Det har et ret kraftigt grafikundersystem, der er nødvendigt for at gengive billeder på flere 4K-skærme, og fire universelle Type-C-stik. Du kan spørge: hvorfor ikke desktop? At udskifte en bærbar computer med nøjagtig den samme fra et lager er meget nemmere og hurtigere end at samle og konfigurere en identisk systemenhed. Og den vejer mindre.

Nu skulle vi forstå, hvor mange skærme vi rent faktisk kunne forbinde til den bærbare computer. Og problemet her er ikke antallet af stik; det kunne vi kun finde ud af ved at teste det samlede system.

Hvordan vi evakuerede Yandex-vagten

Test

Vi placerede ganske komfortabelt alle diagrammer og advarsler på fire skærme og sluttede dem endda til en bærbar computer, men vi stødte på et problem. Gengivelse af 4x4K pixels på tilsluttede skærme belastede videokortet så meget, at den bærbare computer blev drænet, selv under opladning. Heldigvis blev problemet løst ved hjælp af Lenovo ThinkPad Thunderbolt 3 Dock Gen 2. Jeg var i stand til at tilslutte en skærm, strømforsyning og endda min yndlingsmus og -tastatur til dockingstationen.

Men et andet problem dukkede straks op: GPU'en tøffede så meget, at den bærbare computer blev overophedet, hvilket betyder, at batteriet også blev overophedet, hvilket som et resultat gik i beskyttende tilstand og holdt op med at acceptere opladning. Generelt er dette en meget nyttig tilstand, der beskytter mod farlige situationer. I nogle tilfælde blev problemet løst ved hjælp af en højteknologisk enhed - en kuglepen placeret under den bærbare computer for at forbedre ventilationen. Men dette hjalp ikke alle, så vi skruede også op for standardventilatorens hastighed.

Der var endnu et ubehageligt træk. Alle diagrammer og advarsler skal være placeret på et nøje defineret sted. Forestil dig, at du styrer et fly til at lande – og så begynder hastighedsindikatorer, højdemålere, variometre, holdningsindikatorer, kompasser og positionsindikatorer at ændre størrelse og hoppe til forskellige steder. Så vi besluttede at lave en ansøgning, der vil hjælpe med dette. På en aften skrev vi det i Electron.js og tog en færdiglavet API om oprettelse og styring af vinduer. Vi tilføjede en konfigurationsprocessor og deres periodiske opdatering, samt understøttelse af et begrænset antal skærme. Lidt senere tilføjede de understøttelse af forskellige opsætninger.

Montering og levering

På mandag havde guiderne fra helpdesk fået 40 skærme, ti bærbare computere og det samme antal docking-stationer til os. Jeg ved ikke, hvordan de klarede det, men mange tak.

Hvordan vi evakuerede Yandex-vagten

Tilbage var blot at levere det hele til de vagthavende administratorers lejligheder. Og det er ti adresser i forskellige dele af Moskva: syd, øst, centrum og også Balashikha, som ligger 45 kilometer fra kontoret (forresten, en praktikant fra Serpukhov blev senere tilføjet). Det var nødvendigt på en eller anden måde at fordele alt dette mellem mennesker, for at bygge logistik.

Jeg indtastede alle adresser på vores kort, der er stadig mulighed for at optimere ruten mellem forskellige punkter (jeg brugte den gratis betaversion af værktøjet til kurerer). Vi delte vores team op i fire uafhængige teams på to personer med hver sin rute. Min bil viste sig at være den mest rummelige, så jeg tog udstyr til fire medarbejdere på én gang.

Hvordan vi evakuerede Yandex-vagten

Hele leveringen tog rekord tre timer. Vi forlod kontoret klokken ti mandag aften. Klokken et om morgenen var jeg allerede hjemme. Samme nat gik vi på vagt med nyt udstyr.

Således at

I stedet for én stor diagnosekonsol samlede vi ti relativt bærbare i lejligheden til hver person på vagt. Selvfølgelig var der stadig nogle detaljer at ordne. For eksempel plejede vi at have én "jern"-telefon til vagtchefen til underretninger. Dette virkede ikke under de nye forhold, så vi fandt på "virtuelle telefoner" til vagthavende officerer (i det væsentlige kanaler i messenger). Der var også andre ændringer. Men det vigtigste er, at vi på rekordtid formåede at overføre ikke kun mennesker, hvilket reducerede risikoen for deres infektion, men alt vores arbejde hjem uden skade på processer og produktstabilitet. Vi har arbejdet i denne tilstand i en måned nu.

Nedenfor finder du fotografier af vores vagthavendes rigtige arbejdspladser.

Hvordan vi evakuerede Yandex-vagten

Hvordan vi evakuerede Yandex-vagten

Hvordan vi evakuerede Yandex-vagten

Hvordan vi evakuerede Yandex-vagten

Hvordan vi evakuerede Yandex-vagten

Kilde: www.habr.com