Vurder en hodeløs server som denne: En typisk x86-boks på et eksternt sted, som du kan initialisere eksternt med et lager – si – Ubuntu-bilde. Etter at den er initialisert, kan du bare logge inn via ssh – eller tilbakestille den eksternt, dvs. du kan ikke få tilgang til BIOS eller oppstartsadministratoren (si Grub 1).

Kanskje er det en slags KVM tilgjengelig men bruk av KVM er veldig dyrt, og du må bestille det på timebasis.

Gitt dette scenariet kan man bli paranoid om oppstartsproblemer. For eksempel:

  1. Hva om en kjerneoppgradering mislykkes?
  2. hva med en fsck-ledetekst i den tidlige oppstartsprosessen? Ssh er sannsynligvis ikke tilgjengelig ennå …

Er det noe andre gotchas å passe på?

For kjerneoppgraderinger konfigurerer jeg grub (den eldre) slik at menu.lst innledningen inneholder

default saved fallback 2 # counts from 0 

og den første oppføringen ender med:

savedefault fallback 

Den første oppføringen er den oppgraderte kjernen, og den tredje er en kjent fungerende. Se også grub manual seksjon om reservestart .

Jeg endret oppstartsskriptet /etc/rc.local (på et Debian-lignende system) slik at standardinnstillingen tilbakestilles i tilfelle en vellykket oppstart:

grub-set-default 0 

Dette grub-oppsettet fungerer, men f.eks på Ubuntu er dette ikke standard, og man må justere menu.lst manuelt etter hver kjerneoppdatering.

Jeg leverer

panic=60 

som kjerneparameter slik at f.eks i tilfelle feil root= parameter eller ødelagt kjerne, starter systemet automatisk på nytt i tilfelle en feil.

Om fsck-problemet er jeg ikke sikker på hva som er best måten er. På Debian-lignende systemer kan du stille

FSCKFIX=yes 

i /etc/default/rcS, som forteller fsck å reparere automatisk som standard .

Men hvis den automatiske reparasjonen mislykkes, får jeg fremdeles en melding om at jeg ikke kan få tilgang til eksternt?

Alternativt kan jeg bare deaktivere fsck-sjekking via null i det sjette kolonne av /etc/fstab – i tilfelle en fs-feil vil da bare initialisere systemet på nytt og gjenopprette sikkerhetskopiene – og dermed unngå alle fsck-problemer?

Kommentarer

  • Veldig bra spørsmål. En bare metal-server uten en ekstern konsoll eller en dyr er et stort problem.

Svar

Seriøst, hvis leverandøren din ikke tilbyr gratis (eller i det minste billig) manuell assistanse i ekstreme tilfeller, er det på tide å bytte. Ellers tror jeg at du er ganske god med oppsettet ditt.

Når systemet ditt er så ødelagt at fsck ikke kan fikse det, er det ikke mye annet å gjøre, annet enn en fullstendig installering på nytt. Jeg har faktisk ikke sett dette skje med mindre det var en alvorlig maskinvarefeil.

En ting å merke seg. For en maskin som denne, velg en stabil distribusjon (Debian, RHEL, SLES), og definitivt bare oppgrader etter en passende lang periode (ny versjon stabilisert i minst 6 måneder).

Svar

Du bør være på utkikk etter en hosting leverandør som vil tilby seriell over-ssh-tilgang og konfigurere Linux-installasjonen din til å bruke (relevant) seriell port som konsollen (hvordan du gjør dette avhenger av om systemet bruker oppstart eller sysV-type initialisering). Vær oppmerksom på at det er BIOS tilgjengelig som vil snakke med en seriell port i stedet for den innebygde skjermenheten. Men vanligvis de kommer bare med kostbar maskinvare.

Du må også fortelle grub for å bruke den serielle porten hvis du vil kontrollere den via en DTE .

Svar

Noe du kan se på er å lage en tilpasset initrd som vil omfatte dropbear (kjører på en annen port, selvfølgelig), nok logikk for å få nettverket til å gå og kanskje en måte å laste inn noen gjenopprettingsverktøy om nødvendig. Basert på dette kan du deretter lage en gjenopprettingskjerne-konfigurasjon som vil lastes opp med nettverksfunksjon og tillate deg å ssh in, slik at du kan komme tilbake til systemet og prøve å gjenopprette.

  • Ja, høres ut som et ganske prosjekt. Jeg kunne til og med tenke meg å lage et lite Linux-system som alltid startes først og fungerer som en boot manager (samtidig som jeg gir ssh -access og screen ) – den kan da starte den virkelige kjernen via teknikker som en.wikipedia.org/wiki/Kexec . Eller man kan se på servere som kommer med coreboot.org i stedet for noe gal BIOS fra 80-tallet. Men sikkert, alt dette er ingenting du pålitelig kan sette opp og vedlikeholde på få timer – på dette tidspunktet med en stabil distribusjon.
  • Ser ut til at du ' vil kunne skimme litt av innsatsen ved å se på denne siden

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *