Hoe we de dienstdienst van Yandex hebben geëvacueerd

Hoe we de dienstdienst van Yandex hebben geëvacueerd

Als het werk in één laptop past en autonoom van andere mensen kan worden gedaan, dan is het geen probleem om naar een afgelegen locatie te verhuizen - gewoon 's ochtends thuis blijven. Maar niet iedereen heeft zoveel geluk.

De wachtdienst bestaat uit een team van Service Availability Specialists (SRE's). Het omvat dienstdoende beheerders, ontwikkelaars, managers en een gemeenschappelijk “dashboard” van 26 LCD-panelen van elk 55 inch. De stabiliteit van de diensten van het bedrijf en de snelheid van het oplossen van problemen zijn afhankelijk van het werk van de dienstploeg.

Vandaag Dmitri Melikov tal10n, de manager van de dienst van dienst, zal vertellen hoe ze er in een paar dagen tijd in zijn geslaagd om apparatuur naar huis te vervoeren en nieuwe werkprocessen op te zetten. Ik geef hem het woord.

— Als je eindeloos veel tijd hebt, kun je je comfortabel overal mee naartoe verplaatsen. Maar de snelle verspreiding van het coronavirus heeft ons in compleet andere omstandigheden gebracht. Werknemers van Yandex behoorden tot de eersten die overstapten op werken op afstand – zelfs vóór de introductie van het zelfisolatieregime. Het gebeurde zo. Op donderdag 12 maart werd mij gevraagd de mogelijkheid te evalueren om het werk van het team naar huis te verplaatsen. Op vrijdag de 13e verscheen er een aanbeveling om over te stappen op werken op afstand. In de nacht van dinsdag 17 maart hadden we alles klaar: de dienstdoende mensen werkten vanuit huis, de apparatuur werd vervoerd, de ontbrekende software werd geschreven, de processen werden opnieuw geconfigureerd. En nu zal ik je vertellen hoe we het voor elkaar hebben gekregen. Maar eerst moet je de taken onthouden die de dienstdienst oplost.

Wie zijn we

Yandex is een groot bedrijf met honderden diensten. De stabiliteit van zoeken, stemassistent en alle andere producten hangt niet alleen af ​​van de ontwikkelaars. Het kan zijn dat de stroomvoorziening in het datacenter verstoord is. Een werknemer kan per ongeluk een optische kabel beschadigen tijdens het vervangen van asfalt. Of er kan sprake zijn van een toename van de gebruikersactiviteit, waardoor een dringende noodzaak ontstaat om de capaciteit opnieuw toe te wijzen. Bovendien leven we allemaal in een grote, complexe infrastructuur, en de introductie van het ene product kan per ongeluk leiden tot de degradatie van een ander product.

26 panelen in onze open ruimte zijn anderhalfduizend waarschuwingen en meer dan honderd kaarten en panelen van onze diensten. In wezen is dit een enorm diagnostisch paneel. Een ervaren beheerder van dienst kan door ernaar te kijken snel de status van belangrijke componenten begrijpen en de richting bepalen voor het onderzoeken van een technologisch probleem. Dit betekent niet dat iemand constant naar alle apparaten moet kijken: de automatisering zelf zal de aandacht trekken door een melding te sturen naar de speciale interface van de dienstdoende officier, maar zonder een visueel paneel kan het oplossen van het probleem lang duren.

Wanneer zich problemen voordoen, evalueert de officier van dienst eerst hun prioriteit. Vervolgens wordt het probleem geïsoleerd of de impact ervan op gebruikers geminimaliseerd.

Er zijn verschillende standaardmanieren om het probleem te isoleren. Eén daarvan is de verslechtering van de dienstverlening, waarbij de dienstdoende beheerder enkele van de functies uitschakelt die gebruikers het minst opmerken. Hiermee kunt u de belasting tijdelijk verminderen en uitzoeken wat er is gebeurd. Als er zich een probleem voordoet met het datacenter, neemt de dienstdoende officier contact op met het operatieteam, begrijpt het probleem, bewaakt de timing van de oplossing en schakelt, indien nodig, gespecialiseerde teams in.

Wanneer de dienstdoende beheerder een probleem dat is ontstaan ​​door een release niet kan isoleren, meldt hij dit aan het serviceteam - en gaan de ontwikkelaars op zoek naar fouten in de nieuwe code. Als ze er niet uitkomen, trekt de beheerder ontwikkelaars van andere producten of servicebeschikbaarheidsingenieurs aan.

Ik kan nog lang praten over hoe alles hier werkt, maar ik denk dat ik de essentie al heb weergegeven. De dienstploeg coördineert het werk van alle diensten en houdt toezicht op mondiale problemen. Het is belangrijk dat de dienstdoende beheerder het diagnosepaneel voor zijn ogen heeft. Daarom kun je bij de overstap naar werken op afstand niet iedereen zomaar een laptop geven. Grafieken en waarschuwingen passen niet op het scherm. Wat moeten we doen?

Idee

Op kantoor werken alle tien dienstdoende beheerders in ploegendiensten achter één dashboard, dat 26 monitoren, twee computers, vier NVIDIA Quadro NVS 810-videokaarten, twee in een rack gemonteerde ononderbreekbare voedingen en verschillende onafhankelijke netwerktoegangen omvat. We moesten ervoor zorgen dat iedereen de mogelijkheid had om thuis te werken. Het is simpelweg niet mogelijk om zo'n muur in een appartement te monteren (mijn vrouw zal hier vooral blij mee zijn), dus hebben we besloten een draagbare versie te maken die je thuis kunt brengen en monteren.

We zijn gaan experimenteren met de configuratie. We moesten alle apparaten op minder schermen passen, dus de belangrijkste vereiste voor de monitor was een hoge pixeldichtheid. Van de 4K-monitoren die in onze omgeving beschikbaar zijn, hebben we de Lenovo P27u-10 gekozen om te testen.

Van laptops namen we een 16-inch MacBook Pro. Het heeft een redelijk krachtig grafisch subsysteem, nodig voor het weergeven van afbeeldingen op verschillende 4K-schermen, en vier universele Type-C-connectoren. Je vraagt ​​​​je misschien af: waarom geen desktop? Een laptop vervangen door exact dezelfde uit een magazijn is veel eenvoudiger en sneller dan het monteren en configureren van een identieke systeemeenheid. En het weegt minder.

Nu moesten we begrijpen hoeveel monitoren we daadwerkelijk op de laptop konden aansluiten. En het probleem hier is niet het aantal connectoren; we konden dit alleen ontdekken door het geassembleerde systeem te testen.

Hoe we de dienstdienst van Yandex hebben geëvacueerd

Testen

We hebben alle kaarten en waarschuwingen redelijk comfortabel op vier monitoren geplaatst en zelfs op een laptop aangesloten, maar we liepen tegen een probleem aan. Het weergeven van 4x4K-pixels op aangesloten monitoren belast de videokaart zo zwaar dat de laptop zelfs tijdens het opladen leegraakte. Gelukkig werd het probleem opgelost met behulp van de Lenovo ThinkPad Thunderbolt 3 Dock Gen 2. Ik kon een monitor, voeding en zelfs mijn favoriete muis en toetsenbord op het dockingstation aansluiten.

Maar er kwam meteen een ander probleem naar voren: de GPU was zo aan het puffen dat de laptop oververhit raakte, wat betekent dat de batterij ook oververhit raakte, die als gevolg daarvan in de beschermende modus ging en geen lading meer accepteerde. Over het algemeen is dit een zeer nuttige modus die beschermt tegen gevaarlijke situaties. In sommige gevallen werd het probleem opgelost met behulp van een hightech apparaat: een balpen die onder de laptop werd geplaatst om de ventilatie te verbeteren. Maar dit hielp niet iedereen, dus hebben we ook de snelheid van de standaardventilator verhoogd.

Er was nog een onaangename eigenschap. Alle kaarten en waarschuwingen moeten zich op een strikt gedefinieerde plaats bevinden. Stel je voor dat je een vliegtuig bestuurt om te landen - en dan beginnen snelheidsindicatoren, hoogtemeters, variometers, standindicatoren, kompassen en positie-indicatoren van grootte te veranderen en naar verschillende plaatsen te springen. Daarom hebben we besloten een applicatie te maken die hierbij helpt. Op één avond schreven we het in Electron.js en namen we een kant-en-klaar API over het maken en beheren van vensters. We hebben een configuratieprocessor en de periodieke updates toegevoegd, evenals ondersteuning voor een beperkt aantal monitoren. Even later voegden ze ondersteuning toe voor verschillende opstellingen.

Montage en levering

Maandag hadden de wizards van de helpdesk voor ons veertig monitoren, tien laptops en evenveel dockingstations aangeschaft. Ik weet niet hoe ze het voor elkaar hebben gekregen, maar ik ben ze heel erg dankbaar.

Hoe we de dienstdienst van Yandex hebben geëvacueerd

Het enige dat nog overbleef, was het allemaal afleveren in de appartementen van de dienstdoende beheerders. En dit zijn tien adressen in verschillende delen van Moskou: zuid, oost, centrum, en ook Balashikha, dat 45 kilometer van het kantoor ligt (later werd trouwens een stagiair uit Serpoechov toegevoegd). Het was nodig om dit alles op de een of andere manier onder mensen te verdelen, om logistiek op te bouwen.

Ik heb alle adressen op onze kaarten ingevoerd, er is nog steeds een mogelijkheid om de route tussen verschillende punten te optimaliseren (ik heb de gratis bètaversie van de tool voor koeriers gebruikt). We hebben ons team opgedeeld in vier onafhankelijke teams van twee personen, elk met een eigen route. Mijn auto bleek de ruimste, dus nam ik apparatuur mee voor vier medewerkers tegelijk.

Hoe we de dienstdienst van Yandex hebben geëvacueerd

De hele bevalling duurde een record van drie uur. Maandagavond om tien uur verlieten we het kantoor. Om één uur in de ochtend was ik al thuis. Diezelfde avond gingen we op dienst met nieuw materieel.

Zodat

In plaats van één grote diagnoseconsole hebben we tien relatief draagbare consoles in het appartement van elke dienstdoende persoon gemonteerd. Uiteraard moesten er nog wel wat details geregeld worden. Vroeger hadden we bijvoorbeeld één ‘ijzeren’ telefoon voor de dienstdoende officier voor meldingen. Dit werkte niet onder de nieuwe omstandigheden, dus bedachten we ‘virtuele telefoons’ voor dienstdoende officieren (in wezen kanalen in de messenger). Er waren ook andere veranderingen. Maar het belangrijkste is dat we er in recordtijd in zijn geslaagd om niet alleen mensen over te brengen, waardoor het risico op hun infectie werd verkleind, maar al ons werk naar huis te brengen zonder de processen en productstabiliteit te schaden. We werken nu al een maand in deze modus.

Hieronder vindt u foto's van de echte werkplekken van onze dienstdoende agenten.

Hoe we de dienstdienst van Yandex hebben geëvacueerd

Hoe we de dienstdienst van Yandex hebben geëvacueerd

Hoe we de dienstdienst van Yandex hebben geëvacueerd

Hoe we de dienstdienst van Yandex hebben geëvacueerd

Hoe we de dienstdienst van Yandex hebben geëvacueerd

Bron: www.habr.com