Hvordan vi evakuerte Yandex-vaktskiftet

Hvordan vi evakuerte Yandex-vaktskiftet

Når arbeidet passer i én bærbar datamaskin og kan gjøres autonomt fra andre mennesker, er det ingen problemer med å flytte til et eksternt sted - bare å være hjemme om morgenen. Men ikke alle er like heldige.

Vaktvakten er et team av spesialister på tjenestetilgjengelighet (SRE). Det inkluderer tjenesteadministratorer, utviklere, ledere, samt et felles "dashbord" med 26 LCD-paneler på 55 tommer hver. Stabiliteten til selskapets tjenester og hastigheten på problemløsning avhenger av arbeidet i vaktskiftet.

I dag Dmitry Melikov tal10n, lederen for vakthavende vakt, vil fortelle om hvordan de i løpet av få dager klarte å frakte utstyr hjem til seg og etablere nye arbeidsprosesser. Jeg gir ham ordet.

— Når du har uendelig med tid, kan du komfortabelt bevege deg hvor som helst med hva som helst. Men den raske spredningen av koronaviruset har satt oss i helt andre forhold. Yandex-ansatte var blant de første som gikk over til fjernarbeid – selv før innføringen av selvisolasjonsregimet. Det skjedde slik. Torsdag 12. mars ble jeg bedt om å vurdere muligheten for å flytte teamets arbeid hjem. Fredag ​​13. dukket det opp en anbefaling om å gå over til fjernarbeid. Natt til tirsdag 17. mars hadde vi alt klart: De på vakt jobbet hjemmefra, utstyret ble fraktet, den manglende programvaren ble skrevet, prosessene ble rekonfigurert. Og nå skal jeg fortelle deg hvordan vi klarte det. Men først må du huske oppgavene som vaktskiftet løser.

Hvem er vi

Yandex er et stort selskap med hundrevis av tjenester. Stabiliteten til søk, stemmeassistent og alle andre produkter avhenger ikke bare av utviklerne. Strømforsyningen i datasenteret kan bli avbrutt. En arbeider kan ved et uhell skade en optisk kabel under utskifting av asfalt. Eller det kan være en økning i brukeraktivitet, noe som forårsaker et presserende behov for å omfordele kapasitet. Dessuten lever vi alle i stor, kompleks infrastruktur, og utgivelsen av ett produkt kan ved et uhell føre til forringelse av et annet.

26 paneler i vår åpne plass er halvannet tusen varsler og mer enn hundre diagrammer og paneler av tjenestene våre. I hovedsak er dette et enormt diagnostisk panel. En erfaren administrator på vakt kan raskt forstå statusen til viktige komponenter ved å se på den og kan sette retningen for å undersøke et teknologisk problem. Dette betyr ikke at en person hele tiden skal se på alle enhetene: selve automatiseringen vil tiltrekke seg oppmerksomhet ved å sende et varsel til det spesielle grensesnittet til tjenestevakten, men uten et visuelt panel kan det ta lang tid å løse problemet.

Når det oppstår problemer, vurderer vakthavende først deres prioritering. Det isolerer deretter problemet eller minimerer innvirkningen på brukerne.

Det er flere standardmåter for å isolere problemet. En av dem er degradering av tjenester, når administratoren på vakt deaktiverer noen av funksjonene som brukerne minst legger merke til. Dette lar deg midlertidig redusere belastningen og finne ut hva som skjedde. Hvis det oppstår et problem med datasenteret, kontakter vaktlederen operasjonsteamet, forstår problemet, overvåker tidspunktet for løsningen og involverer om nødvendig spesialiserte team.

Når vakthavende administrator ikke kan isolere et problem som har oppstått på grunn av en utgivelse, rapporterer han det til serviceteamet – og utviklerne ser etter feil i den nye koden. Hvis de ikke kan finne ut av det, tiltrekker administratoren utviklere fra andre produkter eller tjenestetilgjengelighetsingeniører.

Jeg kan snakke lenge om hvordan alt fungerer her, men jeg tror jeg allerede har formidlet essensen. Vaktskiftet koordinerer arbeidet til alle tjenester og overvåker globale problemer. Det er viktig for vakthavende administrator å ha diagnosepanelet foran øynene. Det er derfor, når du bytter til eksternt arbeid, kan du ikke bare gi alle en bærbar datamaskin. Diagrammer og varsler får ikke plass på skjermen. Hva å gjøre?

Idé

På kontoret jobber alle ti administratorer på vakt på skift bak ett dashbord, som inkluderer 26 skjermer, to datamaskiner, fire NVIDIA Quadro NVS 810 skjermkort, to rackmonterte avbruddsfrie strømforsyninger og flere uavhengige nettverkstilganger. Vi måtte sørge for at alle hadde mulighet til å jobbe hjemme. Det er rett og slett ikke mulig å montere en slik vegg i en leilighet (min kone vil være spesielt glad for dette), så vi bestemte oss for å lage en bærbar versjon som kan tas med og monteres hjemme.

Vi begynte å eksperimentere med konfigurasjonen. Vi trengte å få plass til alle enhetene på færre skjermer, så hovedkravet til skjermen var høy pikseltetthet. Av 4K-skjermene som er tilgjengelige i miljøet vårt, valgte vi Lenovo P27u-10 for testing.

Fra bærbare datamaskiner tok vi en 16-tommers MacBook Pro. Den har et ganske kraftig grafikkundersystem, nødvendig for å gjengi bilder på flere 4K-skjermer, og fire universelle Type-C-kontakter. Du kan spørre: hvorfor ikke skrivebordet? Å bytte ut en bærbar PC med nøyaktig den samme fra et lager er mye enklere og raskere enn å montere og konfigurere en identisk systemenhet. Og den veier mindre.

Nå trengte vi å forstå hvor mange skjermer vi faktisk kunne koble til den bærbare datamaskinen. Og problemet her er ikke antall kontakter; vi kunne bare finne ut dette ved å teste det sammensatte systemet.

Hvordan vi evakuerte Yandex-vaktskiftet

Testing

Vi plasserte alle kartene og varslene ganske komfortabelt på fire skjermer og koblet dem til en bærbar datamaskin, men vi fikk et problem. Gjengivelse av 4x4K piksler på tilkoblede skjermer ga en slik belastning på skjermkortet at den bærbare datamaskinen ble tømt selv under lading. Heldigvis ble problemet løst ved hjelp av Lenovo ThinkPad Thunderbolt 3 Dock Gen 2. Jeg var i stand til å koble en skjerm, strømforsyning og til og med favorittmusen og -tastaturet til dokkingstasjonen.

Men et annet problem dukket umiddelbart opp: GPU-en tøffet så mye at den bærbare datamaskinen ble overopphetet, noe som betyr at batteriet også ble overopphetet, som som et resultat gikk i beskyttende modus og sluttet å akseptere lading. Generelt er dette en veldig nyttig modus som beskytter mot farlige situasjoner. I noen tilfeller ble problemet løst ved hjelp av en høyteknologisk enhet - en kulepenn plassert under den bærbare datamaskinen for å forbedre ventilasjonen. Men dette hjalp ikke alle, så vi skrudde også opp hastigheten på standardviften.

Det var enda et ubehagelig trekk. Alle diagrammer og varsler må være plassert på et strengt definert sted. Tenk deg at du styrer et fly for å lande - og da begynner fartsindikatorer, høydemålere, variometre, holdningsindikatorer, kompass og posisjonsindikatorer å endre størrelse og hoppe til forskjellige steder. Så vi bestemte oss for å lage en søknad som vil hjelpe med dette. På en kveld skrev vi det i Electron.js, og tok en ferdig API om å lage og administrere vinduer. Vi la til en konfigurasjonsprosessor og deres periodiske oppdatering, samt støtte for et begrenset antall skjermer. Litt senere la de til støtte for ulike oppsett.

Montering og levering

På mandag hadde veiviserne fra helpdesk skaffet oss 40 skjermer, ti bærbare datamaskiner og like mange dokkingstasjoner. Jeg vet ikke hvordan de klarte det, men tusen takk.

Hvordan vi evakuerte Yandex-vaktskiftet

Det gjensto bare å levere det hele til leilighetene til vakthavende administratorer. Og dette er ti adresser i forskjellige deler av Moskva: sør, øst, sentrum og også Balashikha, som ligger 45 kilometer fra kontoret (forresten, en praktikant fra Serpukhov ble senere lagt til). Det var nødvendig å på en eller annen måte fordele alt dette mellom folk, for å bygge logistikk.

Jeg skrev inn alle adressene på kartene våre, det er fortsatt en mulighet til å optimalisere ruten mellom forskjellige punkter (jeg brukte den gratis betaversjonen av verktøyet for kurerer). Vi delte laget vårt i fire uavhengige team på to personer, hver med sin egen rute. Bilen min viste seg å være den mest romslige, så jeg tok med utstyr til fire ansatte på en gang.

Hvordan vi evakuerte Yandex-vaktskiftet

Hele leveransen tok rekord tre timer. Vi dro fra kontoret klokken ti mandag kveld. Klokken ett om morgenen var jeg allerede hjemme. Samme kveld gikk vi vakt med nytt utstyr.

Med det resultat at

I stedet for én stor diagnosekonsoll, satte vi sammen ti relativt bærbare i leiligheten til hver person på vakt. Selvfølgelig var det fortsatt noen detaljer å ordne opp i. For eksempel pleide vi å ha én "jern"-telefon for vaktmesteren for varsler. Dette fungerte ikke under de nye forholdene, så vi kom opp med "virtuelle telefoner" for tjenestemenn (i hovedsak kanaler i messenger). Det var andre endringer også. Men det viktigste er at vi på rekordtid klarte å overføre ikke bare mennesker, noe som reduserer risikoen for deres infeksjon, men alt arbeidet vårt hjem uten skade på prosesser og produktstabilitet. Vi har jobbet i denne modusen i en måned nå.

Nedenfor finner du bilder av de virkelige arbeidsplassene til våre vaktledere.

Hvordan vi evakuerte Yandex-vaktskiftet

Hvordan vi evakuerte Yandex-vaktskiftet

Hvordan vi evakuerte Yandex-vaktskiftet

Hvordan vi evakuerte Yandex-vaktskiftet

Hvordan vi evakuerte Yandex-vaktskiftet

Kilde: www.habr.com