Als Flipp, mein Arbeitgeber, zunächst als ein zerbrechliches, kleines Team begann, hatten wir nur eine Handvoll Systeme. Jeder Entwickler hatte den Kontext, den er brauchte, um mit diesen Systemen zu arbeiten, und die Fähigkeiten dazu (wir hatten ehrlich gesagt das Glück, die richtigen Fähigkeiten im Team zu haben). Dieselben Personen kümmerten sich um die Softwareentwicklung, Bereitstellung und Fehlerbehebung.

Als wir wuchsen, wuchs mit uns die Anzahl der Dinge, die wir bearbeiteten. Wir konnten nicht mehr ein oder zwei wirklich kluge Leute haben, die alles handhaben. Wir begannen uns in ein „Entwicklungs“-Team und ein „Infrastruktur“-Team (auch bekannt als Infra) aufzuteilen, um das abzuwickeln, was viele Leute als Betrieb bezeichnen.

Mit „Operations“ meine ich Aufgaben, die die eigentliche Produktionsinfrastruktur betreffen. In der Regel umfasst dies Folgendes:

Bereitstellung und Verwaltung von Servern, Speicher, Betriebssystemen usw.
Software bereitstellen
Überwachung, Alarmierung und Umgang mit Produktionsproblemen
Das funktionierte eine Zeit lang irgendwie. Aber wir stellten schnell fest, dass unser Infrastrukturteam, obwohl es viel über Linux und Firefighting wusste, immer weniger über die tatsächlichen Systeme wusste, die wir hatten und was sie taten, wenn diese Systeme erweitert und verändert wurden. Dies wirkte sich auf alle drei Betriebsaspekte aus:

Für die Versorgung wurde infra eher zum Gatekeeper und Engpass. Um sicherzustellen, dass sie die Anwendungsfälle verstanden, mussten die Teams mehrseitige Fragebögen bereitstellen und Synchronisierungsmeetings für neue Server durchführen. Der Prozess kann Wochen dauern.
Bereitstellungen wurden zu Stempeln für Code, den das Team bereits bereitstellen wollte. Das Infra-Team musste „die Person sein, die den Knopf drückt“, hatte aber keinen Einblick in die Bereitstellung.
Produktionsprobleme vervielfachten sich, weil infra die Systeme nicht verstand. Sie haben meistens nur das Team angerufen, wenn etwas schief gelaufen ist. Aufgrund der unterschiedlichen Fähigkeiten mussten die Infra- und Anwendungsteams Probleme oft gemeinsam beheben, was bei der Obduktion zu Fingerzeigen führte.
Etwas musste sich ändern. Und da haben wir unsere große Entscheidung getroffen.

Leave a Reply

Your email address will not be published. Required fields are marked *

Explore More

Verwenden von Low-Code-Tools, um Produkte schneller zu iterieren

January 29, 2021 0 Comments 0 tags

Im Jahr 2015 leitete ich ein Ingenieurteam bei einem Technologie-Startup in der Frühphase. Wir hatten eine frühe Version unserer Lehrbuchverleihplattform entwickelt, aber die Benutzerakzeptanz war langsam und die Verkaufszyklen sind

Warum wir Ceph gewählt haben, um Blockspeicher zu bauen

May 20, 2021 0 Comments 0 tags

Im Januar 2013 bot DigitalOcean als einer der ersten Cloud-Anbieter SSD-Speicher an. Mehrere Jahre lang stellte ein Teil der lokalen Laufwerke des Virtualisierungs-Hypervisors diesen Speicher für Droplets zur Verfügung. Dieser