Migrar sus datos de un servidor Linux a otro es simple solo si ha estado ejecutando un servidor simple. Si tiene muchos servicios interdependientes o una configuración muy personalizada, volver a crear el entorno desde cero es un proceso complicado. El proceso es menos complejo si puede copiar solo los archivos que necesita sin preocuparse por sobrescribir los archivos del sistema específicos del nuevo servidor.
Este artículo describe cómo prepararse para una migración completa y las herramientas que facilitarán el trabajo.
Si sabe que necesita copiar más que unos pocos archivos de datos, este es el método más sencillo.
Preparando el nuevo servidor
Confirme que se puede acceder al servidor de destino a través de SSH desde el servidor de origen. Además, habilite los inicios de sesión raíz a través de SSH en el servidor de destino (en /etc/ssh/sshd_config file) para que rsync pueda reemplazar los archivos del sistema y de la aplicación.
Verifique que rsync esté instalado tanto en el servidor original como en el servidor de destino (el nombre del paquete suele ser rsync). Ejecute el comando which rsync
para verificar que esté instalado donde pueda ejecutarlo.
Es más probable que una migración completa tenga éxito si el servidor de destino es lo más similar posible al servidor original. Deben usar la misma distribución, arquitectura de sistema, versión de kernel y versiones de software.
Distribución
Ejecute la misma distribución en cada servidor e intente hacer coincidir la versión de la distribución. La ubicación de los archivos del sistema no siempre es consistente en las diferentes distribuciones y, a veces, las nuevas versiones de una distribución mueven algunos archivos. Si realiza una copia directa sin coincidir con la distribución, es posible que tenga un servidor inestable.
Si desea combinar la migración de su servidor con una actualización de distribución, complete la migración antes de realizar la actualización.
Arquitectura
Ambos servidores deben usar la misma arquitectura. Puede verificar la arquitectura en servidores Linux usando uname -a
comando:
$ uname -a
Linux demo 2.6.35.4-rscloud #8 SMP Mon Sep 20 15:54:33 UTC 2010 x86_64 Quad-Core AMD Opteron(tm) Processor 2374 HE AuthenticAMD GNU/Linux
Después de la fecha (que finaliza en UTC 2010
en el ejemplo) es un código que representa la arquitectura de su sistema. En este caso, x86_64
indica un sistema x86 que ejecuta una arquitectura de 64 bits. Si en su lugar ve i686
para la arquitectura, su sistema es de 32 bits.
Si las arquitecturas no coinciden, los programas copiados no se ejecutarán. Por ejemplo, el software compilado para 32 bits generalmente no funciona bien en un sistema de 64 bits. Si las arquitecturas no coinciden, debe migrar paquete por paquete.
Versión del núcleo
Intente usar la misma versión del kernel en ambos servidores. A veces, un kernel nuevo agrega o cambia funciones, por lo que un kernel diferente puede complicar la migración.
Puede verificar la versión del kernel ejecutando uname -a
comando, como en la sección anterior. La versión del kernel aparece después del nombre del host, por lo que en el ejemplo anterior, la versión del kernel es 2.6.35.4-rscloud
.
Por lo general, no es una buena idea copiar núcleos entre servidores. Si compila o instala su propio kernel (en lugar de utilizar uno proporcionado por su servicio de alojamiento), es más seguro realizar ese proceso manualmente en el servidor de destino.
Versiones de software
Intente hacer coincidir las versiones de cualquier software que ya esté instalado en el destino con las versiones que está ejecutando en el servidor original. La forma más fácil de asegurarse de que ambos sistemas estén ejecutando las mismas versiones de cualquier paquete común es ejecutar una actualización a través de su administrador de paquetes antes de la migración.
Optimizar antes de copiar
Cuantos más archivos tenga en el servidor de origen, más tiempo llevará migrar al servidor de destino. Elimine cualquier archivo temporal o de caché que no necesite, o agregue sus directorios al archivo de exclusión. Verifique el tamaño de sus archivos de registro y, si puede, archive o elimine los registros más antiguos.
Mucho de lo que sucede cuando cambia el tamaño de un servidor virtual es similar a lo que sucede cuando usa rsync para migrar de un servidor a otro. Como resultado, la mayoría de los consejos del artículo sobre cómo acelerar rsync también se aplican aquí.
Siguiente paso
Ha comparado los servidores de origen y de destino entre sí y ha preparado sus sistemas de archivos para la copia.
Para obtener información sobre cómo ejecutar rsync manualmente, consulte Acelerar rsync al migrar un servidor Linux o Hacer una copia de seguridad de sus archivos con rsync.