Domanda

All'inizio del lavoro in più team, ho incontrato più gestori dell'infrastruttura che hanno istituito una politica di riavvii settimanali del server. Come sviluppatore, sono sempre stato contrario alla politica - sembra che questo sia un trucco per aggirare i bug del software e le instabilità hardware, invece di correggerli.

Quali sono le opinioni della gente, i punti positivi e negativi riguardo alla politica?

È stato utile?

Soluzione

Se riavvii i tuoi server di tanto in tanto, puoi essere sicuro che torneranno indietro. Sebbene il settimanale sembri un grave sovraccarico, ho riscontrato questo problema su macchine Linux con tempi di attività lunghi.

Qualcuno non si è preoccupato di impostare un servizio critico per l'avvio automatico all'avvio. O l'ordine dei servizi in arrivo è sbagliato. Oppure qualcuno ha aggiornato le librerie, aggiunto / rimosso il software, ecc. E l'eseguibile non funziona più (è stato avviato con le vecchie librerie e ha continuato a usarle; ora viene visualizzato un errore di linker dinamico). Oppure risulta che il servizio A dipende dal servizio B e il servizio B dipende dal servizio A (oops).

Ad un certo punto, quando almeno lo desideri, dovrai riavviare. Il colo lascerà cadere il potere su di te; gli alimentatori del server non funzioneranno; qualcuno tirerà il cavo / premi il pulsante di reset sul server sbagliato; ecc. Ora, quando puoi permetterti meno tempi di inattività, il tuo server insanguinato non tornerà su.

Proprio come il software, le configurazioni di sistema devono essere testate. La frequenza con cui è necessario eseguire questo test dipende dalla modalità di gestione delle caselle.

Altri suggerimenti

Questa è una politica folle.

Ecco perché:

  • Se è necessario riavviare un server settimanalmente (e in qualche modo si aggiunge alla stabilità della propria infrastruttura), si sta coprendo il vero problema con un server o il suo software. Una perdita di memoria? Un cattivo guidatore? La soluzione a questi problemi è di risolverli , non di coprirli con una politica pigra.

  • I server vengono spesso riavviati per gli aggiornamenti, almeno nel mondo Windows. Il riavvio per gli aggiornamenti critici del kernel avviene comunque.

  • I server di database memorizzano nella cache molte informazioni nella RAM. Al riavvio del server, questa cache si svuota e diventa molto fredda. Supponendo di avere un tipico modello di utilizzo, una cache fredda e vuota comporterà prestazioni lente per gli utenti quando tentano le loro query dopo un riavvio. potrebbe anche aumentare il tempo necessario per eseguire alcuni tipi di manutenzione come i backup perché potrebbe essere necessario accedere di più al disco.

  • I tuoi server non funzionano! Le finestre di manutenzione per i backup e altre cose si accorciano perché il server è spento per un periodo di tempo diverso da zero. Potresti anche dover dire ai tuoi utenti che avrai dei tempi di fermo, a seconda dell'architettura dei tuoi sistemi.

  • Supponendo che abbiate una sorta di sistema di notifica per gli avvisi, dovrete configurarlo per ignorare la finestra dei tempi di inattività. Questo può mascherare i problemi che si verificano nel momento in cui il tuo server si riavvia e si aggiunge alla quantità di configurazione che dovrai fare sui tuoi server.

Detto questo, i riavvii a volte sono utili come ultima risorsa su risorse sulle quali non si ha necessariamente il pieno controllo su (vecchi software scritti dal fornitore, "scatola nera") dove esplicitamente prescritti dal fornitore, ecc. .). Ma questo dovrebbe essere gestito caso per caso, e non con un'ingenua politica generale.

Scuse per rispolverare un vecchio filo.

Penso che a tutti manchi il punto, in particolare il duro riavvio? Preferirei vendere il mio commodoro! Amministratori Nix.

Il punto è che una finestra settimanale dovrebbe essere PROGRAMMATA. Ciò non significa che debba essere usato, in realtà la preferenza è che non viene utilizzato in quanto inevitabilmente ad un'ora abbandonata del mattino.

Ma se è lì, puoi usarlo.

Personalmente, penso che un riavvio trimestrale sia una buona idea - può darti un avvertimento sui problemi (hardware e software) e, come ha sottolineato l'altro poster più lungimirante, ti rende consapevole dei cambiamenti che impediscono il regolare avvio che diventa evidente solo dopo un riavvio. Invece di far sorgere la situazione dopo un'interruzione di corrente di 4 ore quando si prendono altre 2 ore per far apparire la scatola diventa davvero imbarazzante ....

Ci sono altri aspetti positivi ...

  • Ottiene la gestione utilizzata per i riavvii e hai la loro sicurezza quando in realtà hai bisogno di un riavvio (ad esempio spostandolo fisicamente). Se non riavvii mai una scatola, il tuo manager sarà piuttosto dannatamente nervoso quando dici che deve essere riavviato dopo 4 anni e senza tempi di inattività.

  • Tu stesso ti abitui ai riavvii e sai cosa può \ sbagliare quando è offline.

  • SAPI quanto tempo impiegano i riavvii, quindi quando torna indietro e impiega 10 minuti in più del solito, sei direttamente nei registri.

  • Se domani verrai abbattuto da un autobus, c'è una documentazione CORRENTE (non vecchia di 4 anni) su cosa succede quando si verifica un riavvio (supponendo che tu sia un buon amministratore e annoti le cose)

  • Un riavvio di 30 minuti al trimestre si adatta bene agli SLA di uptime del 99,9%.

  • Finalmente cancella le ragnatele proverbiali.

Per rispondere ad alcuni punti CONTRO il riavvio regolare ..

  • Quello su come nascondere un driver difettoso \ perdita di memoria ecc. è divertente. Come fai a sapere se si tratta di una perdita di memoria \ driver non valido a meno che non riavvii il server? Non solo, ma cosa succede se non riesci a risolverlo nei tempi di inattività pianificati? Se hai una finestra programmata settimanalmente non è un problema! Ci riprovi la prossima settimana ....

  • Sistema di notifica: se si dispone di una finestra pianificata, è possibile impostare un'eccezione pianificata. Se il tuo software \ script non fa questo, allora suggerisco software moderno \ migliore scrittura di script.

  • Per quanto riguarda la finestra delle eccezioni pianificata che nasconde i problemi che "si verificano durante la finestra delle eccezioni pianificata" è semplicemente risibile. Le altre statistiche del tuo server mostreranno questo problema molto rapidamente se le rivedi affatto.

Ovviamente una politica generale non è consigliata e dovresti avere dei criteri per le eccezioni (ad es. spazio su disco oltre una certa dimensione ecc.)

Detto questo, la linea di fondo è solo perché il tuo server non dovrebbe aver bisogno di essere riavviato, è incredibilmente ingenuo pensare che non dovresti riavviarlo ....

Modifica

Non sono sicuro di averlo chiarito abbastanza, ma il riavvio NON dovrebbe essere usato per intonacare un problema. La finestra dovrebbe essere settimanale in modo da avere ripetuti tentativi di RISOLVERE il problema, non "conviverci".

Il riavvio come metodo di gestione di un problema su un server è un sysadmin scadente. Nulla viene appreso e si perde tempo prezioso delle persone e (giustamente) si abbassa l'opinione del management su di te.

Il mio punto è

  • È difficile assicurarsi di risolvere un problema senza una finestra di manutenzione settimanale accettata, programmata in atto.
  • Con una finestra settimanale hai una continua opportunità di sistemare le cose correttamente ed evitare la situazione in cui hai una mezza dozzina di soluzioni alternative truccate su altrettanti server diversi.

Risposta alla mia domanda: uno dei vantaggi che vedo dalla politica è quando viene applicato a un cluster di server e i processi vengono sottoposti a failover da un nodo a un altro. In questo modo tutti i nodi vengono costantemente testati per la corretta installazione del software.

I nostri server sono tutti server Linux al lavoro e non abbiamo mai riavviato e non abbiamo avuto problemi. Concordo sul fatto che si tratta di un hack al massimo e penso anche che abbia probabilmente a che fare con la prima risposta che le persone erano solite dare sempre quando supportano i problemi di Windows: " Hai riavviato il tuo computer? & Quot;

Ora sul perché potrebbe essere utile, potresti avere applicazioni che entrano in uno stato strano o che hanno perdite di memoria che un riavvio potrebbe risolvere.

Un grande aspetto negativo per me è che devi programmare i tempi di inattività settimanali per i server. Per alcuni non è un problema e per altri è un grosso problema.

Ovviamente se l'origine di un problema non può essere risolta in modo tempestivo, deve essere risolto. Pianificare un riavvio per risolvere il problema è una soluzione semplice per salvare l'azienda se funziona.

Certo, fa male mentalmente e non dovrebbe essere necessario e sarebbe meglio lavorare contro una tale soluzione, specialmente se si ha il controllo del software problematico o nella posizione di dare una pacca ai produttori per una soluzione o semplicemente sostituiscilo. Ma se no ..?

Ricordo di averlo fatto per i server in una farm Citrix, alla fine sono stati riavviati ogni notte con uno script mezzo complicato in attesa che gli utenti si disconnettessero, bloccando gli accessi a server specifici e quindi riavviando quelli gratuiti. Il motivo era una vecchia applicazione client 4GL a 16 bit di cui semplicemente non potevamo liberarci e che tendeva a ridurre la reattività complessiva dell'utente dopo alcuni giorni di attività.

Sono d'accordo però che per lo più sembra essere basato sul fatto di non essere abbastanza intelligente da capire la causa e risolverla - non tutti sono esperti nella manutenzione o motivati ??come vorremmo.

È davvero un hack ma potrebbe essere l'hack più efficiente. È un problema di tipo 80:20 in cui è possibile risolvere l'80% del problema con il 20% dello sforzo. Se riesci a sopravvivere ai tempi di inattività o i tempi di inattività ti costano meno che risolvere effettivamente la causa principale, questa è una buona soluzione. Personalmente non mi piace, ma è solo perché non è una soluzione pulita.

Un'altra possibilità da considerare è che in alcuni ambienti, come i negozi al dettaglio aperti 24 ore al giorno, un "negozio vicino" evento in modo che i server possano essere aggiornati, sottoposti a backup, ecc.

Anche se i server devono eseguire "24x7", sono davvero offline per almeno alcuni minuti ogni giorno.

Ciò fa effettivamente riavviare un server ogni giorno, anche se lo store è ancora operativo quando succede.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top