Standortzuverlässigkeitstechnik
Standortzuverlässigkeitstechnik (Sre) ist eine Reihe von Prinzipien und Praktiken[1] das beinhaltet Aspekte von Softwareentwicklung und wendet sie auf Infrastruktur und Operationen Probleme.[2] Die Hauptziele sind zu erschaffen skalierbar und äußerst zuverlässig Softwaresysteme.[2] Site -Zuverlässigkeitstechnik ist eng mit dem verwandt mit DevOpsEine Reihe von Praktiken, die Softwareentwicklung und IT -Operationen kombinieren, und SRE wurde auch als spezifische Implementierung von DevOps beschrieben.[2][3]
Geschichte
Der Bereich der Standortzuverlässigkeitstechnik stammt aus Google mit Ben Treynor schleppend,[4][5] WHO Gründete ein Site -Zuverlässigkeitsteam, nachdem er 2003 in das Unternehmen eingetreten war.[6] Im Jahr 2016 beschäftigte Google mehr als 1.000 Site -Zuverlässigkeitsingenieure.[7] Nach der Ursprung von Google im Jahr 2003 breitete sich das Konzept in die breitere Softwareentwicklungsbranche aus, und andere Unternehmen nahmen anschließend mit der Zuverlässigkeit von Site -Zuverlässigkeiten ein.[8] Die Position tritt bei größeren Webunternehmen häufiger vor, da kleine Unternehmen häufig nicht in einer Skala arbeiten, für die dedizierte SREs erforderlich sind.[8] Organisationen Wer das Konzept übernommen hat, umfassen Airbnb, Dropbox, IBM,[9] LinkedIn, Netflix,[7] und Wikimedia.[10] Laut einem Bericht des DevOps Institute 2021 hatten 22% der Organisationen in einer Umfrage unter 2.000 Befragten das SRE -Modell übernommen.[11][12]
Definition
Standort -Zuverlässigkeitstechnik als berufliche Rolle kann von Solo -Praktikern oder in Teams organisiert werden Verfügbarkeit, Latenz, Leistung, Effizienz, Änderungsmanagement, Überwachung, Notfallmaßnahmen, und Kapazitätsplanung.[13] Site -Zuverlässigkeitsingenieure haben häufig Hintergründe in Softwareentwicklung, System Entwicklung, oder Systemadministration.[14] Zu den Fokussierungen des Site -Zuverlässigkeitstechnik gehören Automatisierung, System-Designund Verbesserungen an Systemresilienz.[14]
Standortzuverlässigkeitstechnik als eine Reihe von Prinzipien und Praktiken kann von jedem durchgeführt werden. Sre ist ähnlich wie Sicherheitstechnik In der Art und Weise, wie von irgendjemand zu guten Sicherheitspraktiken beiträgt, kann ein Unternehmen jedoch entscheiden, letztendlich Mitarbeiter für den Job zu machen. Umgekehrt können Unternehmen zur Sicherung von Internetsystemen Sicherheitsingenieure einstellen und ihre Zuverlässigkeitsziele definieren und sicherstellen, dass Unternehmen auch SRE einstellen.
Site Zuverlässigkeitstechnik wurde auch als spezifische Implementierung von DevOps beschrieben[2][3] Es konzentriert sich jedoch speziell auf den Aufbau zuverlässiger Systeme, während DevOps allgemein auf die Infrastruktur ausgerichtet ist.[2]
Stephen Gossett schrieb in Eingebaut Dass einige Unternehmen ihre Betriebsteams mit wenig bedeutungsvollem Veränderung in SRE -Teams umbenannt haben.[8] Dies gilt auch für Operations -Teams, die als DevOps -Teams bezeichnet werden.
Prinzipien und Praktiken
Es gab mehrere Versuche, eine kanonische Liste der Prinzipien für die Zuverlässigkeit von Standortzuverlässigkeiten zu definieren.[15][16] Obwohl der Konsens fehlt, sind die folgenden Merkmale normalerweise in den meisten solchen Definitionen enthalten:
- Automatisierung oder Eliminierung von etwas repetitiv, das auch kostengünstig ist zu automatisieren oder zu beseitigen.
- Vermeidung, viel mehr Zuverlässigkeit zu verfolgen als das, was ausschließlich notwendig ist. Das Definieren dessen notwendig ist eine Praxis für sich selbst (siehe Liste der Praktiken unten).
- Systemdesign mit einer Verzerrung zur Reduzierung von Risiken auf Verfügbarkeit, Latenz und Effizienz.
- Beobachtbarkeit wie in der Fähigkeit, in der Lage zu sein, willkürliche Fragen zu Ihrem System stellen zu können, ohne wissen zu müssen, was Sie stellen wollten.[17]
Die Praktiken zur Zuverlässigkeit von Site Zuverlässigkeit variieren ebenfalls stark, aber die folgende Liste wird zumindest teilweise implementiert:
- Mühemanagement als Umsetzung des oben beschriebenen ersten Prinzips.
- Definieren und Messen von Zuverlässigkeitszielen -Slis, SLOs, und Fehlerbudgets.
- Nichtabstrakt großes Systemdesign (Nalsd) mit Schwerpunkt auf Zuverlässigkeit.
- Entwerfen und Implementierung von Beobachtbarkeit.
- Definieren, Testen und Ausführen eines Incident Management Prozess.
- Kapazitätsplanung.
- Änderungs- und Freigabemanagement, einschließlich CI/CD.
- Chaos Engineering.
Implementierungen
Die Teams zur Zuverlässigkeit von Site Zuverlässigkeit beschäftigen sich mit den anderen Teams in ihren Unternehmen und den SRE -Prinzipien und -Praktiken in verschiedenen Formen. Hier finden Sie einen Überblick über gemeinsame SRE -Teamimplementierungen:[18]
Küchenspüle, a.k.a. "Alles sre"
Der Umfang der Dienste oder Arbeitsabläufe ist normalerweise unbegrenzt.
Infrastruktur
Konzentriert sich auf die Zuverlässigkeit von Systemen hinter den Kulissen, die dazu beitragen, die Jobs anderer Teams effizienter zu gestalten. Diese werden oft mit "Plattform" -Teams oder "Plattformoperationen" -Teams verwechselt. Die SRE -Teams in der Infrastruktur können sich mit einem oder mehreren Plattform -Engineering -Teams zusammenschließen. Sie unterscheiden sich jedoch in dieser Infrastruktur. Plattformteams konzentrieren sich in der Regel auf den Aufbau der Plattform und während die Zuverlässigkeit wünschenswert ist, ist dies nicht ihre einzige Priorität.
Werkzeug
Konzentriert sich auf Tools zur Messung, Aufrechterhaltung und Verbesserung der Systemzuverlässigkeit. Zum Beispiel Nagios Core.
Produkt oder Anwendung
SRE -Team für Produkt und/oder Anwendung. Einige große Unternehmen neigen dazu, mehrere davon zu besetzen.
Eingebettet
Normalerweise sind SRE Solo -Praktiker oder Paare in einem Software -Engineering -Team besetzt, um die meisten der oben beschriebenen Prinzipien und Praktiken anzuwenden.
Beratung
Wenden Sie sich an die Umsetzung von SRE -Prinzipien und -Praktiken. Dies sind normalerweise erfahrene SRES, die in einem oder mehreren der oben genannten Implementierungen in Teams gearbeitet haben. SREs über externe Beratungs -Beratungs -SRE -Teams werden häufig als "Kundenzuverlässigkeitsingenieure" bezeichnet. Sie ändern selten, wenn überhaupt, die Konfiguration oder den Code des Kunden.
Große Unternehmen, die SRE übernommen haben, haben in der Regel eine Kombination der oben beschriebenen Implementierungen, einschließlich mehrerer Teams derselben Implementierung, z. Mehrere Produkt-/Anwendungs -SRE -Teams, um die spezifischen Anforderungen mehrerer Produkte und eines Infrastruktur -SRE -Teams zu erfüllen, um sich mit einer Plattform -Engineering -Gruppe zu kombinieren, um die Zuverlässigkeitsziele einer gemeinsamen Plattform für sowohl Produkte/Anwendungen "zu erreichen.
Industrie
Das Usenix Die Organisation hat seit 2014 eine jährliche SRECON -Konferenz für Site -Zuverlässigkeitsingenieure in der Branche abgehalten und hält auch regionale Konferenzen mit ähnlichen Themen.[19]
Siehe auch
Verweise
- ^ "Bewerten Sie, wo Ihr Team im SRE -Spektrum liegt". Google Cloud Blog. Abgerufen 2021-06-26.
- ^ a b c d e Beyer, Betsy; Jones, Chris; Petoff, Jennifer; Murphy, Niall, Hrsg. (2016). Site Zuverlässigkeitstechnik: Wie Google Produktionssysteme ausführt. Sebastopol, CA: O'Reilly Media. ISBN 978-1-4919-5118-7. OCLC 945577030.
- ^ a b Vargo, Seth; Fong-Jones, Liz (1. März 2018). Was ist der Unterschied zwischen DevOps und SRE? (Klasse Sre implementiert DevOps) (Video). Google.
- ^ Hill, Patrick. "Liebe DevOps? Warten Sie, bis Sie Sre treffen". Atlassian. Abgerufen 17. Juni, 2021.
{{}}
: CS1 Wartung: URL-Status (Link) - ^ "Was ist Sre?". roter Hut. Abgerufen 17. Juni, 2021.
{{}}
: CS1 Wartung: URL-Status (Link) - ^ Treynor, Ben (2014). "Schlüssel zu Sre". Usenix SRECON14. Abgerufen 17. Juni, 2021.
{{}}
: CS1 Wartung: URL-Status (Link) - ^ a b Fischer, Donald (2. März 2016). "Sind Standortzuverlässigkeitsingenieure die nächsten Datenwissenschaftler?". Techcrunch. Abgerufen 17. Juni, 2021.
{{}}
: CS1 Wartung: URL-Status (Link) - ^ a b c Gossett, Stephen (1. Juni 2020). "Was ist ein Site -Zuverlässigkeitsingenieur? Was macht ein Sre?". Eingebaut. Abgerufen 17. Juni, 2021.
{{}}
: CS1 Wartung: URL-Status (Link) - ^ "Site Zuverlässigkeitstechnik". IBM Cloud Education. IBM. 12. November 2020. Abgerufen 21. Juni, 2021.
{{}}
: CS1 Wartung: URL-Status (Link) - ^ "Sre - Wikitech". wikitech.wikimedia.org. Abgerufen 2021-10-17.
- ^ Oehrlich, Eveline; Groll, Jayne; Garbani, Jean-Pierre (2021). Upskilling 2021 Enterprise DevOps SkillsReport (PDF) (Bericht). DevOps Institute. Abgerufen 17. Juni, 2021.
- ^ Oehrlich, Eveline (4. Mai 2021). "Was es braucht, um ein Site -Zuverlässigkeitsingenieur zu sein". TechBeacon. Micro Focus. Abgerufen 17. Juni, 2021.
{{}}
: CS1 Wartung: URL-Status (Link) - ^ Treynor, Ben. "In Konversation" (Interview). Interviewt von Niall Murphy. Google Site Zuverlässigkeitstechnik.
- ^ a b Jones, Chris; Underwood, Todd; Nukala, Shylaja (Juni 2015). "Einstellungsbetriebsballerungsingenieure" (PDF). ;Anmeldung:. Vol. 40, nein. 3. S. 35–39. Abgerufen 17. Juni, 2021.
- ^ "Die 7 SRE -Prinzipien [und wie sie in die Praxis umsetzen]". www.blameless.com. Abgerufen 2021-06-26.
- ^ "Bewerten Sie, wo Ihr Team im SRE -Spektrum liegt". Google Cloud Blog. Abgerufen 2021-06-26.
- ^ "Erfahren Sie mehr über Beobachtbarkeit | Wabe". docs.honeycomb.io. Abgerufen 2021-06-26.
- ^ "SRE bei Google: So strukturieren Sie Ihr SRE -Team". Google Cloud Blog. Abgerufen 2021-06-26.
- ^ "Usenix Srecon". Usenix. 2021. Abgerufen 17. Juni, 2021.
Weitere Lektüre
- Limoncelli, Tom; Chalup, Strata R.; Hogan, Christina J. (September 2014). Die Praxis der Cloud -Systemverwaltung: DevOps und SRE -Praktiken für Webdienste. Vol. 2. Upper Saddle River, NJ: Addison-Wesley. ISBN 978-0133478549. OCLC 891786231.
- Beyer, Betsy; Jones, Chris; Petoff, Jennifer; Murphy, Niall Richard, Hrsg. (2016). Site Zuverlässigkeitstechnik: Wie Google Produktionssysteme ausführt. O'Reilly. ISBN 978-1491929124.
- Blank-Edelman, David N., ed. (2018). Suchen Sie SRE: Gespräche über das Ausführen von Produktionssystemen im Maßstab (1 ed.). Sebastopol, CA: O'Reilly. ISBN 978-1491978863. OCLC 1052565720.
- Beyer, Betsy; Murphy, Niall; Kawahara, Kent; Rensin, David; Thorne, Stephen (2018). Das Arbeitsbuch zur Zuverlässigkeit von Site: Praktische Möglichkeiten zur Implementierung von SRE. O'Reilly. ISBN 978-1492029502.
- Welch, Nat (2018). Real-World SRE: Der Überlebensleitfaden zur Reaktion auf einen Systemausfall und die Maximierung der Laufzeit. Packt. ISBN 978-1788628884.
- Adkins, Oprea, Blankinship, Lewandowski, Stubblefield, Beyer, Heather, Ana, Paul, Piotr, Adam, Betsy (2020). Aufbau sicherer und zuverlässiger Systeme: Best Practices für das Entwerfen, Implementieren und Wartung von Systemen. O'Reilly. ISBN 978-1492083122.
{{}}
: Cs1 montiert: Mehrfachnamen: Autorenliste (Link) - Rosenthal, Jones, Casey, Nora (2020). Chaos Engineering: Systemresilienz in der Praxis. O'Reilly. ISBN 978-1492043867.
Externe Links
- Tolle Site Zuverlässigkeitstechnik Ressourcenliste
- Wie sie sich sre Ressourcenliste
- Sre wöchentlich Wöchentlicher Newsletter, der SRE gewidmet ist
- Sre bei Google Zielseite, um mehr über SRE in Google zu erfahren
- Komodor K8S Zuverlässigkeit Lernzentrum mit Ressourcen für SRES, die mit Kubernetes arbeiten