Press "Enter" to skip to content

GOTO 2017 • Troubleshooting Tiered Tragedy: A Peek Into Failure • Jeff Smith


[Musica]
buon pomeriggio, grazie per tutti
Avere me
il mio discorso oggi è una soluzione del
incidente di produzione che si è verificato e
alcune delle cose che abbiamo imparato
quell’incidente di produzione sia in giro
come gestire la gestione di sistemi complessi
sistemi basati su micro servizi e
sistemi distribuiti solo un rapido spettacolo di
mani mi dispiace
probabilmente i discorsi hanno già fatto questo
quanti di noi identificano di più sul
lato sviluppatori dello spettro okay wow
è diverso dalle operazioni Ebisu
lato dello spettro, tutto bene quanti
le persone stanno gestendo il nostro in un micro
ambiente di servizi va bene così sono
scusa se faccio scattare qualcuno che conosci lì
potrebbe essere un pianto come ha detto Brigitte
ma non ti preoccupare , lo affronteremo
insieme
questi sono ispirati da eventi veri questo
non è un fan fiction, sfortunatamente lo abbiamo
cambiato i nomi e le posizioni in
proteggere gli innocenti ma sappi che questo
non è un esercizio accademico questo è
qualcosa che in realtà si è verificato così a
molte cose che sarebbero state
parlare di ciò che sarà
insolitamente reale in termini di
quello che siete abituati a vedere
nei tuoi ambienti, quindi cosa siamo
vado a parlare di prima ti darò
una breve introduzione su me stesso dove
Vengo da come è il mio background
camminare attraverso l’anatomia di un sistema
cammineremo attraverso un incidente reale andremo
attraverso tutti gli avvisi le cose
che abbiamo imparato su quegli avvisi e
decisioni che abbiamo preso e poi
in definitiva ciò che impariamo dal nostro post
processo mortem dopo l’avviso e dopo
l’incidente e farsi un’idea di quanto sia
le cose brutte in realtà erano così veloci
introduzione il mio nome è Jeff Smith e
il manager delle operazioni di produzione a
Centro Sono stato lì per circa sei
mesi Centro è un servizio pubblicitario multimediale
azienda stiamo anche lavorando su un software
come soluzione di servizio per annunci multimediali
compratori quindi sei in quello spazio e tu
voglio parlare sai che trovami dopo il
dopo la chat mi trovi su Twitter
Jeff Smith scuro e sporco alla rete centrale
Mi piace parlare di sistema
e sistemi che pensano così se questo è
qualcosa a cui sei interessato
per favore sentiti libero di afferrarmi anch’io
un blog che non aggiorno mai grazie
comm scuro, sentiti libero di verificarlo a
un sacco di roba del passato, quindi prima
Volevo parlare dell’anatomia di a
sistema giusto e di cosa stiamo parlando
circa quando usiamo questo sistema di termine noi
tendono a pensare a cose come il web
server il database la coda Redis tutto
di questi componenti ed elementi di a
sistema e quelli sono tutti perfettamente validi
quelle sono parti del sistema ma il
cose che tendiamo a dimenticare e
non si parla davvero di un focus su sono i
input al sistema giusto perché noi
devono avere dati in arrivo richieste
forse arrivando in uscita al sistema
che alimenta un altro sistema e prende il via
un sacco di lavoro il ciclo di feedback in
quel sistema come stiamo fornendo
informazioni sullo stato del
sistema al suo interno e, cosa più importante
e questo lo sai vicino e caro al mio
cuore gli operatori di quel sistema
perché ci sono persone dietro questo
che stanno effettivamente gestendo questi sistemi
e hanno bisogno di capire cosa sta succedendo
nel sistema come possono cosa
leve che devono correggere
sistema quando si mette male e
spesso quando li stiamo costruendo
cose gli operatori l’ultimo pezzo di
il puzzle che ci dimentichiamo ma è
super cruciale perché nei guai
colpisce l’operatore è lì andando
sii la persona che sta modificando il
sistema per ottenerlo o correggerlo
in uno stato più desiderato , quindi andiamo
con quel tipo di definizione clinica
qual è il sistema un insieme di connettivi
cose o parti che formano un insieme complesso
è abbastanza semplice
esempio, ma penso che la cosa che ottiene
interessante è che anche i sistemi
composto da altri sistemi, così a
il sottosistema è un insieme di elementi che è
un sistema in sé e un componente di a
sistema più grande è Tartarughe tutto il modo
giù a destra come più inizi a
sbucciare la cipolla a pezzi più si
renditi conto di quanto siano complesse queste cose
sono così inizieremo con un alto livello
diagramma di sistema giusto così quando guardi
questo probabilmente non sembra troppo
diverso da quello che si sta eseguendo in
il tuo ambiente ha ragione, abbiamo un utente
arrivano da internet sono
colpire un bilanciamento del carico elastico che
equilibri tra server e web che potremmo
avere ElastiCache lì dentro
stiamo leggendo da un database master o
scrivere su una lettura del database principale
da un database slave che pubblica alcuni
messaggio segnala alcuni messaggi su una stecca
abbiamo i nodi worker che lo elaborano
spunto abbastanza bene , è come se
se siamo onesti, probabilmente lo è
il sistema ideale in un sistema reale che si
probabilmente ha avuto il sopravvento su MongoDB da qualche parte
ci sono alcuni esperimenti su nodejs falliti
nessuno sa veramente se puoi davvero
stacca la spina, lo sai, quindi vivremo
in questa utopia per un secondo dire come
sì, questo è quello che sarebbe un normale sistema
sembra che anche i sistemi abbiano fallito
le modalità in modalità fallimento sono fondamentalmente le
modo particolare in cui un sistema
degrada o alla fine non riesce a funzionare
come previsto e interessante
modalità di errore è il numero di errori
le modalità tendono a crescere come il sistema ha
più componenti diventano più complesse così
per esempio prendiamo la nostra stessa felicità
sistema giusto e poi improvvisamente diciamo
i nodi operai muoiono che sta per
creare un particolare scenario di errore
questo è diverso da un altro
componente fallito correttamente
in questo particolare scenario potrebbe essere
qualcosa di semplice come l’elaborazione della posta elettronica
non sta accadendo o potrebbe essere qualcosa
catastrofico dove il lavoro non scorre
attraverso il sistema se il database letto
fallisce questo è un errore diverso
scenario in cui ogni sottosistema non riesce
produrre un tipo completamente diverso di
fallimento e poi se abbiamo tutti e due
fallire bene, questo è un altro fallimento
modalità la cosa da togliere a questo è
diventa incredibilmente difficile da
prevedere come un sistema sta per fallire come
cresce e diventa più complesso per te
potrebbe essere l’intestino pensa che tu abbia tutto
questi scenari hanno capito che hai capito
la produzione e tu sei come huh noi
non l’ho visto nei test che è strano
destra
come si incontra qualcuno che no sei
tutti genii sì è quello che pensavo
è quello che pensavo non permettesse il pranzo
nel modo qui, come alzare le mani
lo sai che sei parte di questo, allora a
rendere ancora più complicato ognuno
di questi sistemi è un sottosistema come noi
parlato giusto così, mentre abbiamo
questo simpatico piccolo nodo di alto livello
che possiamo mostrare alla direzione e dire
questi sono i server web in realtà che conosciamo
quello sotto
è un altro strato di complessità che noi
capisco a malapena proprio così quando sei
pensando a questo devi pensare
su come vedi il sistema e al
quale livello del sistema sei in realtà
visualizzandolo devi essere in grado di zoomare
dentro e fuori a diversi livelli quindi ora
faremo una breve passeggiata attraverso il fallimento
quanti quanti sono stati coinvolti in
un importante spettacolo di incidenti di produzione di
mani quante persone sono state
assolutamente entusiasta e felice di come
quegli incidenti si svolgono in realtà io voglio
parlare con te dopo che è fantastico
è bello sì, tipicamente quando lo faccio
è un po ‘come un sistema è un po’
di una merda mostra una varietà diversa ogni
tempo giusto qualcos’altro ripartizione così
c’è sempre la possibilità di imparare e
un po ‘ come valutare quello che è
hai fatto bene quello che hai fatto di sbagliato
cos’è che non farai mai
di nuovo quindi vedremo questo
situazione particolare quindi questo è il nostro
sistema problematico di nuovo i nomi hanno
stato cambiato per proteggere gli innocenti
Ti spiegherò in fretta come
questo era um operare così abbiamo utenti
che stanno arrivando e stanno facendo un
richiesta di esecuzione , abbiamo un set
di nodi nel livello AWS nella parte superiore di
il livello AWS che prenderà
quelle richieste li pubblicano su un messaggio
coda per l’elaborazione in modo che questo sta per
sembra un vero sistema perché tu sei
sarà come perch stai facendo questo
poi abbiamo un’altra serie di nodi che
legge quei messaggi e quello che pensi
li ha elaborati correttamente no
chiedere a un altro sistema per elaborare quelle
messaggi per noi in un centro dati remoto
il nostro attuale data center legacy una volta quelli
le richieste vengono fatte nei dati legacy
centro sono messi su un altro
bus di messaggi in cui il lavoro effettivo
viene fatto in modo che funzioni un po ‘
come il governo dove c’è molto
handoff e non un sacco di merda
fatto ma alla fine si fa strada
giù a un lavoratore e in realtà ne facciamo un po ‘
cose magiche quindi il primo segno di
allerta il primo segno di guai che noi
ottenuto durante questo incidente è stato quello
le richieste di esecuzione richiedono più tempo
di una soglia predefinita
quindi quell’allarme è stato utile per alcuni
livelli e non utile su pochi altri
giusto il primo pro è quello che sappiamo
l’ impatto sul business perché siamo tutti noi
preoccuparsi per l’impatto aziendale giusto
giusto dai ragazzi, si, l’impatto sul business
è una media di carico fine non significa merda
se le persone non ricevono i loro ordini
elaborato in modo da capire l’attività
impatto immediato ma il problema è noi
non so davvero dove sia il problema
sappiamo che i processi del messaggio sono
muovendosi lentamente ma a quale strato del
sistema al quale parte quindi è ottimo per
il tuo capo è come quello che sta succedendo
roba è rotto, ho tutto bene
cosa è rotto bene
i messaggi non vengono elaborati è
non molto utile quindi il prossimo
avvertiamo che abbiamo trovato era questo spunto racconto avviso
noi che il Q & A WS è stato sostenuto lì
c’erano molti messaggi sopra l’altro
soglia generica predeterminata così ora
stiamo pensando a noi stessi, oh, non possiamo
processo funziona abbastanza velocemente abbiamo bisogno di più
parte dei lavoratori è perché il nostro
avvisi come il contesto e ci arriveremo
un po ‘più tardi ma lo sai
quando hai un avviso che dice il
il messaggio Q è alto è perché il volume
è aumentato perché lo sei
elaborazione più lenta di quanto tu sia in genere
qual è l’età dei messaggi che c’è
tutte queste domande che hai
lo sapevi quando eri nella messa in scena sembrava
trova e perfettamente ragionevole vedrà
la chiave era vuota che è buono lei era
alto che è brutto è abbastanza
informazione giusto no al prossimo allerta noi
ottenuto era un avviso di connessione sul
servizio di messaggistica nel data center
così ora che stiamo per scalare il
il lavoratore annida questo allarme e noi andiamo
oh la prima domanda è come chi ha scritto
quell’allerta è proprio così
abbastanza bello, so che lo abbiamo avuto
cosa è questo è buono
informazioni quindi abbiamo due stati fuori
la scatola e ci va tutto bene
cosa sta succedendo, perché sta succedendo così?
quando abbiamo guardato la scatola abbiamo notato
che c’erano molte connessioni in
questo stato di attesa chiuso su
message server quante persone ricordano
il loro controllo del flusso TCP lì sì, vedi
ed ecco un momento che abbiamo fatto bene
siamo come aspettare da vicino quando è
aspettando no no non è quello che è
aspettare è quando sta cercando di farlo
L’altra cosa che così va bene solo
vai su Wikipedia proviamo a farlo
tutti fuori sul tavolo giusto quindi se siete
come me, forse stai pensando bene
forse potrei usare un aggiornamento così
in pratica il client ha avviato il
chiudi e ti ho detto che abbiamo finito
bene e il server ottiene quello e dice
Va bene, chiamerò chiuso sul mio
socket che invierà il pacchetto di pinne
la vita del pacchetto di annunci è buona, quindi quando
vediamo tutte queste connessioni in un fallimento
in uno stato di attesa chiuso stiamo andando da
perché il server non sta chiudendo questi
le connessioni sembrano strane, così come abbiamo iniziato
guardandolo stiamo notando la chiusura
le settimane sono in aumento, in aumento e in aumento
l’utilizzo della memoria è in aumento in aumento e in aumento
sta arrivando al punto in cui siamo
iniziando a impazzire siamo come chi
questa cosa andrà giù
perché lo facciamo o perché questi
connessioni facendo così cosa siamo noi
andiamo a fare un salto per chiuderlo
giù noi stessi
giusto perché intendo quanto può essere cattivo
forse vediamo cosa succede bene
guarda bene, quindi chiuderò
giù sì è successo
così entrano queste mandrie di connessioni
dopo aver ripristinato il servizio giusto
e uccide solo il server di messaggistica
va bene quindi andiamo tutto bene
server di messaggistica che non mi dispiace
questo non è un modo che ho intenzione di fare
ancora una volta ragazzi così semplicemente andando
riavviare tutto bene siamo tornati no no
siamo ancora giù come ora
tutto è rotto che cosa abbiamo fatto in modo
poi, naturalmente, che cosa stai facendo che
Lo scenario giusto dice bene
chiudiamo tutto ciò che è
collegandoti bene nel frattempo tuo
il capo è davvero così tanto adesso
andando a chiudere tutto come te
o aspettiamo fino a mezzanotte
guarda quando la domanda muore, non lo so
Hai scelto così abbiamo spegnere tutte le
consumatori e produttori portiamo il
server di messaggistica, quindi lentamente aumentiamo
i consumatori e i produttori, ovviamente
il tuo capo è come ben altro
tempo come
Io non guardo alle cinque e cinque cinque
quello sì cinque ci limiteremo a fare marcia indietro per un
secondo così dopo un indeterminato
tempo indeterminato di cui disponiamo
sistema di backup yay
quindi qual è la prima cosa che pensi
a te stesso, perché indovinate un po ‘la
il problema è ancora qui ora siamo solo su
e siamo come spazzare ora che abbiamo
altri trenta minuti prima che si schianti
da solo quindi qual è la prima cosa che tu
fai in quello scenario che sei
risoluzione dei problemi a nessuno
cambiato giusto alcune stat osceno come
L’ottanta percento dei cambiamenti è causato da
reale umano come un cambiamento reale
un essere umano lo ha fatto specialmente se sei dentro
operazioni la prima cosa che ti piace
bene il mio sistema non ha cambiato i modelli così
deve essere il codice, ma questo è il primo
cosa raggiungiamo per ciò che è cambiato e questo
è dove essere in grado di monitorare il tuo
i cambiamenti arrivano nell’enorme destra e io no
sto parlando di schede di controllo del cambiamento
non dicendo che hai bisogno di un burocrate
in un vestito che non può sapere nulla
JavaScript che approva e rifiuta le modifiche
ma quello di cui sto parlando è come te
responsabilizzare le persone a implementare il proprio codice
o sai avere un cucciolo in particolare
distribuire il codice è necessario un qualche tipo di controllo
log per essere in grado di tenere traccia indietro e dire che
fatto cosa quando, perché a questo punto
in questo momento stiamo solo urlando a ciascuno
altro nella stanza cosa cambierò
non so smettila di urlarmi contro , fortunatamente
ha trovato una serie di cambiamenti che sono andati
quel giorno alcuni di loro non erano davvero
regola del fuoco di aggregazione di registrazione sospetta
cambia logo riprogettato cambia messaggio
per mantenere i processi aspettare cosa va bene
quel tipo di balzò addosso e noi siamo
come oh interessante con quel cambiamento
oggi quindi tuffiamoci in quello così
il cambiamento è stato abbastanza innocuo aumentare il
numero di thread di lavoro da dieci a
venti altri tipi di non correlati
agenti ma poi abbiamo guardato e ci siamo
sai che non lo faccio molto, ma Java
sembra che creerà un
Connessione TCP per ogni messaggio
i processi sembrano brutti, quindi lo chiamiamo il
sviluppatore come hey dev, stiamo cercando di
come oh dio si, è totalmente
va bene dolce quindi allora cosa fai non farlo
sii timida, è giusto che lo riporti indietro perché
perché siamo paranoici che stanno andando a rotoli
indietro che cambiamento è sempre una buona idea
perché è sempre una buona idea perché
quando hai un cambiamento e c’è un
problema con il sistema si deve
pensa al tuo pregiudizio di conferma
sta sempre succedendo nella tua parte posteriore
testa destra hai sempre avuto questo noodle
nella parte posteriore della tua testa che sta per
rendi molto difficile lasciarti andare
di quella idea nella parte posteriore della mente sei
pensando come sì, intendo che lo immagino
potrebbe aggiungere più capacità ma sai
quel tasso di cambiamento sembrava davvero
sospettoso e finisci per tagliare
te stesso verso altre possibili strade
di spiegazione quindi ne vale quasi la pena
solo per essere in grado di rimuoverlo dal
tavolo e puoi dire tutto a posto, Bob si chiude
su abbiamo rotolato indietro è ancora rotto cosa
Il prossimo
giusto in opposizione a costantemente
relitigato quel pezzo così indietro
cambiare è sempre una buona idea tranne
quando non lo è, è così complicato
è così complicato che entri
questi mondi di servizi micro e giusto per te
sappi che va bene, fallo fuori lì, giusto
beh, i tuoi cambiamenti dovrebbero essere
compatibile all’indietro e non lo sarai mai
dovrebbe cambiare la tua interfaccia
perché sono gli standard che siamo
tutto ma si okay, ho capito bene ma uh
la merda succede giusto quante persone hanno
come una rottura della loro API
Interfaccia oh siete tutti troppo orgoglioso tutto
bene, fammi sapere dove lavori
quando hai finito perché voglio lavorare
con voi ragazzi, quindi abbiamo uno scenario
dove abbiamo un processo di lavoro
aspetta la versione 1.5 di un endpoint o
un’interfaccia e poi la restituiamo a
versione 1.0 che cosa non lo faccio
conoscere
giusto non ho idea, sembra proprio così
dovrebbe funzionare così ora cosa stai facendo
stai sprecando tempo cercando di trovare sviluppatori
fatto per ottenere un’intesa in questo modo se
Lo rotolo indietro e come aspettare aspetta perché
stiamo rollback appena raggiungiamo
stiamo rilasciando quello che sta per
accadere
Non so adesso se sei fortunato che sei
in uno scenario in cui il codice è stato
progettato in modo tale che solo una parte di
si spezza
ecco alcune funzionalità aggiunte
che Dunn non viene processato proprio a
il tuo caso migliore è il tuo caso peggiore
lo scenario è Ragnarok quindi ti conosco
tipo di dover semplicemente rotolare con esso e
spero per il meglio
l’altro problema in cui ti imbatti
anche se è indovinare cosa non è mai stato testato
sì, non stai tornando a un noto
dichiari che sei un vecchio orecchino come un
sei completamente nuovo territorio inesplorato sei
in un mondo che non è mai stato
sognato e non so perché, no
Non ci ho mai pensato come bene
se ne tiriamo indietro solo la metà lo sono
come quello che è successo veramente adesso
probabilmente va bene così tutto il tuo punto
di fare questo era di tornare a un
noto buono stato
bene ora stai tornando a
uno stato che non è mai stato testato
mai stato capito e ora sei
solo tu sai un po ‘di merda cosa sono
abbiamo intenzione di farlo, così siamo tornati indietro
riavviato il server di messaggistica lo e
ecco, tutto ha funzionato, siamo a posto
dolce che era buono
è fisso ma è davvero così
perché il problema è quando noi quando noi
pensa a risolvere questa produzione
incidenti sai che incolpo ITIL giusto
perché nella tua mente sei come se fosse
gestione degli incidenti riguarda il ripristino
tutti i servizi vengono dopo
che così tante volte sei come bene
server su suite fatto bene ma noi no
avere una storia avvincente sul perché questo
successo non sappiamo davvero cosa
è stato quello che ha creato questo in particolare
area è facile dire come oh si tu
sapere che la cosa del socket TCP è cambiata correttamente
ed è per questo che tutto è fallito, ma noi
ancora non ho una spiegazione reale
così essendo la persona morbosamente curiosa io
abbiamo deciso di avere un bel forte
retrò su questo e ce ne sono stati alcuni
cose che abbiamo perso durante l’interruzione
fammi sapere se qualcuno di questi suoni
familiare
o meno la maggior parte dei tuoi deb e te
stavano dormendo quando questo è andato giù il
messaggio server ha esaurito la memoria noi
mancato che ci siamo persi perché abbiamo avuto
un diluvio di avvisi proprio così
tutti sanno che è l’ area in cui
come tutti i database giù così ora
tutto è allarmante, giusto era uno
di quegli scenari era la coda dei messaggi
abbastanza importante dove stavamo sparando
off avvisi per un sacco di cose e poi
sei come zitto
silenzio ma poi hai messo a tacere l’avviso
quello che conta davvero
problematico l’altra cosa che ci mancava
era che c’erano cattive connessioni
i tentativi per l’ attesa ravvicinata affermano che
stava succedendo dopo il rollback così noi
tirato indietro abbiamo aspettato un po ‘
ci siamo accontentati di sapere che abbiamo fatto il
pancione come lo abbiamo fatto
ora basta riavviare il server dei messaggi
siamo andati, stiamo andando a casa, ma noi
mancato il fatto che dopo che abbiamo rotolato
il sistema stava ancora creando questi
settimane chiuse in modo che significhi come il
il rollback non era in realtà la correzione e
quindi la terza cosa è il messaggio
il servizio in coda aveva una serie di thread
errori quanti di voi ragazzi hanno normale
errori oh dai davvero
nessuno ha errori normali nel loro registro
voi ragazzi andrete all’inferno, lo sapete
forse sto solo lavorando nei posti sbagliati
non lo so ma sì c’era una serie
di errori normali e hanno ottenuto una sorta di
perso nei registri e ci siamo persi, ho detto
questo sarebbe stato un vero discorso così
Ti sto chiamando dispiaciuto per questa cosa
era quando il tuo messaggio clicker cosa
viene fornito con un kit di riparazione cattivo segno quindi lo farò
Basta fare in modo miei spazi qui così
il messaggio che tutto era
interessante giusto così una cosa che io
pensa a molte persone specialmente quando
sono nuovi per l’open source
è il fatto che sia open source quindi se
c’è un’eccezione possibilità ci sono
è una stringa letterale nella base di codice con
quel messaggio di eccezione è incredibile come
a molte persone piace perdere quel quando
loro tipo di risolvere un problema così
abbastanza sicuro diciamo che prepariamo per
questa cosa nella legge oh guarda quello
questo ci sta dicendo che cos’è questo thread
in realtà facendo ciò che effettivamente finiscono
accadendo c’era un filo che
era responsabile di qualcosa che è morto
e a causa della memoria insufficiente
condizione che il filo non possa essere
riavviato in modo che ci ha aiutato a sorta di
Affina Sono come bene
questo potrebbe essere ciò che sta provocando, facciamolo
guarda e guarda cosa fa questa cosa
probabilmente niente di importante tranne che per
essendo quella presa di chiusura del foro
asincrono
così come abbiamo navigato attraverso il codice
fondamentalmente quello che è successo è stato quando a
socket prende chiuso il processo che
gestisce che in realtà non chiude il
socket immediatamente lo segna sporco e
poi lo mette in coda e poi c’è
un processo asincrono che viene
attraverso e chiude quelle prese più tardi
quel filo muore indovina quello che ottieni
un sacco di vestiti aspettare così sono come oh
questo è brillante come progetteresti
un avviso per quel diritto come sopra
lungimiranza giusta come intendo dopo il
l’edificio sta bruciando sei come l’uomo
dovremmo davvero mettere del fumo
rilevatori in quella doccia ma ma come
durante l’incidente o anche prima di te
non ci penserei nemmeno come si
non conosco alcuni detective nel
docce e noi eravamo come eccessivo io
guarda come va bene
sì, allora abbiamo iniziato a mettere insieme
la storia e noi eravamo come oh forse
era correlato al numero di connessioni
giusto perché avevamo la memoria insufficiente
cosa giusta così abbiamo notato che come
i vestiti conducono alla memoria
l’uso stava salendo così in un certo modo
senso giusto come oh forse il numero di
le connessioni sono un problema, quindi iniziamo
chiedendoci quante connessioni
possiamo sostenere ancora questo è come te
Conoscere brillante intuizione dopo il fatto
dovresti probabilmente pensarci
prima di andare ad aprire il tuo server fino a
avere tonnellate di connessioni ad esso perché
questa è la pianificazione della capacità 101 così
stiamo guardando e stiamo dicendo ok io
non lo vedo da nessuna parte in configurazione
la gestione impostata sembra che siamo
non impostarlo, oh, va bene, sistema
la metà è un diritto predefinito naturalmente
ogni sistema ha un valore predefinito ed è
probabilmente un difetto ragionevole sì sì
era un ragionevole sensato di default sensato
perché intendo andiamo a destra se la tua
il server non può gestire come 2,8 miliardi
connessioni o qualunque cosa tu sia probabilmente
sbagliarmi come me letteralmente
urlato quando ho visto questo ma no oh ma
è colpa mia, perché dovrei
sono stati l’invio di questo in modo da che cosa abbiamo
imparare durante tutta questa grande cosa che abbiamo
ho imparato alcune cose che abbiamo imparato
qualcosa su come le cause di radice non lo sono
sempre una cosa giusta quando dice il tuo capo
bene cosa ha causato questa cosa quando tu
elencare cinque cose che ha come nessun quello
è stata la cosa che ha causato non lo so
accelerazione di particelle non ne ho idea
come ciò che ha causato tutta questa roba a
capita tutto in una volta, giusto è la fede che è
Ragazzi, io non so, così è stato il
la coda dei messaggi cambia era l’operaio
discussioni che dicevano che stiamo andando
dalle dieci alle venti e poi sbagliare come
gestiamo il possibile TCP, ma quello
non significa che qualche altro evento
non avrei potuto creare un gran numero di
connessioni che non eravamo protetti
contro destra forse un auto-ridimensionamento
cosa sul numero di lavoratori con i suoi
messaggio di memoria insufficiente la memoria bassa sul
server dei messaggi è possibile ma vero
avremmo avuto la pressione della memoria se
non era per quel sistema errato
in anticipo probabilmente no o almeno no
così rapidamente che siamo una cosa
monitoraggio e tracciamento quindi abbiamo avuto un
idea di come fosse il nostro Headroom
cosa ha fatto la mancanza della connessione di Mac
impostazioni forse non è mai stato un
problema prima non proprio una buona scusa
quando il tuo capo ti sta urlando contro, ma io
pensa che la cosa che abbiamo imparato sia come
anche quando parli di sistemi
sotto il tuo controllo sotto il tuo controllo
devi difenderlo contro i cattivi attori
anche se quei cattivi attori siedono tre cubetti
lontano da te tutto bene devi
difenditi nessuno ne metterebbe nessuno
non dovrei dire che la maggior parte della gente non lo farebbe
metti fuori una API pubblica senza alcun tipo
di limitazione dei tassi che devi fare
qualcosa di simile dentro devi
fare in modo che si sta difendendo questi
sistemi contro tutti i cattivi attori in tutto
scenari cattivi non abbiamo davvero imparato a
quarta cosa ho avuto un momento difficile
modifica del modello
Sono solo sul fatto che sono davvero cattivo
alla vernice Photoshop e PowerPoint
e io ero come su un grande modello
ma ho pensato davvero difficile provarci
immagina davvero un quarto motore di proiettili
veloce tutto ciò che abbiamo appreso le metriche necessarie
giusto contesto così abbiamo parlato
sistemi e operanti nei sistemi a
diversi livelli proprio così a volte
la gente ha l’unico cruscotto gigante
che elenca tutto e ogni tanto
va bene, ma a volte è così
travolgente , sei proprio a posto
qualcosa ha parlato Gesù
c’è solo erba dappertutto, e
quando sei in uno scenario in cui tu
non capisco veramente quale sia il problema
ti aggrapperai a qualsiasi cosa che ti riguarda
Mi piace vedere come è stato normale
e poi è andato così e si
questo è il problema e sicuramente lo sei
come ti piacerebbe fare in quel modo
ping latenza o qualcosa del genere
cosa ti ha fatto pensare che si è schiantato
il database signore non lo so, ma questo
il grafico sembra davvero sospetto per te
tipo di dover avere per dare il tuo
il tuo contesto grafico giusto così uno dei
le cose che abbiamo visto fare erano
avere un punteggio KPI di altissimo livello
sistema che potremmo osservare molto rapidamente
a e regola dentro o fuori se il sistema era
in uno stato decente giusto non era un
punto preciso ma sai se lo sei
in un aereo proprio come non lo so
Diciamo che sono un pilota, ho un cuore
attacco o qualcosa che devi prendere in consegna
la cabina di pilotaggio da dove viene
sei tu a saltare nella cabina di guida a destra
e stai guardando un mucchio di quadranti
giusto e tu sai che tutti loro hanno
diversi livelli di dettaglio, ma il
un minuto ne vedi uno che è tutto così
andando dritto verso il rosso sei come
dovremmo guardare in questo giusto se lo siamo
andando a stendere in questa cosa cosa simile
non significa che non ne hai di più
grafici dettagliati ovunque ma qualcosa
per una brezza veloce
l’altra cosa è chiarire i punti di
dati così come abbiamo avuto un gran numero di
i messaggi nella coda dei messaggi all’inizio
come si correlano però per ordinare
volume è il volume dell’ordine solo ciao come
vecchi sono i messaggi qual è la media
lunghezza o età media del messaggio
tutto ciò che può farti sapere com’è
questo è il sottoprodotto di qualcos’altro
succede nel sistema o è il
problema reale e può aiutarti
rapidamente sorta di restringere il campo su quelle
cose registri registri registri registri
registrazione centralizzata delle puntate del tavolo
giusto qualcuno non ha centralizzato
registrando nel loro ambiente vedo I
ha chiesto di essere negativo perché voi ragazzi
non stanno alzando le mani comunque chi
ha centralizzato la registrazione nella propria
ambiente
okay, sì, la posta in gioco è giusta
perché senza questo nella distribuzione
ambiente con più server che sei
perdere tempo ssshe in ogni server e
guardando e poi se c’è qualcuno
guardando che ti stanno guardando come
vieni dentro come oh devo prendere i registri
giusto non vuoi essere quello che sai
si può essere anche quella persona in grado di farlo
separare il segnale dal rumore giusto
quindi stavamo parlando di tipo
eccezioni che stavano accadendo
durante tutto l’ evento, giusto essere
in grado di elevare alcuni errori da
quel casino è molto utile così veloce
la semplice cosa sporca che abbiamo fatto è stata darmi un
numero di errori in base alla classe
li sta buttando proprio così poi tu
vediamo velocemente oh c’è 389 che ci occupiamo
questa classe bene, allora la guardi e
ti rendi conto come sai che non lo so
è un errore normale che tu sempre
vedi così puoi dire oh okay posso
elimina questo dal mio pensiero
questo ragazzo sa che sto parlando di lui
come si, voglio dire che tua madre sta andando
di seppellire in questo, ma come trovare i modi
che puoi elevare rapidamente il segnale
dal rumore nei registri perché una volta
il problema si verifica i registri sono solo
rovesciare stanno contestando e tu sei
in fretta lo sai come questo
quella cavalcata delle metriche del cruscotto
stai andando a prendere qualsiasi cosa
e perdere un sacco di tempo è facile
perdere avvisi quando c’è un sacco di
attività in corso e la cosa che noi
abbiamo sorta di guardare era come immaginare
sei un pompiere e stai combattendo
un incendio è importante sapere che
un altro incendio è sorta nel garage
la porta accanto , proprio perché cambia il
panorama del problema che sei
combattere è la stessa cosa con gli avvisi
potresti avere molti avvisi che sono
sparando per lo stesso problema ma un nuovo
l’avviso potrebbe sparare a ciò che è pertinente
il problema che stai risolvendo nel nostro
caso è stato un errore di memoria basso se avessimo avuto
visto che potrebbe essere cambiato a
traiettoria di risoluzione dei problemi ma
perché si è perso nei log persi
il perso nel rumore noi completamente
perso
stitichezza – come se fosse qualcosa
è appena spuntato perché come te
Silenzio gli avvisi e probabilmente c’è
un suggerimento per quanto tempo è andato su di te
a tacere l’allarme e il silenzio di allarme
cancella e torna e le pagine
di nuovo o qualcos’altro di nuovo pagine così
fare in modo che hai modi per ordinare
di gestire e gestirne alcuni
le aziende si stanno orientando verso simili
identificando uno scriba ma un po ‘come
gestisce tutte queste cose ed è
prendendo appunti sai forse solo tu
disattivare tutti gli allarmi per tutti
tranne che per lo scriba ma penso che il
la cosa fondamentale è anche se è come oh
sì, è abbastanza facile da farti
stupito di come in realtà è complicato
a meno che non hai impostato un sistema per farlo
rapidamente in anticipo giusto perché ora
sei come l’uomo che devo rimuovere
gruppo in questo gruppo ho dimenticato quel gruppo
ma questo gruppo ha bisogno di farlo se pianifichi
in anticipo puoi facilmente
entra e dì a Boop che siamo in pericolo
modalità e solo Bob sta ricevendo gli avvisi
perché Bob ha disegnato la cannuccia corta
servizi come il grande panda aiutano a risolvere
questo ma qualcosa che ti abbiamo imparato io
pensavo ci fosse qualcosa come DevOps
roba cospargere che stavo andando a
essere in grado di indossare ciondoli e roba grossa
stava per apparire magicamente e
tutto sarebbe stato risolto
risulta che in realtà hanno bisogno di te
definire quegli avvisi perché non lo fanno
avere informazioni dettagliate sui tuoi sistemi e su come
le cose sono strutturate che lo sapevano
è stato un divertimento di tre mesi e tu ti conosci
non dedicare tempo ad esso, ma come grande
panda è una grande soluzione che tipo di
risolve quel problema e ce ne sono altri
piace , ma sappi che devi metterlo
lavorare in esso
quindi non pensare che stai andando a sapere
Non so istituire un processo di due settimane e
hai solo capito tutto
Allora, cosa ne parliamo parlato
l’anatomia del sistema come la complessità
aumenta man mano che il sistema cresce, camminiamo
attraverso il nostro show cacca molto personale
è stato emozionante la maggior parte dei fallimenti causati
da cambiamento da cambiamento umano così sempre
pensa a cosa cambia e hai accesso
a cosa cambia molto rapidamente nel tuo
L’ analisi della causa della radice dell’ambiente è
difficile a volte ci sono un numero
di cose che stanno accadendo in una volta
che mette il sistema in un predeterminato
che poi lo mise in uno stato che
consente che la condizione di errore si verifichi
a volte non è solo una cosa
a volte è una raccolta di cose
e devi sempre tenerlo a mente
per essere consapevoli di ciò che impariamo
dai il tuo contesto di avvisi aggregato
le puntate sui tavoli di accesso che hai assolutamente
per averlo e gestire i tuoi avvisi così tu
non perdere i cambiamenti di stato durante
l’interruzione è il mio parlare che diavolo
è che va bene ricordarsi di valutare il tuo
sessione che ho dimenticato di aver aggiunto tardi
questo è tutto
va bene e penso che Jeff abbia detto che lui
sarebbe disposto a prendere un paio di
domande si ho un paio di
domande e ora non sto usando l’ app
quindi se hai una domanda metti la tua mano
e chiedi se sei un vecchio modo
non posso vederne una là, possiamo vedere il
torna così enorme lampadina luminosa che mi risplende
così dannatamente caldo
quindi difendi il ritorno con a
pipeline di consegna continua davvero buona
se hai capito cosa c’è che non va
cosa c’è di sbagliato con il rotolamento in avanti se tu
capito cosa c’è di sbagliato assolutamente
niente ma poi sei un po ‘in un
diverso stato di gestione degli incidenti
giusto perché ora stai parlando
stai effettivamente distribuendo la correzione che
è la torta quindi se si può capirlo
rotolare in avanti con tutti i mezzi farlo ma noi
erano tipo come le persone sono come
quando un sacco di mani jazz
In realtà ho una domanda anch’io
mentre stanno aspettando altre due persone vogliono
chiedere loro
sembra che tu ne abbia avuto una buona quantità
dettagli sai vostra disposizione per mettere
questa roba insieme puoi parlare a
un po ‘ di quello che l’ autopsia
per questo tipo di incidente sembrava
certo sì, l’autopsia era così per
questo particolare incidente a causa del
impatto è stato un po ‘più dettagliato
di quanto potremmo normalmente fare così
siamo partiti con la stanza della guerra e noi
ha fatto il più presto possibile
subito dopo l’incontro era una specie di a
a tarda notte, quindi penso che abbiamo iniziato il
la prima cosa al mattino e il
la prima cosa che abbiamo fatto è stata camminare attraverso il
linea temporale proprio come quello che sappiamo
cosa sappiamo e quando lo sappiamo?
è successo e quindi in pratica ne abbiamo disegnato alcuni
cerchi attorno a cose che avevano una domanda
segna tutto intorno così abbiamo avuto
identificato come i passaggi che abbiamo preso
e gli avvisi che abbiamo ottenuto abbastanza facilmente
ma poi le domande si concretizzano davvero
il nostro ma perché è successo e come può
otteniamo più informazioni quindi è stato davvero
attorno a quella connessione fallita processo
che abbiamo detto bene , soffiamo questo
così una delle cose che facciamo è noi
dì cosa sono tutti diversi
sistemi che comunicano possiamo
soffia quei pezzi e poi convalida
che ognuno di quei pezzi stava funzionando
in modo corretto o efficiente sai così noi
stavo usando il cane da dati quindi c’era molto
di buoni uomini
è là fuori se sapessi cercare
loro anche le metriche su cui lavoriamo
dashboarding ma siamo stati raccolti
quindi ci sono un certo numero di volte in cui noi
detto oh bene abbiamo questa metrica per
il pool di connessioni HTTP prendiamo a
guarda che quindi è davvero presa
prendendo il sistema in cui lo infrange
i suoi elementi e poi la perforazione in ciascuno
di quegli elementi fino a quando non ci siamo inventati
una storia e poi una volta ci siamo inventati un
storia era una questione di dire va bene
è questo plausibile come possiamo cercare di
dimostrarlo ed è davvero difficile a volte
ricreare situazioni in una produzione
ambiente che sono in una prova
ambiente ma se riesci a mettere insieme
una storia avvincente che probabilmente puoi mettere
insieme una serie di criteri di prova, quindi se
succede di nuovo , puoi provarlo
era il caso o no e in questo caso lo è
era semplice come è morto questo thread
Esiste ancora e siamo ancora
generando giorni di attesa ravvicinati bello fantastico
ok un’altra domanda qui rispetto a
la cronologia nel post-mortem fai tu
ragazzi o trovate che siete solo base
cose fuori dai tempi dei tronchi o vai a
la chat registra le email da provare e anche
delineare il Delta tra un evento
si verificano e quando la squadra lo sa
e comunica che in realtà è a
combinazione dei due sai che siamo
descritto sempre sta dettando quando
qualcuno ha riferito una cosa e poi più tardi
riempirà quello con l’avviso così
in un paio di scenari non questo
incidente particolare ma abbiamo avuto
scenari in cui è come il cliente
il servizio ha segnalato X il nostro primo avviso
non ha sparato fino a 15 minuti dopo cosa
è stato che il cliente X ha visto e come può
facciamo un allarme intorno a quello e questo è
solo tu conosci parte del processo di
iterando e sempre migliorando ma
hai sicuramente bisogno di legarli
cose insieme perché è molto facile
pensare che stai avvisando è dentro
posto ma non ti rendi conto che qualcuno
è stato incontrato un problema prima e
anche l’ altra cosa è non sempre
accetta la tua comprensione conosciuta di cosa
è successo qualcosa che vorresti
sollecitare più informazioni da persone o
altri utenti nel sistema per dire hey
stavi verifica questo problema, sì
Ho avuto questa strana cosa intermittente ma
Vorrei solo uscire e accedere nuovamente e
è andato via era come se potesse
sii il seme di questa cosa che è
iniziando a manifestare non in questo
caso particolare ma abbiamo sicuramente avuto
che in altri casi dove una volta ci allargiamo
il web per così dire
le persone sono come oh sì, stavo avendo
problemi che stavo lavorando da casa e io
notato questo, ma ho appena pensato che fosse
VPN perché la VPN fa schifo perché tu
avere più una domanda giusta anche qui
ma mi chiedo se puoi elaborare un
un po ‘più ho parlato dello scriba
ruolo e non so se tutti corrono
i loro incidenti così così se tu
menziona cosa cosa chiarisci cosa tu
significava che era sicuro quindi che cos’è un incidente
si sta verificando e questo lo sai bene
molto strappato da Google SAE
manuale quando si verifica un incidente
proviamo ad assegnare ruoli particolari a
le persone hanno ragione, quindi c’è l’incidente
comandante responsabile per una specie di
guidando l’intero processo dell’incidente
c’è un altro ruolo dello scriba
e lo scriba è una specie di responsabile
per accertarsi che stiano documentando
tutto ciò che si è verificato quando
fa l’allarme quando abbiamo intensificato
a così e così quando abbiamo deciso di tirare
il grande interruttore rosso e chiudi il sito
giù descrivi una sorta di documentazione di tutti
che poi hai questo altro ruolo
per il conflitto di risorse in modo che se il
comandante incidente decide che abbiamo bisogno
per attirare loro non abbiamo per te
sanno capire chi sta per farlo
il responsabile delle risorse di internet dice hey
avevamo bisogno di dev e loro dicono ok io sono
andando a correre e afferrare il dev e poi
hai le persone che sono in realtà
risolvere il problema sotto il
direzione del comandante dell’incidente
grazie per la presentazione um devo
dare cosa hai fatto per prevenire è
capita in futuro di mettere in Mac
impostazioni di connessione ah
frutta a foglia bassa sì, quindi abbiamo inserito un
Impostazione della connessione Mac che avevamo già
quella connessione allerta e noi mai
ha davvero capito dove è arrivato
da perché era una specie di interessante
di sapere che nessuno della squadra aveva
ricordato in realtà mettendo questo in ma
abbiamo sfruttato un po ‘questo e poi
perché stavamo usando la registrazione aggregata
stavamo usando Splunk potremmo inviare un
avviso su particolari fili che ci muoiono
non abbiamo avuto un buon modo al
tempo anche se posso prendere gli strumenti da fare
ora non abbiamo avuto un buon modo al
tempo di controllare e vedere perché se il
thread muore viene riavviato giusto è
solo questa condizione oom che l’ha fatta
è difficile iniziare così abbiamo allertato
su questo filo muore
in particolare, che in realtà era raro
scenario siamo stati solo abbastanza fortunati da
è successo due volte ma ne abbiamo uno
avvisare per tale eccezione minaccia quindi è
più rilevamento con un po ‘di a
una piccola oncia di prevenzione va bene
grazie mille Jeff e se vuoi
per sentire altro da Jeff mi sono dimenticato di
menzionalo stamattina ma tutto il
oratori dalla pista oggi
per la maggior parte con una eccezione sono
facendo il podcast domani così sarai
chiacchierando di più su di te conosci l’ incidente
risposta mentre si occupa di tutto il
la tristezza procederà o la tristezza insieme
ma quando è finita si ottiene l’alta cinque
giusto e tu sei come sì, l’abbiamo fatto
quindi sì, grazie mille e una volta
di nuovo rinunciare a Jeff
[Applausi]

Please follow and like us: