Comment nous avons évacué le changement de service de Yandex



Lorsque le travail tient dans un ordinateur portable et peut être effectué de manière autonome par rapport à d'autres personnes, il n'y a aucun problème à se déplacer vers un endroit éloigné - restez simplement à la maison le matin. Mais tout le monde n'a pas eu autant de chance.

Duty Shift est une équipe de spécialistes de la disponibilité des services (SRE). Il comprend des administrateurs de service, des développeurs, des gestionnaires, ainsi qu'un «tableau de bord» commun de 26 panneaux LCD de 55 pouces chacun. La stabilité des services de l'entreprise et la rapidité de résolution des problèmes dépendent du travail du quart de travail.

Aujourd'hui Dmitry Melikovtal10n, le superviseur de quart, parlera de la façon dont ils ont réussi à transporter l'équipement à leur domicile et à établir de nouveaux processus de travail en quelques jours. Je lui donne la parole.



- Lorsque vous avez une quantité infinie de temps, vous pouvez vous déplacer confortablement avec n'importe quoi n'importe où. Mais la propagation rapide du coronavirus nous a mis dans des conditions complètement différentes. Les employés de Yandex ont été parmi les premiers à passer au travail à distance - avant même l'introduction du régime d'auto-isolement. C'est arrivé comme ça. Le jeudi 12 mars, on m'a demandé d'évaluer l'opportunité de transférer le travail de l'équipe à la maison. Vendredi 13, il a été recommandé de passer au travail à distance. Dans la nuit du mardi 17 mars, tout était prêt pour nous: les préposés ont travaillé à domicile, le matériel a été transporté, le logiciel manquant a été écrit, les processus ont été reconfigurés. Et maintenant je vais vous dire comment nous l'avons fait. Mais vous devez d'abord vous souvenir des tâches qui sont résolues par le quart de travail.

Qui nous sommes


Yandex est une grande entreprise avec des centaines de services. La stabilité de la recherche, de l'assistant vocal et de tous les autres produits ne dépend pas seulement des développeurs. Le centre de données peut interrompre l'alimentation. Un travailleur peut accidentellement endommager un câble optique lors du remplacement de l'asphalte. Ou il peut y avoir une augmentation de l'activité des utilisateurs, qui nécessitera une réallocation urgente de l'alimentation. De plus, nous vivons tous dans une grande infrastructure complexe et la libération de l'un des produits peut accidentellement entraîner la dégradation de l'autre.

26 panneaux dans notre espace ouvert sont un millier et demi d'alertes et plus d'une centaine de graphiques et panneaux de nos services. En fait, c'est un énorme panneau de diagnostic. Un administrateur de service expérimenté, en la regardant, comprend rapidement l'état des nœuds importants et peut établir une direction pour enquêter sur un problème technologique. Cela ne signifie pas qu'une personne doit constamment regarder tous les appareils: l'automatisation elle-même attirera l'attention en envoyant une notification à l'interface spéciale de la personne de garde, mais sans panneau visuel, la solution au problème peut être retardée.

Lorsque des problèmes surviennent, le préposé évalue d'abord leur priorité. Il isole ensuite le problème ou minimise son impact sur les utilisateurs.

Il existe plusieurs façons standard d'isoler un problème. L'un d'eux est la dégradation des services, lorsque l'administrateur en service désactive certaines des fonctions que les utilisateurs remarquent le moins. Cela vous permet de réduire temporairement la charge et de comprendre ce qui s'est passé. En cas de problème avec le centre de données, le préposé contacte l'équipe d'exploitation, comprend le problème, surveille le timing de sa solution et, si nécessaire, met en relation des équipes spécialisées.

Lorsque l'administrateur en service ne peut pas isoler le problème survenu en raison de la publication, il le signale à l'équipe de service - et les développeurs recherchent des erreurs dans le nouveau code. S'ils ne sont pas en mesure de le comprendre, l'administrateur attire des développeurs d'autres produits ou ingénieurs pour la disponibilité des services.

Je peux parler longtemps de la façon dont tout est arrangé avec nous, mais je pense que j'ai déjà transmis l'essentiel. Le quart de travail coordonne le travail de tous les services et contrôle les problèmes mondiaux. Il est important que l'administrateur de garde ait un panneau de diagnostic devant les yeux. C'est pourquoi lorsque vous passez au travail à distance, vous ne pouvez pas simplement prendre et donner à tout le monde un ordinateur portable. Les graphiques et les alertes ne tiennent pas sur l'écran. Que faire?

Idée


Au bureau, les dix administrateurs en poste travaillent en équipe derrière un tableau de bord, qui comprend 26 moniteurs, deux ordinateurs, quatre cartes vidéo NVIDIA Quadro NVS 810, deux blocs d'alimentation sans coupure et plusieurs accès réseau indépendants. Mais nous devions donner à chacun la possibilité de travailler à la maison. Il ne suffit tout simplement pas d’assembler un tel mur dans l’appartement (ma femme en sera particulièrement heureuse), nous avons donc décidé de créer une version portable qui peut être apportée et assemblée à la maison.

Nous avons commencé à expérimenter la configuration. Nous devions adapter tous les appareils sur moins d'écrans, donc la principale exigence pour le moniteur était une densité de pixels élevée. Parmi les moniteurs 4K disponibles dans notre environnement, le Lenovo P27u-10 a été choisi pour les tests.

Des ordinateurs portables, ils ont pris un MacBook Pro 16 pouces. Il dispose d'un sous-système graphique assez puissant, nécessaire pour le rendu des images sur plusieurs écrans 4K, et de quatre connecteurs universels de type C. Vous pouvez vous demander: pourquoi pas un bureau? Le remplacement d'un ordinateur portable par exactement le même depuis un entrepôt est beaucoup plus facile et plus rapide que l'assemblage et la configuration d'une unité centrale identique. Oui, et ça pèse moins.

Il fallait maintenant comprendre combien de moniteurs nous pouvions réellement connecter à l'ordinateur portable. Et le problème ici n'est pas le nombre de connecteurs, nous n'avons pu le découvrir qu'en testant le système complet.



Essai


Nous avons placé assez confortablement tous les graphiques et alertes sur quatre moniteurs et les avons même connectés à un ordinateur portable, mais nous avons rencontré un problème. Le rendu des pixels 4 × 4K sur les moniteurs connectés a tellement chargé la carte vidéo que l'ordinateur portable a été déchargé même pendant le chargement. Heureusement, le problème a été résolu avec l'aide de la station d'accueil Lenovo ThinkPad Thunderbolt 3 Dock Gen 2. Nous avons réussi à connecter un moniteur, une alimentation et même une souris préférée avec un clavier à la station d'accueil.

Mais immédiatement un autre problème est apparu: le GPU a tellement soufflé que l'ordinateur portable a surchauffé, ce qui signifie que la batterie a également surchauffé, ce qui en conséquence est passé en mode de protection et a cessé de prendre en charge. En général, il s'agit d'un mode très utile qui protège contre les situations dangereuses. Dans certains cas, le problème a été résolu à l'aide d'un appareil de haute technologie - un stylo à bille, placé sous un ordinateur portable pour améliorer la ventilation. Mais cela n'a pas aidé tout le monde, nous avons donc également tordu la vitesse d'un ventilateur régulier.

Il y avait une autre caractéristique désagréable. Tous les graphiques et alertes doivent être situés dans un endroit strictement défini. Imaginez que vous pilotez un avion pour atterrir - et ici, les indicateurs de vitesse, altimètres, variomètres, indicateurs d'horizon, boussoles et indicateurs de position commencent à se redimensionner et à sauter à différents endroits. Nous avons donc décidé de faire une application qui vous aidera. En une soirée, nous l'avons écrit sur Electron.js, en prenant une API prête à l'emploi pour créer et gérer des fenêtres. Nous avons ajouté un gestionnaire de configuration et leur mise à jour périodique, ainsi que la prise en charge d'un nombre limité de moniteurs. Un peu plus tard, nous avons ajouté la prise en charge de diverses configurations.

Assemblage et livraison


Lundi, les assistants du helpdesk avaient pour nous 40 moniteurs, dix ordinateurs portables et autant de stations d'accueil. Je ne sais pas comment ils l'ont fait, mais merci beaucoup.



Il restait à porter tout cela dans les appartements des administrateurs de service. Et ce sont dix adresses dans différentes parties de Moscou: sud, est, centre, également Balashikha, qui est à 45 kilomètres du bureau (en passant, un stagiaire de Serpukhov a été ajouté plus tard). Il fallait en quelque sorte répartir tout cela entre les gens, pour construire la logistique.

J'ai conduit toutes les adresses sur nos cartes, il y a encore la possibilité d'optimiser l'itinéraire entre différents points (j'ai utilisé la version beta gratuite de l'outil pour les coursiers). Nous avons divisé notre équipe en quatre équipes indépendantes de deux personnes, chacune ayant son propre itinéraire. Ma voiture était la plus spacieuse, j'ai donc pris l'équipement pour quatre employés à la fois.



La livraison entière a pris un record de trois heures. Lundi, nous avons quitté le bureau à dix heures du soir. À une heure du matin, j'étais déjà à la maison. Cette même nuit, nous sommes partis en service avec de nouveaux équipements.

Quel est le résultat


Au lieu d'une grande console de diagnostic, nous en avons récupéré dix relativement portables dans l'appartement de chaque personne de service. Bien sûr, il restait à régler quelques petites choses. Par exemple, auparavant, nous avions un téléphone «en fer» de la personne de garde pour les notifications. Dans les nouvelles conditions, cela n'a pas fonctionné, nous avons donc mis au point des «téléphones virtuels» pour les personnes en service (en fait, des canaux dans le messager). Il y a eu d'autres changements. Mais l'essentiel est qu'en un temps record, nous avons réussi à transférer non seulement des personnes, réduisant le risque d'infection, mais tout notre travail à domicile sans nuire aux processus et à la stabilité des produits. Dans ce mode, nous travaillons depuis un mois.

Vous trouverez ci-dessous des photos des vrais emplois de nos préposés.










All Articles