Wie kann das Vier-Augen-Prinzip für Notfallkorrekturen implementiert werden?


13

Betrachten Sie dieses Szenario (jeder Vergleich mit realen Situationen ist rein zufällig):

  • 3:07 Uhr : Eingehender Support-Anruf " Etwas in der Produktion ist ausgefallen, ich brauche Ihre Hilfe! ".
  • 3:12 Uhr : mit dem System verbunden (Anmeldung akzeptiert) ... und keine Zeit für Kaffee.
  • 3:15 Uhr : Glück gehabt, Sie könnten das Problem sofort über eine Fehlermeldung irgendwo erkennen.
  • 03:17 Uhr : Verwenden Sie Ihre SCM-Toolbox, um den Code abzurufen, das Problem zu beheben, zu testen, großartig ... mein Fix funktioniert!
  • 03:20 Uhr : Setzen Sie sich mit dem Dev Ops-Team in Verbindung, um das Update zu versenden und die Produktion wieder in Betrieb zu nehmen.
  • 3:21 Uhr : rote Flagge ... " Um zu respektieren , benötigen wir zwei weitere Augen, um die Genehmigung für dieses Update zu erhalten. "
  • 3:22 : ggggrrrreat, was nun, wen können wir noch anrufen (= einen Manager wecken)?

Wenn Sie ein Genehmigungsverfahren implementiert haben, das meiner Antwort auf " Was sind mögliche Implementierungen (oder Beispiele) des Vier-Augen-Prinzips? " Ähnelt, haben Sie kein Glück ... Sie haben folgende Möglichkeiten:

  • Ihr Fix wird stecken bleiben (zu lesen: Die Produktion wird eingestellt), bis zwei weitere Augen involviert sind.
  • Sie finden einen Weg, um die fehlenden Augen zu umgehen.

Wie lässt sich das Vier-Augen-Prinzip für Notfallkorrekturen implementieren? ... damit Sie die Produktion so schnell wie möglich in Betrieb nehmen können, dh um 3:25 Uhr .


Sie haben sich an ein Team gewandt , was bedeutet, dass es den Patch in Bezug auf die geltenden Genehmigungsgrundsätze bereits hätte segnen sollen. Ich
fange

@Tensibai wie kann man möglicherweise "einen Patch gesegnet" haben (oder reparieren), ohne zu wissen, was die Ursache des Problems war, als "Sie kontaktiert wurden"? Können Sie die Rhetorik genauer beschreiben? Keine gute Passform, sonst noch was?
Pierre.Vriens

Ich meine, Sie sagten, Sie könnten um 3:20 Uhr Kontakt mit dem Team aufnehmen, was bedeutet, dass Sie nicht nur die Lösung vorantreiben. Ich verwende Rhetorik als "hypothetischen Fall, basierend auf Erfahrung oder nicht, wo Sie bereits wissen, auf welche Antwort Sie warten". Mehr oder weniger meine Bedenken in Bezug auf Meta. Ich fühle mich alleine nicht interessiert von diesen allgemeinen Prinzipien. Ich bin mir sicher, dass ich nicht zweimal ein Q / A über generische Prinzipien besuchen werde, wenn ich ein Fremder dieser Beta wäre.
Tensibai

Ich kann dasselbe über die generischen Fragen von Jenkins sagen, wenn sie jetzt kommen
Tensibai,

Verpflichtungsermächtigungen werden erst in der öffentlichen Beta berechnet. Im Moment erstellen wir privat, was wir als "verpflichtete" Benutzer betrachten, exemplarische Fragen für diese Site, und ich denke, wir haben in den verbleibenden 12 Tagen viel zu tun, oder vielleicht auch nur
Ich

Antworten:


8

In der SCM-Welt, mit der ich am meisten vertraut bin, wird das obige Szenario in der Regel durch das sogenannte " Verfahren mit abgekürzter Genehmigungsliste " angesprochen.

Hier ist eine Blaupause davon:

  • Definieren Sie Ihre Geschäftszeiten, etwa von 8 bis 18 Uhr.
  • Definieren Sie eine vollständige Genehmigungsliste mit beispielsweise 3 Genehmigungsstufen (für die Rollen X, Y und Z).
  • Definieren Sie eine abgekürzte Genehmigungsliste mit beispielsweise nur 1 Genehmigungsstufe (nur für Rollen X).
  • Geplante Änderungen erfordern immer alle Genehmigungen aus der vollständigen Genehmigungsliste.
  • Bei ungeplanten Änderungen wird die vollständige Genehmigungsliste auch zum Sammeln der erforderlichen Genehmigungen verwendet, sofern die Genehmigungen während der festgelegten Geschäftszeiten ausgestellt werden sollen.
  • Für Genehmigungen von ungeplanten Änderungen , die außerhalb der festgelegten Geschäftszeiten herausgegeben werden sollen:
    • Nur die Genehmigungen aus der abgekürzten Genehmigungsliste (z. B. Rolle X oben) sind erforderlich, um die Änderung zu genehmigen. Nachdem die Autorisierung durch die abgekürzte Genehmigungsliste erfolgt ist, wird die Implementierung der Änderung (in der Zielumgebung) tatsächlich durchgeführt.
    • Aber zusätzliche Post -approvals wird danach benötigt werden (innerhalb einer angemessenen Menge der Stunden / Tage), dh aus allen Rollen in der vollständigen Zulassungsliste enthalten ist (wie Rolle Y und Z oben), die nicht auch in der abgekürzten Zulassungsliste enthielt (wie Rolle X oben). Und wenn innerhalb der (im Voraus) vereinbarten Anzahl von Stunden / Tagen nicht alle Nachgenehmigungen erteilt wurden (z. B. weil der Fix "diesmal" funktioniert hat, sondern nur wie ein vorübergehender Fix war), kann die Änderung einem Rollback unterliegen . Während mindestens eine ausstehende Nachgenehmigung vorliegt, wird die Änderung als "Wartende Nachgenehmigungen" markiert.

Mit einer solchen Lösung kann der Anruf gegen 3:23 Uhr geschlossen werden ... da es um 3:21 Uhr keine rote Fahne mehr gibt ... ggggrrreat, Zeit für ein Bier, um meinen Fix zu feiern und die Produktion wieder in Gang zu bringen (anstelle von Kaffee) ... und Daumen drücken, die ausstehenden Postzulassungen werden bald eintreffen ...


3

Im Falle von Notstandskorrekturen außerhalb der Geschäftszeiten ist es praktischer, für Änderungen weniger Abmeldungen als bei Ihrem normalen Verfahren zu verlangen. Im Allgemeinen können Sie einen Fix bereitstellen und dann am nächsten Geschäftstag Nachgenehmigungen durchführen. Wenn das Update nicht genehmigt wird, kann es zurückgesetzt und durch eine dauerhafte Lösung ersetzt werden.

Während eines Ausfalls sollte die Wiederherstellung des Dienstes oberste Priorität haben. Wenn Ihr Unternehmen diesen entspannten Prozess während eines Ausfalls nicht erkennt, können Sie nur mehr Personen für die Abmeldung wecken.


Ich stimme Ihrer Empfehlung zu, die meiner eigenen Empfehlung (Antwort) zu ähneln scheint. Können Sie sich ein Beispiel in der SCM-Welt vorstellen, mit dem Sie vertraut sind, und wie Sie es dort implementieren würden? Wenn ja, können Sie dies in Ihrer Antwort erläutern?
Pierre.Vriens
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.