Was ist Reliability Engineering?

Abgeschlossen

Site Reliability Engineering (SRE) versetzt Softwareentwickler in die Lage, den fortlaufenden täglichen Betrieb ihrer Anwendungen in der Produktionsumgebung selbst zu steuern. Das Ziel besteht darin, die Lücke zwischen dem Entwicklungsteam, das fortlaufend liefern muss, und dem Betriebsteam, das für die Zuverlässigkeit der Produktionsumgebung verantwortlich ist, zu schließen. Site Reliability Engineering verlagert die Verantwortung für die Zuverlässigkeit in der Produktionsumgebung auf den SRE im Entwicklungsteam.

Site Reliability Engineers verbringen typischerweise bis zu 50 % ihrer Zeit mit den täglichen Aufgaben, die die Zuverlässigkeit der Anwendung sicherstellen, und den Rest ihrer Arbeitszeit mit der Entwicklung von Software.

Eine Schlüsselqualifikation eines Site Reliability Engineers (SRE) ist, dass er umfassende Kenntnisse zur Anwendung aufweist. Dazu gehören Kenntnisse über den Code, wie die Anwendung ausgeführt wird, wie sie konfiguriert ist und wie sie skaliert werden kann.

Einige der typischen Aufgaben eines Site Reliability Engineers sind:

  • Proaktive Überwachung und Überprüfung der Anwendungsleistung
  • Behandeln von Bereitschaftsdienst und Notfallsupport
  • Sicherstellung, dass die Software über eine angemessene Protokollierung und Diagnose verfügt
  • Erstellen und Verwalten von operativen Runbooks
  • Unterstützung bei der Selektierung eskalierter Supporttickets
  • Arbeiten an Featureanforderungen, Fehlern und anderen Entwicklungsaufgaben
  • Beitragen zur allgemeinen Produktroadmap
  • Durchführen von Überprüfungen der Livewebsite und Erfassen von Feedback für Systemausfälle

Site Reliability Engineering und DevOps

DevOps sorgt für eine intakte Arbeitsbeziehung zwischen den Betriebsmitarbeitern und dem Entwicklungsteam. Durch das Aufteilen der Silos zwischen den beiden Produkten erzeugt DevOps ein robusteres, zuverlässigeres Produkt.

Sowohl SRE als auch DevOps sind Methoden, die das Bedürfnis einer Organisation nach einem Weg zur Verwaltung der Produktionsumgebung behandeln. Wie Sie in den vorherigen Modulen erfahren haben, können DevOps-Feedbacksysteme Probleme identifizieren und die Entwickler warnen, die dann das Problem lösen. Bei SRE sucht eine Person aus dem Entwicklungsteam täglich nach Problemen bei der Standortzuverlässigkeit. Dies ist wahrscheinlich auch die Person, die diese Probleme behebt. Während DevOps-Teams in der Regel die Produktionsumgebung unverändert lassen würden, wenn es nicht unbedingt notwendig ist, werden SREs wahrscheinlich Änderungen vornehmen.

Qualifikationen für das Site Reliability Engineering (SRE)

Welche Arten von Qualifikationen erforderlich sind, hängt von der Anwendung, der Bereitstellung (Vorgehensweise und Position) und der Art der Überwachung ab. Organisationen, die serverlose Technologien verwenden, benötigen z. B. keine Personen mit fundierten Kenntnissen in der Windows- oder Linux-Systemverwaltung. Diese Qualifikationen sind jedoch entscheidend für Teams, die Server für die Bereitstellung verwenden.

Weitere Schlüsselqualifikationen für einen guten SRE liegen in der Anwendungsüberwachung und -diagnose. Ein SRE sollte Erfahrung mit Verwaltungstools für die Anwendungsleistung wie Application Insights haben. Sie sollten auch die bewährten Methoden der Anwendungsprotokollierung und der Ausnahmebehandlung verstehen.