Ci sono molti potenziali problemi con ciò che stai cercando di fare e, naturalmente, come sai, sarebbe meglio portare il server offline e clonarlo mentre nessun dato viene archiviato dinamicamente.
Tuttavia, ciò che cerchi di fare è del tutto plausibile, come ho già fatto prima. Se lo si utilizza dd
è possibile clonare l'intero server a livello di blocco su un'altra unità o un altro server. Ci vorrà comunque qualche configurazione aggiuntiva sul nuovo server, e probabilmente non sarai in grado di spegnere semplicemente l'altro e quello nuovo. Per consentirci di capirlo, dobbiamo sapere alcune cose sull'hardware e sul software del tuo server.
In primo luogo, al fine di determinare la migliore strategia per i dati, sarebbe utile sapere cosa viene aggiornato regolarmente. Hai un server SQL che si aggiorna in modo dinamico ma ha contenuto statico? In alternativa, hai un team di sviluppatori su un sistema di sovversione come Git che invia costanti aggiornamenti di dati ai tuoi contenuti? A seconda dell'aggiornamento, determinerà il miglior modo di agire.
Se, ad esempio, è solo l'SQL che si aggiorna regolarmente, è possibile migrare su un nuovo server mentre quel server è attivo nel modo seguente:
dd
per clonare tutti i dati sul nuovo server.
- Inizia a configurare il nuovo server, potrebbe essere necessario un po 'di lavoro soprattutto se si tratta di hardware diverso, ma potrebbe comunque essere più veloce della configurazione da zero.
- Potrebbero inoltre essere necessarie alcune modifiche al DNS, poiché non è possibile utilizzare lo stesso DNS su un altro server se è necessario lavorare sul secondo server mentre il primo è ancora attivo.
- Dopo che il nuovo server è completo e in esecuzione in modo indipendente, eseguire un backup finale del server sql sul server originale e importarlo nel nuovo server.
Potrebbe essere necessario portare temporaneamente offline il server originale per assicurarsi di non perdere alcun dato. In alternativa, per avere tempi di inattività pari a zero, è possibile rendere attivo il secondo, puntare i DNS sul nuovo server e quindi aggiornare manualmente tutte le voci DNS sul nuovo server, in modo da ridurre effettivamente i tempi di inattività. Questo è più fastidioso di qualche minuto di downtime per il backup di sql e il ripristino sul nuovo server, ma può essere necessario per zero downtime.
Questo ovviamente è solo un esempio di caso d'uso e, a seconda della configurazione e di diverse variabili, potrebbe essere necessario creare la propria strategia per la migrazione in base al caso specifico.
L'altro problema riguarda la configurazione hardware del server. Il nuovo server è identico al 100% nell'hardware al vecchio server? In tal caso, l'installazione è più semplice. Tuttavia, se invece è una configurazione hardware totalmente diversa, potrebbe essere necessario implementare una strategia diversa che consiste semplicemente nell'impostare il secondo server in anticipo, quindi eseguire il backup di tutti i dati e i database sql su il primo server e migrarli manualmente, modificando la configurazione come desiderato.
La migrazione dei server non è affatto banale e per avere successo, è necessario avere una conoscenza approfondita dei server o del personale che ha gli stessi. In ogni caso, si consiglia vivamente di eseguire immediatamente un backup completo e di memorizzarlo su una terza fonte, anche sul computer locale, in modo che se si verifica lo scenario peggiore (entrambi i server si bloccano e muoiono irreparabilmente), si ha ancora un altro copia dei tuoi dati con cui ricostruire i tuoi server.
Spero che questo ti aiuti, e buona fortuna con lo spostamento del tuo server!