Gentleman Sysadmin eingestellt

Ein Administrator ist die Person, ohne die nichts im IT-Unternehmen funktioniert. Und mit einem glücklichen und produktiven Administrator werden sich die Dinge besser und schneller bewegen, sodass eine angenehme Arbeitsatmosphäre das Anliegen des Unternehmens ist. In einem Bericht von Anton Turetsky ( Banuchka ) auf der Highload ++ 2017 wurde erläutert, mit welchen Tools ein Team produktiv werden kann.

Anton liebt Infrastrukturaufgaben und die Automatisierung von allem, was automatisiert werden kann. Seine Geschichte basiert auf dem Beispiel des Aufbaus einer Infrastruktur in einem Rechenzentrum und verwandten Technologien (Docker, Consul, Puppet ...). Aber Aspekte, die die Qualitätsarbeit beeinträchtigen und wie man sie löst, sind so universell wie möglich und für fast jedes Führungsteam geeignet. Deshalb bitten wir Sie um eine Kürzung für die Dekodierung dieses Berichts.



Badoo wächst jedes Jahr, hier einige Zahlen, die dies widerspiegeln: 350 Millionen Nachrichten pro Tag, 364 Millionen registrierte Benutzer weltweit, 300.000 neue Benutzer pro Tag. Dies ist jedoch alles andere als das Wichtigste. Für die Person, die bei Badoo arbeitet, ist die Hauptsache in erster Linie eine Denkweise und ein Team. Badoo ist eine Familie, es geht um Menschen und es ist cool!

Ich möchte mit einer Provokation beginnen, die jemand möglicherweise nicht unterstützt:

Der Administrator ist die Hauptperson im Unternehmen!

Ich denke, Sie werden mir zustimmen: Der Administrator ist die Person, ohne die nichts im Unternehmen funktionieren wird: Die Ausrüstung kommt zu ihm, er setzt das System ein, er weist neue Ausrüstung wieder zu. Deshalb glaube ich, dass er der wichtigste ist.



Ich werde ein Beispiel aus der persönlichen Praxis in Badoo geben. Beurteilen Sie diese Situation selbst: Wir hatten ein neues Projekt namens ReThink. Wir haben unser Logo aktualisiert: Die Schriftart und Farbe der Buchstaben wurde von mehrfarbig in lila geändert und ein Herz hinzugefügt - eintönig und cool. Aber die Admins wurden gewarnt, dass ReThink passieren würde - wir nehmen es einfach und wechseln es - wir warnten die letzte Nacht fast bevor wir nach Hause gingen. Und hier begann eine etwas unvorhersehbare Last in einem der Cluster zu treffen. Vielen Dank an die Person, die im Dienst war und dem Rest des Teams geholfen hat, zusätzliche Server zu finden und diese zu beenden. Das Projekt wurde tatsächlich gedreht, wir sind nicht gestürzt, normal ausgerollt und alle waren glücklich.

Zur Bestätigung meiner Worte möchte ich sagen, dass ein glücklicher und produktiver Administrator im Unternehmen unter anderem profitabel und interessant für das Unternehmen ist. Ich möchte alle Unternehmen bitten, ihre Admins glücklich zu machen . Dann wird es dir gut gehen!



Lassen Sie uns darüber nachdenken, was den Administrator traurig macht . Vielen wird auffallen, dass der Administrator von einem abgestürzten Server und verlorenen Backups traurig ist. Dies ist alles wahr, aber wenn der Administrator jedes Mal nachdenken und traurig werden würde, wenn er etwas falsch gemacht hat - und er jeden Tag etwas falsch macht -, hätte er nicht genug Nerven.

Daher bezeichne ich das Problem, das ein bestimmter menschlicher Faktor ist, nämlich das Umschalten des Kontexts.

Kontextwechsel


Es gibt eine ziemlich große Anzahl von Studien darüber, was passiert, wenn eine Person abgerissen wird und warum es schlecht ist. Eine der letzten guten Studien ist die Arbeit von Chris Parnin , einem Fellow an der Georgia University of Technology. Er sammelte eine Reihe verschiedener Daten zu diesem Thema und machte viele Schlussfolgerungen, von denen die wichtigsten sind:

Eine Person, die von der Arbeit an einer Aufgabe gerissen wurde, benötigt 10-15 Minuten, um zu dieser zurückzukehren.

Dies ist eine durchschnittliche Zahl. Jemand kann mehr haben, jemand weniger, abhängig von der Umschaltung. Mit einer einfachen Ergänzung können Sie feststellen, dass, wenn Sie 4-5 Mal in einer Stunde von etwas abgelenkt wurden, wahrscheinlich eine ganze Stunde Arbeitszeit verloren geht und Sie Ihren Job wahrscheinlich nicht erledigen werden.

Dies ist eine Theorie - eine untersuchte Person kam zu Schlussfolgerungen. In der Praxis waren Sie wahrscheinlich mit dieser Situation konfrontiert: Sie kommen zur Arbeit, haben den ganzen Arbeitstag in Alkohol verbracht - haben den ganzen Tag alles getan, hatten keine Zeit zum Mittagessen, haben die Sofortnachrichten und die Post nicht beantwortet. Am Ende des Arbeitstages werden Sie alle gefoltert. Es scheint Ihnen, dass Sie viel von allem getan haben. Aber im besten Fall stellen Sie am Abend fest, dass Sie noch nicht einmal die Hälfte von dem getan haben, was Sie für den Arbeitstag geplant haben. Schlimmer noch, wenn ein Manager oder Kollege auf Sie zukommt und fragt: "Was haben Sie heute getan?" und du verstehst, dass du gerannt bist , gerannt bist, gerannt bist - aber am Ausgang ist nichts .

Dies liegt in vielerlei Hinsicht daran, dass wir unseren Kontext wechseln und uns nicht auf die Aufgabe konzentrieren können. Für den Administrator - einen einfachen Darsteller - ist dies so.

Aber es gibt immer noch Manager / Teamleiter und die Kehrseite. Das Hauptmerkmal von Teamleitern ist, dass sie wie Maniacs diesen Kontextwechsel nicht überleben können, sondern manchmal sogar erhöhen, um ihn später zu reduzieren. Das heißt, sie konzentrieren sich mehrere Stunden lang auf viele Besprechungen mit diesem Schalter und ruhen sich dann abends aus, um an einer Aufgabe zu arbeiten. Die Schaltfähigkeit kann so weit entwickelt werden, dass es nur 5 Minuten dauert, um in eine neue Aufgabe einzutauchen. Das ist sehr cool und für die Tatsache, dass sie wissen, wie es geht, können Manager geschätzt und respektiert werden. Für den Administrator und den Darsteller ist es jedoch besser, die Schalter loszuwerden .

Deckkraft verarbeiten


Das zweite wichtige Problem ist die Opazität der Prozesse, die in zwei Zonen unterteilt werden kann:

  1. Opazität der Prozesse im Team ;
  2. Opazität von Prozessen außerhalb des Teams .

Innerhalb des Teams können wir Folgendes beeinflussen: Mängel oder mangelnde Koordination zwischen den Teammitgliedern. Das Schlimmste, zu dem die Undurchsichtigkeit von Prozessen innerhalb eines Teams führen kann, ist Doppelarbeit . Im Prinzip ist dies nicht schlecht, abgesehen von der Tatsache, dass Sie höchstwahrscheinlich die Arbeitszeit eines der Mitarbeiter verlieren.

Hier können Sie die Profis finden und sagen: „Vielleicht hat Vasya es besser gemacht als Petya! Treffen wir seine Entscheidung. “ Aber sie konnten miteinander reden, und jemand würde eins tun. Es ist wichtig.

Wenn sich nicht transparente Prozesse außerhalb des Teams befinden, zum Beispiel insgesamt etwas Unverständliches im Unternehmen passiert, kann dies innerhalb des Teams zu einer falschen Priorisierung von Aufgaben führen.



Zum Beispiel kam ein Entwickler aus dem mobilen Web zu mir und sagte, dass es für ihn wichtig ist, einen Dienst zu finden, der heute etwas für die neue API bietet. Ich habe viele andere Aufgaben, und es scheint mir überhaupt nicht, dass seine Aufgabe Priorität hat. Er hat eine Woche auf seine Freilassung gewartet, er wird noch zwei Tage warten, ich werde es später tun. Für Unternehmen ist dies nicht immer der Fall. Wenn ein Team von oben zu uns kommt, dass die aktuelle Aufgabe eine hohe Priorität hat, weil sie Teil einer sehr großen nächsten Aufgabe ist, ist es wichtig, dass dies nicht einmal vom Manager vermittelt wird, sondern dass jedes Mitglied des Teams dies einfach ohne weiteres versteht .

Aus Sicht des Darstellers und des Administrators möchte ich heute meine Geschichte aufbauen, um diese beiden Hauptprobleme innerhalb des Teams zu lösen. Ich werde darüber sprechen, wie wir verschiedene Regeln gefunden haben, um den Kontextwechsel zu minimieren und Prozesse so transparent wie möglich zu gestalten .

So lösen Sie das Problem der Kontextumschaltung


Der Administrator kam zur Arbeit, trank eine Tasse Kaffee, las die Post, Backups funktionierten, nichts fiel - sitzen, arbeiten, was stören kann.

Betrachten Sie die übliche Situation. Der Mann kam frisch, alles ist in Ordnung, er öffnete seine Arbeitsgeräte, schrieb in einem Chat und in der Post, und dann klingelte das Telefon - sie fragten, was nachts gefallen war - er war abgelenkt. Dann hat die Frau oder das Mädchen ein cooles Foto gepostet - Sie müssen rein und raus, und auch Facebook bewegt sich. Hier kommen Freunde, um das gestrige Fußballtreffen zu besprechen. Sie rufen mich abends an, um Bier oder jetzt Tee zu trinken. Und das alles kommt nach und nach zu einem Menschen von allen Seiten .



Was tun mit diesem Problem? Wir haben einen Menschen, da ist sein allgemeines soziales Leben, da ist sein Arbeitsaspekt. In diesem Fall können wir nur das Teil berücksichtigen und optimieren, das sich auf seine Arbeitswerkzeuge bezieht. Wir können ihm nicht verbieten, nach der Arbeit Bier zu trinken oder soziale Konten zu benutzen, weil wir doch nicht im Gefängnis sind.

Aus diesem Grund haben wir uns entschlossen zu prüfen, über welche Art von Arbeitstools der Administrator verfügt, woher er häufig stammt und was wir tun können, um dies zu reduzieren.

Die erste Idee ist ziemlich seltsam, aber wir haben es versucht - dem Administrator zu erlauben, den Chat einfach nicht zu verwenden , weil viele Leute in den Chat schreiben. Sie arbeiten an einer Aufgabe, und einer hat Ihnen geschrieben, dass dies für ihn wichtig ist, der andere - dass es für ihn wichtig ist. Und wir haben den Admins erlaubt, keinen Chat zu benutzen - nicht zu antworten und dort nichts zu schreiben.

Die Idee kam natürlich nicht auf, denn Chat ist nicht nur das, was Sie im Chat lesen müssen, sondern auch der schnellste Weg, um zu kommunizieren. Sie müssen nur dort schreiben. Nur eine Woche später wurde klar, dass die Idee utopisch war. Wir beschlossen, sie aufzugeben und gingen weiter.



Wir haben eine teilweise seltsame Entscheidung getroffen - wir haben ein Mitglied des Teams ausgewählt und ihm gesagt: „Alter, du wirst ein bedingter Anführer sein! Dies ist keine Beförderung, Sie wissen nur viel darüber, welcher Ihrer Kollegen in welchem ​​Bereich gut ist, Sie kennen den allgemeinen Aufgabenstrom und mehr oder weniger über Prioritäten. Komm schon, du wirst nach dem folgenden Szenario arbeiten. Es gibt einen Pool von Aufgaben, die auf alle Administratoren im Team fallen. Sie sehen, wer mit was beschäftigt ist, Sie wissen, wie die Fristen für die Aufgabe sind, und Sie können sie jederzeit der Person geben, die sie so schnell wie möglich erledigen kann. oder, wenn viel Zeit für die Ausführung bleibt, können Sie sie dem Junior zuweisen. Junior muss grundlegende Dinge erzählen, aber du weißt, wenn sie ihm helfen, wird er gepumpt und alles wird cool. “ Im Prinzip ist die Idee ziemlich robust.

Einer der Gründe, warum sie nicht ganz reingegangen ist, ist, dass wir alle Admins gerne daran arbeiten, was sie mögen. Wir können Aufgaben erledigen, wenn alles in Flammen steht und wir müssen es tun - wir verstehen nicht, wir nehmen und tun, egal wer. Eine andere Sache ist, wenn Sie die Wahl haben: "Ich arbeite gerade an einer Aufgabe und möchte die Replikation in MySQL konfigurieren. Ich möchte Puppet nicht berühren - lassen Sie es jemand anderes tun."

Die Leute fingen an zu burgeln, für einige gibt es nur wenige Aufgaben, für viele gibt es, für einige Leute werden sie uninteressant - etwas so Unverständliches und Unerklärliches. Vielleicht war dies unsere Fehleinschätzung, aber dieser Ansatz hat nicht funktioniert.

Etwa zur gleichen Zeit versuchen wir, den Schiedsrichter mit einer anderen Pflicht zu belasten. Für das Admin-Team sind andere Teams damit beauftragt, etwas zu tun - Sichern, Wiederherstellen usw. Eine Person mit einer solchen Anwendung ist in der Tat ein Kunde und wartet immer auf Feedback. Wenn er nach dem Festlegen einer Aufgabe feststellt, dass die Aufgabe im allgemeinen Pool vom Status "nicht zugewiesen" auf "zugewiesen" für einen bestimmten Executor umgestellt wurde, sind 2-3 Stunden vergangen, ein Arbeitstag, ein anderer, und die Aufgabe hat keine Beats. Dies ist überhaupt nicht klar mit seiner Aufgabe beschäftigt oder nicht.



Es gibt Administratoren, die ihre Aufgaben nicht wirklich gerne in Form von Korrespondenz erledigen. Daher muss der Schiedsrichter jetzt mit jedem Mitglied seines Teams Einzelkundgebungen vereinbaren, fast jede Aufgabe durchführen, fragen, ob es Schwierigkeiten bei der Aufgabe gibt, wie er helfen kann, und die alle 1-2 Tage gesammelten Informationen zusammenfassen .

Aufgaben wurden irgendwie ausgeführt. Aber alles kam zum Stillstand, weil unser aktueller Schiedsrichter einfach so viel Wissen vergraben hat . Um etwas für Sie zusammenzufassen, müssen Sie jeden Themenbereich verstehen, überlegen, in welchem ​​Stadium sich ein Mitarbeiter befindet, was ihn aufhält, und dies schreiben. Wenn es viele solcher Aufgaben gibt, hört der Schiedsrichter einfach auf, etwas zu schreiben, und die Aufgaben werden nicht mehr auf die gleiche Weise ausgeführt. Daher war es notwendig, weiterzumachen und etwas wieder zu ändern.

Eisenhower-Matrix




Möglicherweise haben Sie diese Matrix bereits gesehen. Sie kennen den Namen nur nicht. Unter dem Strich teilen wir das Aufgabenblatt nach zwei Parametern in vier Teile:

  1. dringend / nicht dringend;
  2. wichtig / nicht wichtig.

Wir werfen einfach alle unsere Aufgaben in dieses wunderbare Tablet und beginnen zu arbeiten.

Es ist sofort erwähnenswert, dass Zelle B , die für den Darsteller am produktivsten und bequemsten ist, eine wichtige und nicht dringende Aufgabe ist. Dies ist eine großartige Motivation für eine Person, wenn Ihre Aufgabe entweder für das Team, für das Projekt oder nur für Sie wichtig ist. Sie verstehen, dass Sie nicht nur an einer Art Unsinn arbeiten, sondern auch daran, was die Leute verwenden werden, und dies ist ein Anreiz. Das Plus an Dringlichkeit ist, dass Sie sich selbst überlassen bleiben. Haben Sie Zeit zum Lesen, Testen und Berechnen?

Wir saßen da, dachten nach und kamen auf die Idee, alle Aufgaben, die in die Betriebsabteilung kommen, zu trennen, und Formatierungsaufgaben sind nicht sehr wichtig und nicht sehr dringend, um sie in ein separates Projekt zu trennen, das wir ITGROOVE nannten. Hier haben wir Aufgaben aufgenommen, die in Zukunft vielleicht eines Tages wirklich zu einem Problem werden, aber jetzt sind sie kein Problem, und es wäre schön, sie in absehbarer Zukunft zu erledigen - ein oder zwei Wochen.

Danach haben wir die Funktion des Tagesdienstadministrators eingeführt, deren Kern wie folgt ist. Wir haben die erste Linie der Unterstützung und Reaktion auf Notfalloperationen und Auslöser, die Überwachung. Wenn sie das Problem nicht bewältigen kann und entscheidet, was eskaliert werden muss, ist die erste Person, die tagsüber an der Lösung dieses Problems beteiligt ist, der Tagesdienstadministrator.

Wenn ich Ihnen vorher gesagt habe, dass wir den Einfluss des Kontextwechsels loswerden, werfen wir hier einfach eine Person auf die Embrasur und fordern alle auf, alles hintereinander zu tun, so schnell wie möglich zu wechseln.

Tatsächlich ist dies nicht ganz richtig, da der diensthabende Tagesadministrator die folgenden Aktionen ausführt: Entweder eskaliert das Problem und leitet es an den besten Spezialisten in dem jeweiligen Themenbereich weiter, der derzeit verfügbar ist, oder er behebt das Problem fast automatisch. Dies ist keine mentale Aktivität - wecke eine Person nachts, sie wird gehen und sie reparieren.

Als zusätzlichen Bonus boten wir dem Tagesdienstoffizier an, an dem ITGROOVE-Projekt zu arbeiten, wenn er nichts zu tun hatte und gelangweilt war. Die Person deckt nicht nur den Rest des Teams ab , sondern erledigt auch unwichtige und nicht dringende Aufgaben!

Durch die Einführung der Rolle des Tagesdienstleiters und die Aufteilung der Aufgaben in völlig unwichtige und projektbezogene Aufgaben haben wir dem Rest des Teams ermöglicht, in der bequemsten Zone B an nicht dringenden, aber wichtigen Aufgaben zu arbeiten. Die Leute sind gerade aus Punkt A herausgekommen, haben sich umgesehen und es gibt Punkt B - und ich fühle mich wohl und alle sind glücklich - es ist cool! Wir werden arbeiten!

Ich werde die Aufgaben von Punkt C nicht außer Acht lassen. Es klingt irgendwie wahnhaft: „Dringend, aber nicht wichtig“ - entweder dringend oder nicht wichtig. In unserem Fall findet normalerweise keine Arbeit in diesem Segment statt. Aufgaben mit den Kriterien „nicht wichtig, aber dringend“ werden entweder „nicht wichtig und nicht dringend“ oder verschwinden einfach, und wir arbeiten nicht daran.



Da ich die Tatsache angesprochen habe, dass wir die Rolle eines diensthabenden Tagesadministrators eingeführt haben, gehen wir kurz auf die Administratoren ein, die wir im Allgemeinen haben:

  1. Der Administrator ist normal. Im Prinzip macht jeder immer alles, aber der normale Administrator arbeitet hauptsächlich an Aufgaben in Jira.
  2. Der diensthabende Tagesadministrator geht hauptsächlich ans Telefon und eskaliert von der Überwachung.
  3. Der diensthabende Nachtadministrator - eine Mischung aus normalen und Tagesadministratoren - beantwortet Anrufe und Eskalationen nachts und arbeitet tagsüber als normaler Administrator.

So machen Sie Prozesse transparent


Die Komplexität unseres spezifischen Teams liegt in der Tatsache, dass sich ein Teil davon in London befindet, der andere in Moskau. Dies ist eine ziemlich große Verschiebung der Zeitzonen. In Moskau beginnen die Jungs viel früher zu arbeiten, in London kommen sie gerade zur Arbeit und haben bereits etwas getan. Im Gegenzug machen wir im Londoner Büro, das am Abend fertig ist, einige andere Dinge, die die Leute in Moskau nicht wussten, als sie nach Hause gingen. Um die Prozesse innerhalb des Teams zu koordinieren, veranstalten wir eine wöchentliche Rallye am Montag.



Es sieht so aus:

  • Wir belegen einen Tagungsraum in Moskau, einen in London.
  • Außerdem ist die Zeit so eingestellt, dass sie in London gerade zur Arbeit kamen und in Moskau bereits vom Mittagessen zurückkehrten. Jeder braucht ungefähr 40 Minuten, um sich auf einen Arbeiter einzustellen. Deshalb versammeln wir uns in einer informellen Atmosphäre im Fernsehen, nehmen einen Agenten und beginnen zu diskutieren.
  • Dies ist eine Viele-zu-Viele-Diskussion. Wir erzählen uns gegenseitig, welche wichtigen Projekte wir durchgeführt haben, was wir erwarten, was wir vorhaben, vereinbaren Termine für einander.

Das Problem ist jedoch, dass irgendwo am Dienstagabend oder am Mittwochmorgen die Koordination etwas verloren geht . Ich habe zum Beispiel angefangen, an einer Aufgabe zu arbeiten, bin beiseite getreten, ich habe verschiedene Aufgaben für diese Woche, etwas Ähnliches passiert für einen Kollegen aus Moskau. Wir werden bis nächsten Montag, bis zur nächsten Auktion, nicht synchron sein - es muss etwas getan werden.

Statusheld


Es gibt ein cooles Tool namens Status Hero . Das Wesentliche ist, dass Sie bei der Arbeit bestimmte Aufgaben für sich selbst planen. Status Hero hat 3 Felder zum Ausfüllen. Darüber hinaus ist dies kein obligatorisches Tool, wir können es nicht ausfüllen und nicht verwenden.



Der Trick ist folgender: Ich bin frisch zur Arbeit gekommen und weiß, dass ich heute einige DNS-Probleme beheben, in Prometheus zurückgesetzte Metriken konfigurieren, sehen möchte, wie die neuen Diagramme funktionieren, und möglicherweise aktuelle Aufgaben schließen möchte. Ich füge das alles in den Plan für heute ein.

Aber eine Zeile flackert über meinen Plan für heute, die besagt, dass Sie sich gestern versprochen haben, dies zu tun, und kommen Sie, Sie schreiben zuerst, was Sie gestern getan haben, aus dem, was Sie versprochen haben, und dann, was Sie tun werden heute.



Es gibt auch einen wunderbaren dritten Punkt. Dieses Feld soll einige externe Ereignisse anzeigen , die die Ausführung von Aufgaben blockieren . , - , — , , , — . - , , , . , , .



. HipChat, , - , . , , . - , , . Das ist cool!

Status Hero ?




  1. , . , , , , , . Status Hero : « — !» , , , .


  2. , . , , , , , , , - , : «, . , , , . ».



  3. , , - , , . , - , .

Status Hero


, Status Hero , . , , .

, , , , - . , , , , , , — . , .

, , . Status Hero, Wiki , , Confluence, , . , , , .

. , Status Hero .

Team Contribution


HighLoad++ Review Badoo . , , : , . , .

— — . . Review , , . , , , - .

Review , snippets . , .



, , , , , , , . , , 3 . daily snippets — , , , — , , .

Status Hero. , . , , — , .



, , : Status Hero , , , , . , , .

,

« , — »
.



, Status Hero , , Badoo. , .



, , . , . , , , . , -.

, , , , . , .



, , -, xCAT.



, , , Puppet — , Consul , Docker, glpi, . , .

- , .



, . -, . , , Raid, , .

xCAT , PXE dhcp . , dns , . , — — mac — IP , , .

, xCAT , . - Kernel Panic, . xCAT , -, , , , . - — 100 , -, . - , , SN . xCAT SN .

, , xCAT, -, , , dhcp , , , dhcp helper .

, , , , .

Docker


, Docker — . Docker , - .



Docker , , registry , , . , Docker , registry Badoo , . , Ceph Swift API .

, registry, Redis . HTTP , Docker distribution , , , docker-registry Redis endpoint Ceph.

HTTP nginx, SSL, basic Auth. , registry , pull push.

Consul


- Consul, , , service discovery Badoo, service discovery .

, Consul -, , . , 3 master- -.

, - Consul?

Puppet




Werfen wir einen Blick auf unsere wunderbare Puppet-Infrastruktur.

Das Wesentliche von Consul ist, dass wir die Infrastruktur von oben nach unten erhöhen (wenn Sie sich die Folie oben ansehen):

  • Für den Einstieg benötigen Sie PostgreSQL, das wiederum für PuppetDB benötigt wird.
  • Wenn wir PostgreSQL auslösen, registrieren wir es in Consul. Wenn wir PuppetDB aktivieren, nehmen wir vom Konsul Informationen über PostgreSQL, stellen eine Verbindung dazu her und geben die Informationen über PuppetDB an den Konsul zurück.
  • Als nächstes erhöhen wir die erforderliche Anzahl von Puppet-Server-Knoten in Java. Wir nehmen Informationen für sie vom Konsul entgegen, wir stellen Informationen über sie in den Konsul.
  • In der letzten Phase erhöhen wir den Lastausgleich auf nginx, das sich mit der SSL-Terminierung befasst und 3 Ports bedient:
    1. Port für direkte Marionettenagenten;
    2. Port für Puppet DB;
    3. Port für Statistiken.

Alle anderen Clients durchlaufen den Lastausgleich.

GLPI


Wir haben so etwas wie glpi, es ist für jedes Rechenzentrum notwendig. Alles ist ziemlich ungeschickt und einfach - dies ist ein Service für die Bestandsaufnahme .



Es funktioniert wie folgt:

  • Auf jedem Server wird ein einfacher FusionInventory Agent gestartet , der alle Informationen zu Hardware, Software, Virenschutzprogrammen und Dateisystemen sammelt - alles hängt von den Einstellungen ab. Wir sind normalerweise an allen Arten von "Eisen" -Indikatoren interessiert: wie viel Speicher, welche Festplatten, Controller, Cache usw.
  • Diese Informationen werden in einem bestimmten Zeitintervall (in unserem Fall einmal täglich) an einen bestimmten PHP-Endpunkt gesendet, in dem Daten verarbeitet und an die glpi-Datenbank übertragen werden.

Ein weiterer Vorteil der Verwendung von GLPI und FusionInventory besteht darin, dass wir nicht nur Serverhardware, sondern auch Netzwerkgeräte inventarisieren können, um Informationen darüber zu erhalten, welche Ports verfügbar sind und auf welcher Geschwindigkeit sie sich befinden und vor allem, welcher Server mit welcher Seriennummer sich befindet in welchem ​​Rack, verbunden mit welchem ​​Netzwerkknoten und mit welchen Ports. Das Ergebnis all dieser Aktionen ist eine Webseite, auf der Sie alle diese Informationen anzeigen können.

Wir haben 5 Tools untersucht, die in unserem Wiki beschrieben wurden. Unser hypothetischer Administrator hat sie sich angesehen und nicht mehr als 3-5 Container für jeden gestartet - die Infrastruktur ist bereit. Wir haben ein Haus glücklicher Menschen, die produktiv arbeiten: Eine Aufgabe wurde umrissen, andere halfen ihm, im Großen und Ganzen haben wir so etwas kennengelernt, gelesen und aufgehoben.



In Badoo gibt es mehr solche Männer mit Bällen im Admins-Team, aber wir sind produktiv und auf jeden Fall größtenteils glücklich . Wir haben es geschafft, unser Team aus freundlichen Fachleuten zusammenzustellen, weil wir drei Probleme identifizieren und lernen konnten, mit ihnen umzugehen.

Also, was ist für die Darsteller notwendig (es scheint mir nicht nur für den Administrator):

  • Reduzieren Sie die Kontextumschaltung . Lassen Sie die Person arbeiten - wenn sie ein Technikfreak ist, lassen Sie sie sitzen und arbeiten, reißen Sie sie nicht weg!
  • Prozesse transparent machen. Wenn Sie Termine überschreiten und der Verdacht besteht, dass etwas Aufgaben nicht priorisiert, geben Sie dem Team Informationen darüber, warum eine bestimmte Aufgabe wichtig ist. Eine Person muss über ihren Monitor hinaussehen und wissen, dass ihre Teilnahme am Projekt wichtig ist. Dann wird er anders arbeiten, er wird die Dringlichkeit und Nützlichkeit seiner Arbeit verstehen.
  • Schreiben Sie eine gute Dokumentation. Darüber hinaus ist es gut, wenn diese Dokumentation in verschiedene Teile unterteilt ist. Es kann detailliert und tief sein, wenn Sie sich kennenlernen und graben möchten. Gleichzeitig sollten Sie jedoch einen Auszug über den Dienst oder die Dienstleistung haben, der auf einer Seite platziert ist und eine Reihe von 5-6 Aktionen enthält, die vor der Eskalation ausgeführt werden müssen. Darüber hinaus ist die Dokumentation wichtig, um immer auf dem neuesten Stand zu sein.

Wenn Sie die Transparenz der Arbeit in der Abteilung erhöhen, wird das Problem der Aktualisierung der Dokumentation von selbst gelöst, da Sie sehen, welche Iterationen stattfinden, und ständig gefragt werden: "Aktualisieren, aktualisieren, aktualisieren".

Referenzen


Dies sind Links zu verschiedenen Studien zum Thema Kontextwechsel, wie man kompetent arbeitet, wie man nicht abgelenkt wird und mehr tut, sowie Links zu allen Produkten, über die ich gesprochen habe, die die Grundlage und Unterstützung eines der Badoo-Rechenzentren bilden.


Die sibirische Version der Konferenz für Entwickler von Hochlastprojekten Highload ++ Siberia startet am Montag und dauert den 25. und 26. Juni . Darin wird Anton mit dem Badoo-Betriebsteam über die Entwicklung von Tools und Services sprechen, die im Einsatz sind.

Weitere 30 anerkannte Experten und Vertreter von Branchenführern werden ihre Best Practices vorstellen und ihre Erfahrungen austauschen - siehe Programm .

Source: https://habr.com/ru/post/de414749/


All Articles