Come posso installare nuovamente il server di produzione live con tempi di inattività minimi?

Ho bisogno di reinstallare Ubuntu Server in esecuzione su VMWare VPS. Il modo più semplice sarebbe sicuramente quello di fare una nuova installazione da mini ISO. Ma è un server di produzione e non posso permettermi un'ora o più dei tempi di inattività. È ansible reinstallare con quasi nessun tempo di inattività (ad esempio, 15 minuti circa)?

In altre parole, cerco un modo per aggiornare il rilascio di OS sul server live Ubuntu senza notevoli tempi di inattività. Trasferisco manualmente tutte le impostazioni e i dati.

Fatti del server:

  • Ubuntu Server 10.04.2 LTS amd64
  • VMWare VPS con accesso alla console (posso montare un'image ISO locale)
  • Unità singola:
    • /boot , 92 MB su sda1 @ ext4
    • / , 1,5 GB su root @ ext4 di LVM
    • /srv , 19 GB su data LVM @ ext4
    • swap su LVM swap

Non ho esperienza con gli strumenti di sistema di file Linux ( chroot e simili). Tuttavia, suppongo che un piano d'azione simile a quello che segue potrebbe funzionare (l' host è macchina VPS target, l' upgrade è nuovo sistema operativo):

  1. Installare l'aggiornamento del sistema operativo

    Installare un nuovo Ubuntu Server sulla Virtual Box locale.

  2. Servizi di trasferimento e impostazioni

    Trasferire servizi e impostazioni dal sistema operativo corrente per aggiornare il sistema operativo. Conservo la configuration più porttile ansible e utilizzare etckeeper per tenere traccia delle modifiche alla configuration.

  3. Copiare l'aggiornamento del sistema di file OS per ospitare

    Ho intenzione di utilizzare rsync per copiare l'aggiornamento del sistema di file OS per ospitare. Ma where metterlo nell'host? Ho pensato:

    • una partizione separata; Avrei bisogno di ridurre i data LVM sull'host e preparare una nuova partizione per il sistema di file OS di aggiornamento.

    • un'image di file; Creerei un'image di file nella partizione di host /srv , montarla sull'host (non sapere come ancora) e copiare l'aggiornamento del sistema di file OS in esso.

    • una cartella; Trasferire lo specchio nella cartella della partizione dell'ospite /srv . Questa sarebbe l'opzione migliore IMO, se ansible.

  4. Sostituire il sistema operativo corrente con il sistema di file OS di aggiornamento

    Sono consapevole che dipende da where lo specchio è stato trasferito. In each caso dovrebbe essere ansible passare innanzitutto a testare la funzionalità e sostituire i file system in seguito. Posso permettermi di riavviare e utilizzare la console di recupero o il mini ISO di avvio per questo.

I punti 3 e 4 sono i punti interrogativi principali su cui ho bisogno di istruzioni. Se potete cambiare consiglio al mio piano o ad un approccio diverso, per favore, procedi. Il riferimento a istruzioni o documentazione sarebbe apprezzato.

Modifica: Come suggerito, vorrei andare con una macchina a clone se non c'era altra soluzione.

  • Modalità sicura di PHP = rischi di fuori di un VPS, riguarda tutti i siti web se "Off"
  • Tentativo di hack sul VPS, come proteggere in futuro, cosa stavano cercando di fare?
  • Apache crolla VPS - ha bisogno di ridurre l'utilizzo della memory
  • Linode vs VPS.net vs altre soluzioni
  • Quale configuration VPS sarebbe meglio?
  • Il server Xen consuma less memory di openvz?
  • Posso utilizzare EC2 come random Unix shell?
  • Ping normale tra VPS di un hoster
  • One Solution collect form web for “Come posso installare nuovamente il server di produzione live con tempi di inattività minimi?”

    Non so cosa sia la tua relazione commerciale con il tuo provider VPS, ma se questo fosse il mio ambiente VMWare, semplicemente clonerò la produzione VM corrente, avrei portto il clone con un indirizzo IP adiacente, applicando le modifiche / aggiornamenti, spostandomi su qualsiasi cosa cambiato dalla produzione dal momento della clonazione, prova il clone aggiornato poi quando felice l'interruttore sugli IP e alla fine uccide l'originale VM.

    Suggerimenti per Linux e Windows Server, quali Ubuntu, Centos, Apache, Nginx, Debian e argomenti di rete.