Bericht: Knight Capital Glitch ausgelöst durch ruhende Software Knight Capitalrsquos Handel Glitch, die es verursacht Verluste von etwa pound281 Millionen zu leiden, wurde durch die versehentliche Reaktivierung von alten Computer-Software, nach den Menschen vertraut mit der Angelegenheit ausgelöst. Am 1. August. Knight zeigte, dass es ein Problem mit seiner Handelssoftware erlebt hatte, was dazu führte, dass es zahlreiche fehlerhafte Aufträge in NYSE notierte Wertpapiere auf den Markt schickte. Es hat seitdem gesagt, dass ldquothe Software aus dem companyrsquos systemsrdqu entfernt worden ist. Nach Berichten über Bloomberg, sobald das ruhende System reaktiviert wurde begann es, Aktienhandel um eintausend zu multiplizieren. Außerdem mussten die Mitarbeiter von Knightrsquos acht verschiedene Sätze von Software durchforsten, bevor sie die Ursache des Problems feststellen konnten. Knightrsquos massiven Verlust an Kapital führte zu einem Konsortium von Wall-Street-Unternehmen, die etwa 400 Millionen (pound256 Millionen) in das Unternehmen zu injizieren in einem Versuch der Rückseite der Schäden durch die Störung verursacht. NYSE: Trades wird auf Knight Capital IT-Plattform nächste Woche NYSE zieht Trades von Knight Capital IT-Plattform zu Rivalen nach Software-Glitch Die konvertierbare Aktienplatzierung Vereinbarung, die die Unternehmen die Kontrolle über den Broker gibt beinhaltet GETCO, Blackstone Equity Ameritrade und Stifel. Das Debakel führte auch dazu, dass die New York Stock Exchange (NYSE) mit der Verantwortung für mehr als 670 Wertpapiere zu konkurrieren GETCOrsquos IT-Plattform zuweisen. Dies war jedoch nur für einen begrenzten Zeitraum und die Verantwortung hat seitdem zurück zu Ritter zurück. Empfohlen für youZombie Software beschuldigt für Knight Capital Trading Snafu A Bloomberg News-Geschichte gestern Schuppen ein bisschen mehr Einblick in die Ursache der unkontrollierten elektronischen Handel durch den Markt machen Brokerage Knight Capital vor ein paar Wochen. Es scheint ein schlafendes Vermächtnisprogramm irgendwie zielsicher reaktiviert zu werden. Und dann störte (oder übernahm) die firm39s Handel am 1. August, als ein neues Software-Handelsprogramm Knight installiert hatte Betrieb begann. QuotOnce ausgelöst am 1. August begann das ruhende System Multiplikation Aktienhandel um eintausend, rdquo Bloomberg wurde von zwei namenlosen Quellen, die über die Angelegenheit informiert wurde gesagt. Hmm, tote Software wird reanimiert, übernimmt ein Computersystem und läuft dann Amok. Ich glaube, ich habe diesen Film irgendwo gesehen. Auch nach den Quellen, ldquoKnightrsquos Mitarbeiter sah durch acht Sätze von Software vor der Bestimmung, was passiert. rdquo Fast klingt wie es einen Friedhof voller toter Software bereit, wieder belebt werden. Leider sagt der Artikel nichts mehr darüber, wie die ruhende Software erwachte und sich selbst einfügte, wenn es um die Ausführung von Trades ging, die angeblich von der neuen Software initiiert werden sollten, die Knight installiert hatte. Es auch doesnrsquot sagen, warum Ritter ldquoeight Sätze von softwarerdquo anscheinend wohnhaft in seiner Ausführung Umwelt halten würde. Wersquoll wahrscheinlich warten, bis die SEC beendet seine Untersuchung, um herauszufinden, was tatsächlich passiert, sowie, vermutlich, einige saftige Details über Knight39s Software-Entwicklung und System-Test-Praktiken. Dennoch hat das so genannte ldquoKnight-mare glitch rdquo (ua) die Regulatoren in Asien und Australien dazu angetrieben, ldquoclamp downdown auf hochfrequente Handelsunternehmen, berichtete die Financial Times diese Woche. Die Regulatoren sind ldquownveiling Kehrvorschläge, die Händler verlangen würden, Kontrollen auf ihren Systemen zu haben und sie jährlich zu prüfen, um Marktstörung zu verhindern, rdquo das Papier sagte. Regulierungsbehörden wollen ldquopre-traderdquo Risiko Kontrollen an Ort und Stelle zu halten ldquoaberrantrdquo Handel von geschieht, sowie Handel ldquokill switchrdquo, wenn die Risikokontrolle fehl. In verwandten Nachrichten berichtete die FT auch, dass die jüngste Panne an der Tokyo Stock Exchange zu einem schlechten ldquorouter in seinem Tdex Derivat-Handelssystem verfolgt wurde. rdquo Aus Gründen noch nicht erklärt, ein Backup-Router nicht zu treten. Dies ist das zweite Mal In diesem Jahr, dass ein TSE-Backup-System nicht treten, wenn es erforderlich war. Ein Router Problem verursachte auch Probleme für mehrere Stunden gestern Morgen bei Californiarsquos Department of Motor Vehicles (DMV). Nach Angaben der Associated Press. Ein Problem mit einem kalifornischen staatlichen Router verursacht die DMVrsquos Computer aus dem Statersquos-Netzwerk von ca. 0800 bis Mittag Ortszeit, keine Zweifel erbittert und verärgert viele Kunden getrennt werden. Laut Fernsehsender CBS Sacramento. Die Kalifornien DMV hat sich an seine Kunden über Twitter 26 Mal alleine seit Februar für technische Schwierigkeiten entschuldigt. Die Station hat untersucht, ohne viel Glück DMV Ausfälle, die offensichtlich haben das System mit einigen Regelmäßigkeiten seit 2007. Durch Zufall, hatten mehrere andere California State Agenturen Computer-Netzwerk-Probleme gestern als auch, die der Staat auf einer unerklärten ldquocircuit reconfigurationrdquo Problem verantwortlich gemacht . Diese unabhängige Frage, die AP-Berichte, wurde auch gestern um den mittleren Tag korrigiert. Schließlich verkündete Manganese Bronze, die Firma, die Londonrsquos vertrautes schwarzes Taxi herstellt, diese Woche ankündigte, dass ldquoit die Freigabe seiner ungeprüften Halbjahresergebnisse für die sechs Monate beendet, die am 30. Juni 2012 enden, wegen der Notwendigkeit, vorherige yearsrsquo finanzielle Resultate zu wiederholen, weil Von Rechnungslegungsfehlern, die ans Licht gekommen sind. rdquo Die Fehler könnten vermutlich auf Computer-bezogene Fehler beschriftet werden, aber nicht auf Rechnungswesen. Laut einer Unternehmenserklärung im August 2010 hat das rdquo im August 2010 ein neues, integriertes IT-Accounting-System eingeführt, das zur Verwaltung der globalen Supply Chain der Unternehmensgruppe ldquocomplex installiert wurde. Dabei wurden einige wichtige Transaktionen während des Cut-Over verpasst: ldquoDue auf eine Kombination von System - und Verfahrensfehlern , Eine Reihe von Transaktionen in den Jahren 2010 und 2011 und einige Restguthaben aus dem bisherigen System wurden nicht ordnungsgemäß durch das neue IT-System verarbeitet. Dieses Problem führte zu der Überbewertung der Bestände und der Unterbewertung der Verbindlichkeiten in den Jahresabschlüssen der vergangenen Jahre. Infolgedessen wurde das Unternehmen durch pound3.9 Million seine historischen Verluste untertrieben. Mangan-Bronze wurde unter schweren Wettbewerbsdruck, oder in seinen eigenen Worten, ldquoTrading in den ersten sieben Monaten des Jahres war schwierig und bleibt anspruchsvoll mit der Gruppe weiterhin mit einem Verlust zu handeln. Obwohl es erwartet, dass die Situation schließlich zu verbessern, Die derzeit starke Konkurrenz von Mercedes-Benz (die jetzt fast ein Drittel der Londoner Taxi-Flotte) und einige erwartete neue Konkurrenz von Nissanrsquos neue emissionsarme Taxis kann nicht gut für das Unternehmen künftige finanzielle Gesundheit. Die FT berichtete, dass Mangan-Bronze-Aktien 34 Prozent auf die Nachrichten der Ergebnisse restatement fiel und hat nur noch einen Marktwert von einigen Pfund5 Millionen. Erfahren Sie mehrIch sprach auf einer Konferenz im vergangenen Jahr zu den Themen DevOps, Konfiguration als Code und Continuous Delivery und verwendete die folgende Geschichte, um zu zeigen, wie wichtig es ist, dass Bereitstellungen vollständig automatisiert und wiederholbar als Teil einer DevOpsContinuous Delivery Initiative durchgeführt werden. Seit dieser Konferenz wurde ich von mehreren Personen gefragt, die Geschichte mit meinem Blog zu teilen. Diese Geschichte ist wahr, dass dies wirklich passiert ist. Dies ist meine Erzählung von der Geschichte auf, was ich gelesen habe (ich war nicht beteiligt). Dies ist die Geschichte, wie ein Unternehmen mit fast 400 Millionen an Vermögenswerten in Konkurs ging in 45 Minuten wegen einer fehlgeschlagenen Bereitstellung. Hintergrund Knight Capital Group ist ein amerikanisches globales Finanzdienstleistungsunternehmen, das sich auf Marktmacherei spezialisiert hat. Elektronische Ausführung und institutioneller Vertrieb und Handel. Im Jahr 2012 war Knight der größte Händler in US-Aktien mit Marktanteil von rund 17 auf jedem der NYSE und NASDAQ. Knights Electronic Trading Group (ETG) verwaltet ein durchschnittliches tägliches Handelsvolumen von mehr als 3,3 Milliarden Trades täglich, Handel über 21 Milliarden Dollar täglich. Thats kein Witz Am 31. Juli 2012 Knight hatte etwa 365 Millionen in bar und Äquivalente. Die NYSE beabsichtigte, am 1. August 2012 ein neues Retail Liquidity Programm zu starten (ein Programm, das den Privatanlegern durch Retail-Broker wie Knight eine verbesserte Preisgestaltung ermöglicht). In Vorbereitung auf dieses Ereignis verbesserte Knight ihren automatisierten, schnellen, algorithmischen Ansatz Router, die Aufträge in den Markt für die Ausführung als SMARS bekannt senden. Eine der Kernaufgaben von SMARS ist es, Aufträge von anderen Komponenten der Ritterhandelsplattform (Stammbestellungen) zu erhalten und dann eine oder mehrere Nachbestellungen zur Ausführung zu schicken. Mit anderen Worten, würde SMARS große Aufträge von der Handelsplattform erhalten und brechen sie in mehrere kleinere Aufträge, um ein Buyerseller Match für das Volumen der Aktien zu finden. Je größer der übergeordnete Auftrag ist, desto mehr Kindaufträge werden generiert. Das Update zu SMARS sollte den alten, unbenutzten Code ersetzen, der als Power Peg-Funktionalität bezeichnet wird, die Knight in 8 Jahren nicht benutzt hatte (warum Code, der für 8 Jahre gestorben war, immer noch in der Codebasis vorhanden war, ist ein Mysterium Nicht der Punkt). Der Code, der aktualisiert wurde, ersetzte ein altes Flag, das verwendet wurde, um die Power-Peg-Funktionalität zu aktivieren. Der Code wurde sorgfältig getestet und nachweislich korrekt und zuverlässig funktionieren. Was könnte möglicherweise falsch gehen Was könnte möglicherweise falsch gehen In der Tat zwischen 27. Juli 2012 und 31. Juli 2012 Knight manuell eingesetzt die neue Software auf eine begrenzte Anzahl von Servern pro Tag acht (8) Servern in allen. Dies ist, was die SEC-Einreichung sagt über die manuelle Bereitstellung (BTW, wenn es eine SEC-Datei über Ihre Bereitstellung etwas kann schrecklich falsch gegangen). Während des Einsatzes des neuen Codes jedoch, einer der Ritter Techniker nicht kopieren Sie den neuen Code auf einen der acht SMARS-Computer-Servern. Ritter hatte nicht einen zweiten Techniker überprüfen diese Bereitstellung und niemand bei Knight erkannte, dass der Power Peg-Code nicht aus dem achten Server entfernt wurde, noch der neue RLP-Code hinzugefügt. Ritter hatte keine schriftlichen Verfahren, die eine solche Überprüfung erforderlich. SEC Filing Release Nr. 70694 16. Oktober 2013 Um 9.30 Uhr Eastern Time am 1. August 2012 öffneten sich die Märkte und Knight begann mit Aufträgen von Broker-Händlern im Auftrag ihrer Kunden für das neue Retail Liquidity Program. Die sieben (7) Server, die die richtige SMARS-Bereitstellung hatten, begannen, diese Aufträge ordnungsgemäß zu verarbeiten. Aufträge, die an den achten Server gesendet wurden, lösten die vermeintliche repurposed Flagge aus und holten von den Toten den alten Power-Peg-Code zurück. Angriff der Killer Code Zombies Es ist wichtig zu verstehen, was der tote Power Peg Code zu tun war. Diese Funktionalität sollte die Aktien boughtsold gegen einen übergeordneten Auftrag zählen, da untergeordnete Aufträge ausgeführt wurden. Power Peg würde das System anweisen, Routing-Unterordnungen zu beenden, sobald der übergeordnete Auftrag erfüllt wurde. Grundsätzlich würde Power Peg verfolgen die Reihenfolge der Kinder und stoppen sie, sobald die übergeordnete Reihenfolge abgeschlossen wurde. 2005 wechselte Ritter diese kumulative Tracking-Funktionalität zu einem früheren Zeitpunkt in der Codeausführung (wodurch die Zählverfolgung von der Power Peg-Funktionalität entfernt wurde). Wenn das Power Peg-Flag auf dem achten Server aktiviert wurde, begann die Power-Peg-Funktionalität, untergeordnete Aufträge zur Ausführung weiterzuleiten, aber die Verfolgung der Menge von Anteilen gegen die übergeordnete Anordnung war nicht wie eine Endlosschleife. 45 Minuten der Hölle Stellen Sie sich vor, was passieren würde, wenn Sie ein System, das in der Lage, automatisierte, High-Speed-Aufträge in den Markt ohne Tracking, um zu sehen, wenn genug Aufträge ausgeführt worden war. Ja, es war so schlimm. Als der Markt um 9:30 Uhr eröffnet wurde, wussten die Leute schnell, dass etwas nicht stimmte. Um 9.31 Uhr war es für viele Leute an der Wall Street offensichtlich, dass etwas Ernstes passierte. Der Markt wurde überflutet mit Aufträgen aus dem normalen für reguläre Handelsvolumen auf bestimmte Bestände. Um 9:32 Uhr fragten sich viele Leute an der Wall Street, warum es nicht aufgehört hatte. Dies war eine Ewigkeit in High-Speed-Handelsbedingungen. Warum hatte nicht jemand den Kill-Schalter auf, was System tat dies tun Wie es sich herausstellt, gab es keine Kill-Schalter. Während der ersten 45 Minuten des Handels waren Ritterausführungen mehr als 50 des Handelsvolumens und trieb bestimmte Bestände über 10 ihres Wertes. Infolgedessen verringerten sich andere Bestände im Wert als Antwort auf die fehlerhaften Geschäfte. Um es noch schlimmer zu machen, begann das System von Knights, bereits um 8:01 Uhr automatisierte E-Mails zu versenden, nachdem SMARS Aufträge für den Pre-Market-Handel bearbeitet hatte. Die E-Mail-Nachrichten verweisen auf SMARS und haben einen Fehler erkannt, da der Power Peg deaktiviert ist. Zwischen 8:01 und 9:30 Uhr waren 97 dieser E-Mails an das Ritterpersonal geschickt worden. Natürlich waren diese E-Mails nicht als Systemwarnungen entworfen worden und deshalb sah niemand sie sofort an. Hoppla. Während der 45 Minuten der Hölle, die Ritter erlebt haben, versuchten sie mehrere Gegenmaßnahmen, um zu versuchen, die irrigen Trades zu stoppen. Es gab keinen Kill-Switch (und keine dokumentierten Verfahren, wie zu reagieren), so dass sie links zu versuchen, das Problem in einem Live-Trading-Umfeld zu diagnostizieren, wo 8 Millionen Aktien gehandelt wurden jede Minute. Da sie nicht feststellen konnten, was die fehlerhaften Aufträge verursachte, reagierten sie durch Deinstallieren des neuen Codes von den Servern, die es korrekt bereitgestellt wurde. Mit anderen Worten, sie entfernten den Arbeitscode und verließen den gebrochenen Code. Dies verstärkte nur die Probleme, die zusätzliche übergeordnete Aufträge verursachen, um den Power Peg-Code auf allen Servern zu aktivieren, nicht nur die, die nicht ordnungsgemäß bereitgestellt wurde. Schließlich konnten sie das System nach 45 Minuten des Handels stoppen. In den ersten 45 Minuten war der Markt geöffnet wurde der Power Peg-Code empfangen und verarbeitet 212 Eltern Bestellungen. Als Ergebnis SMARS geschickt Millionen von Bestellungen auf dem Markt in 4 Millionen Transaktionen gegen 154 Aktien für mehr als 397 Millionen Aktien. Für Sie Aktienmarkt Junkies das bedeutete, dass der Ritter etwa 3,5 Milliarden Netto-Long-Positionen in 80 Aktien und 3,15 Milliarden Netto-Short-Positionen in 74 Aktien angenommen. In laymen8217s Begriffe, Knight Capital Group realisiert einen 460 Millionen Verlust in 45-Minuten. Denken Sie daran, Ritter hat nur 365 Millionen in bar und Äquivalente. In 45 Minuten Ritter ging von der größte Händler in US-Aktien und ein bedeutender Market Maker in der NYSE und NASDAQ zu Bankrott. Sie hatten 48 Stunden, um das notwendige Kapital zur Deckung ihrer Verluste aufzubringen (was sie mit einer 400-Millionen-Investition von rund einem halben Dutzend Investoren zu tun schafften). Knight Capital Group wurde schließlich von Getco LLC (Dezember 2012) erworben und das fusionierte Unternehmen heißt jetzt KCG Holdings. Eine Lektion zu lernen Die Ereignisse vom 1. August 2012 sollten eine Lehre für alle Entwicklungs-und Operations-Teams sein. Es ist nicht genug, um große Software zu bauen und es zu testen, müssen Sie auch sicherstellen, dass es geliefert wird, um richtig zu vermarkten, damit Ihre Kunden den Wert erhalten, den Sie liefern (und so Sie nicht Ihre Firma bankrott). Die Ingenieure, die SMARS eingesetzt haben, sind nicht allein an der Schuld des Prozesses, den Knight eingerichtet hatte, nicht geeignet für das Risiko, dem sie ausgesetzt waren. Zusätzlich war ihr Verfahren (oder ihr Fehlen) anfällig für Fehler. Jedes Mal, wenn der Bereitstellungsprozess auf dem Lesen von Menschen und den folgenden Anweisungen beruht, stellen Sie sich dem Risiko aus. Menschen machen Fehler. Die Fehler könnten in den Anweisungen, in der Auslegung der Anweisungen oder in der Ausführung der Anweisungen liegen. Die Implementierungen müssen automatisiert und wiederholbar sein und möglichst frei von möglichen menschlichen Fehlern sein. Had Knight implementiert ein automatisiertes Bereitstellungssystem mit Konfigurations-, Bereitstellungs - und Testautomatisierung, die den Fehler verursachen würde, der das Knightmare vermieden hätte. Ein paar Prinzipien für Continuous Delivery finden Sie hier (auch wenn Sie keinen vollständigen Continuous Delivery-Prozess implementieren): Freigeben von Software sollte ein wiederholbarer, zuverlässiger Prozess sein. Automatisieren Sie so viel wie angemessen ist. Ein Szenario: Nehmen wir an, sie hatten sehr gute DevOps. Also alle Server würden synchron sein. Aber 8211 nehmen an, dass der neue Code einen Bug hatte. Also alle Server sind synchron, haben aber den selben Buggy Code. Was, wenn zwei Versionen des Codes, d. H. Die letzten 2 Bereitstellungen diesen Fehler hatten. So, sobald sie erkennen, dass etwas falsch ist, they8217d Roll-back den Code, der Bug noch stays8230 Precious Minuten vergangen sind. Vielleicht 20 Minuten statt der 45 Minuten in Ihrem Artikel. So in kurzen 8211 ihre Katastrophe Kill-Switch ist ein Code-Rollback-Einsatz in einer Live-Umgebung. Das wäre noch ein defektes Design. Was sie brauchen, wäre ein großer roter Schalter (fast wörtlich, irgendwo in ihrem Armaturenbrett) sofort aufhören. Wo ist die Geschäftsregel, die sagt 8220first tun no harm8221. VJ, wenn die Bereitstellung auf alle Server gearbeitet hatte, wäre es ok gewesen. In diesem Fall wurden jedoch 7 von 8 für ein Subsystem korrekt eingesetzt. Weil das schlechte Verhalten, rollten sie zurück die anderen 7 denken, dass der neue Code in diesem Subsystem war das Problem. Das multiplizierte das Problem bis zum eventuellen Kill-Switch. Katastrophen sind fast immer komplex. In diesem Fall war es schlechte Kodierung Praktiken, plus fragwürdige Prüfung Code Inspektion Praktiken, sowie ein Fehler in der Bereitstellung, sowie ein Rollback auf die Granularität des Subsystems und nicht auf das gesamte System. Wenn Sie eines dieser Probleme lösen, erhalten Sie eine Katastrophe. Eines der Dinge, die in Unternehmen gesehen werden, die die wahre Bedeutung und den Einfluss ihrer IT-Systeme nicht anerkennen, ist, dass sie kein Budget für Legacy-Code-Updates bereitstellen. Zum Beispiel: Ich habe Situationen gesehen, in denen IT kein Budget hat. Es muss alles rechtfertigen, was es gegen einen Unternehmensaufwand macht. Das bedeutet ständig Scrambling, um neue Projekte aufzustellen. Geschäft sieht selten die Notwendigkeit, alte Software zu aktualisieren, die zZ arbeitet, also sie ablehnen, dafür zu zahlen. Das Ergebnis ist ein konstanter neuer Code, der von den preiswertesten Codern möglich gemacht wird, während nicht in Technologien investiert wird, die letztlich die Performance verbessern und das Risiko mindern. Warum, weil diese als 8220IT-Probleme8221 gesehen werden und nicht das Ziel des Projekts, an dem die IT-Leute arbeiten, so dass niemand dafür bezahlen wird. Ein großes Lesen über diese Praxis ist das Phoenix-Projekt von Gene Kim, Kevin Behr und George Spafford. Vielen Dank für die Anwendung Gehirn auf die Hype. Vermutlich sollte man fragen, warum die beteiligten Techniker die Schuld auf sich genommen haben, aber nicht die Befugnis bekamen, den Schalter selbst zu töten. Oh, richtig, dass8217s, warum Sie setzen OpsSRE an Ort und Stelle trotzdem. 8220R8221 ist für verantwortlich, alias Flammenköder. Ich habe ein wenig über dieses Ereignis geschrieben, und ich würde jemanden, der den SEC-Bericht als alles andere als für das, was die SEC brauchte, für sie zu warnen. Kitchensoap20131029counterfactuals-knight-capital Faszinierend lesen. Ich arbeitete in einem großen Auktionshaus für Obst und Gemüse einmal, wo eine neue Software-Version installiert wurde und nicht, was zu großen Verlusten für die Händler (wenn auch nicht so massiv wie diese). Dies war auch ein Fall von unsachgemäßen Einsatz und kein Rückfall. Die zu erlernende Lehre ist, dass es Gebiete gibt, in denen Computer keine Entscheidung ohne menschliche Validierung treffen sollte. Was ist mit den Menschen, die ihre Arbeit verloren, weil, oops, gab es einen Bug Was ist mit den anderen Unternehmen, die vielleicht in Trubble wegen der plötzlichen Veränderung der Aktienwert Automatisierung von 8220high level Entscheidungen8221 ist sorgfältig behandelt werden soll8230 Nizza und pädagogische Post Btw. Die Verwendung des Cynefin-Frameworks bietet eine bessere Charakterisierung dieses 8216DevOps8217-Fehlers Dieser Beitrag scheint aus einer DevOps-Perspektive geschrieben worden zu sein. Die vorgeschlagenen Lösungen stimmen mit einer DevOps-Perspektive überein 8211 untersuchen den Freigabeprozess, automatisieren mehr und erarbeiten einen Kill-Switch mit Rollback-Fähigkeiten. Jemand kann die Post lesen und zu viel Wert auf den Ritter Techniker legen, der den alten Code nicht auf einen der acht Server kopiert hat. Jemand kann eine Ursache-Wirkungs-Beziehung zu stark vereinfachen. Jemand kann auf neue Regeln reagieren, um dies zu verhindern, was immer wieder geschieht.8217 Ein stärkerer Ansatz kann investieren: 8211 Größere Diversität, um die Situation zu analysieren und bessere Möglichkeiten zu schaffen 8211 Verbessern Sie die Kommunikation zwischen Spezialitäten 8211 Verbessern Sie implizite Koordination zwischen Spezialitäten 8211 Rekrutieren Sie Einzelpersonen mit mehr Know-how zu schreiben und zu überprüfen Code Ein wichtiger Faktor, der begrenzte Verbesserung der Fähigkeit des Teams aus neun Jahren vor dem signifikanten Fehler Veranstaltung war mis-Charakterisierung des Systems. In einem Cynefin-Framework beschränkt dieser Fehler auf ein DevOps-Problem das System mit der 8220Obvious8221-Domäne, wo es einfache Ursache-Wirkungs-Beziehungen gibt, die von 8216professionals erkannt werden.8217 Der Fehler sollte nicht mit der Cynefin 8220Complicated8221 Domäne verknüpft werden, wo eine signifikante Analyse Von 8216specialists8217 hätte den Misserfolg verhindert. Das System sollte mit der Cynefin 8220Complex8221 Domäne 8211 ein komplexes adaptives System verbunden sein. Das System ist dispositional. Die gleichen Anfangsbedingungen erzeugen nicht denselben Ausfall (außer durch Zufall). Für weitere Informationen über Cynefin, besuchen Sie en. wikipedia. orgwikiCynefin und CognitiveEdge. Ich schätze Ihre Hervorhebung der tacit Faktoren in einer solchen Katastrophe. Wie der Autor, ich arbeite auch in Operationen, und es ist leicht, in die gleichen alten Denkmuster auf Ursachen und Lösungen fallen. Ich genieße besonders Ihren Punkt in Bezug auf Vielfalt (die in allen Formen kommt: Erfahrungsniveau, kulturelle und pädagogische Hintergründe, Fähigkeiten, Alter, etc.), wie ich denke, das ist ein starker Treiber hinter dem Erfolg von DevOps selbst. Mit einer Vielzahl von Perspektiven, sowohl innerhalb als auch ohne Ihr Team, Blick auf Ihr Projekt hat starke, nachweisbare Potenzial und kann helfen, Bordstein Versehen wie die, die in diesem Artikel. Gt, warum Code, der tot für 8-Jahre war noch in der Code-Basis vorhanden ist ein Geheimnis, aber das ist nicht der Punkt Im Gegenteil, dass8217s genau der Punkt. Code mit unbenutzten, und daher ungetestet, Konfigurationsmöglichkeiten ist eine Katastrophe zu erwarten. Dies ist, warum I8217m sehr skeptisch über Merkmal-basierte Ansätze im Allgemeinen. Konfiguration ist so viel ein Teil Ihres Programms wie Code ist, und Konfigurationsänderungen sollten durch die gleiche Lifecycle 8211 ziehen Anforderung, Code-Überprüfung, Release, Bereitstellung zu Staging 8211 als jede andere Änderung zu gehen. Wenn Ihr Freigabeprozess zu schwer ist und Sie schnelle Konfigurationsänderungen an der Produktion vornehmen müssen, beheben Sie den Freigabeprozess. Es gab zu viele Fehler, um das epische Misserfolg nur DevOps zuzuschreiben (obwohl ich voll und ganz einverstanden bin, dass Automatisierung und Testing der einzige Weg sind): 8211 Keine Teamarbeit und Checklisten bei einem Update auf Produktionsservern. Jede Aktualisierung auf Produktion sollte ein Team aufpassen über einander, und durch eine Checkliste. 8211 8 Jahre unbenutzter alter Code in Produktion. Das sagt Ihnen viel über das Fehlen von Verständnis über die Risiken baumeln 8220unused8221-Code. 8211 Unzureichende Protokollierung aus dem Code und unzureichende Echtzeit-Protokollüberwachung, Korrelation und Analyse. Das hätte genügend Anhaltspunkte für die Ingenieure und OPS-Leute ausgelöst. 8211 Kein Hot-Hot-Failover zu einem Cluster mit der vorherigen Version. Das hätte alles nach 1 oder 2 Minuten gestoppt. (That8217s die Bug rote Taste, die der Artikel erwähnt) Wenn Sie auch schon seit Jahren Architekten Software, Systeme und Unternehmen für eine lange Zeit, Sie wissen, Katastrophe geschieht, wissen Sie, einige Bugs sind nur in der Wildnis gefangen und nicht während der Simulationen, genau wie Sie Wissen Maschinen gehen wird. Sie müssen für den schlimmsten Fall in beiden Szenarien vorzubereiten. Murphy8217s Gesetz ist so wahr in unserer Welt I8217w wurden in dem, was jetzt die 8220DevOps8221 Raum für fast 20 Jahre, mehr als die Hälfte der in der Finanzwelt. Ritter war sowohl ein Verkäufer und ein Konkurrent des Unternehmens, für das ich derzeit arbeite. Bereitstellung Automatisierung könnte dazu beigetragen haben. Könnte sein. Aber nur wenige Unternehmen können sich genau doppelte Umgebungen leisten, was im Wesentlichen auf Umweltunterschiede zurückzuführen ist. Selbst die automatisierte Validierung der Bereitstellung hätte in diesem Fall nicht geholfen, wenn die Automatisierung über die Umweltdifferenz keine Kenntnis hatte. Automatisierung ist nur so gut wie das Wissen der Menschen, die es aufstellen. Wenn eine manuelle Installation wasn8217t bewusst das alte System, dann there8217s eine gute Chance, die das automatisierte System wouldn8217t bekannt haben, um es entweder zu überprüfen. Die Automatisierung eines Rollbacks ist auch nur so gut wie die Entscheidung, ob der Roll-back erfolgen soll. Und wenn die Automatisierung versehentlich das alte System gestartet hat, gibt es auch keine Garantie, dass das Umschalten des zeitgenössischen Systems wieder das alte System 8211 gestoppt hätte, hätten Sie das gleiche Problem auch nach einem automatischen Rollback des modernen Systems haben können. Das bringt mich zum letzten Punkt: Automatisierung ist eine Voraussetzung in großen, modernen Umgebungen. Aber über-Abhängigkeit auf es kann dazu führen, dass die Menschen, die das System nicht bewusst, was es tun. Automatisierung ist am nützlichsten für Validierungen, weil Validierung Dinge richtig gemacht werden, ist mühsam und leicht zu skimp on, wenn manuell durchgeführt. Selbst wenn die Automatisierung, mit menschlichen Breakpoints oder von Menschen getriebenen Schritten hilft sicherzustellen, dass diejenigen, die das System kennen das System kennen und wie es funktioniert, erheblich verbessern ihre Fähigkeit, Probleme zu beheben, Probleme zu diagnostizieren und geeignete Vorschläge, welche Schritte zu ergreifen Stoppen oder mildern ein Problem. Automatisierung ist ein Werkzeug, aber es ist nur ein Werkzeug und es erfordert immer noch ein Handwerker, um es angemessen zu nutzen. Know-how ist, was macht und hält große Systeme groß. Hat diesen Eintrag von Garrett S. Y. Hampton gerebloggt und das kommentiert: Incredible. DevOps beobachtet, dokumentiert und überprüft Ihre Bereitstellungen immer
No comments:
Post a Comment