Copie el host Linux en un nuevo hardware

Copie el host Linux en un nuevo hardware

Necesito realizar migraciones de host a host de hardware antiguo a hardware nuevo. En concreto, desde HP BL460G7 hasta HP BL460G8. Tanto el servidor antiguo como el nuevo tienen 2 unidades de 2,5" de 600 GB y están configurados para RAID1. Puedo permitirme un tiempo de inactividad de 30 minutos por servidor.

Hay cuatro servidores para migrar, el más pequeño tiene un total de 120 GB asignados en volúmenes lógicos y el más grande tiene 510 GB asignados. Tres servidores ejecutan RHEL5 y uno ejecuta RHEL6.

He estado devanándome los sesos sobre cómo hacer esto dentro del plazo establecido y sin destruir el sistema operativo ni los datos críticos.

Mi único pensamiento es este:

  • retire una unidad del servidor anterior (el servidor está encendido)
  • retire ambas unidades del nuevo servidor (el servidor está apagado)
  • Retire la unidad G7 del carrito y déjela a un lado.
  • Retire la unidad G8 del carrito e instálela en el carrito G7.
  • instale la unidad G8 en el carrito G7 en el servidor antiguo
  • espere a que el controlador RAID reconstruya la matriz RAID1
  • cuando termine, apague el servidor antiguo
  • quitar la unidad G8 en el carrito G7
  • Instale la unidad G8 en el carrito G8 e insértela en G8 (una sola unidad instalada)
  • arrancar el servidor G8
  • espere a que se inicie el sistema operativo
  • cuando el sistema operativo haya arrancado, inserte la unidad restante
  • espere a que se reconstruya la matriz RAID

¿Suena esto sensato?

EDITAR: El RHEL5 es RHEL5.10 y el RHEL6 es RHEL6.6

También debería haber notado que dos de los sistemas son parte de un clúster activo de cuatro nodos que realiza una replicación casi constante de "eventos" de aplicaciones (es parte de un sistema de infraestructura crítica). Disponemos de copias de seguridad pero sólo las utilizamos en caso de fallo total del sistema.

Pruebas anteriores han demostrado un 'dd' máximo entre sistemas de alrededor de 50 MBps, lo cual es demasiado lento.

EDITAR: Iba a confiar en kudzu para recoger y encargarse de los cambios de hardware.

Respuesta1

Cabe señalar que es posible que sean necesarios otros pasos, según la distribución. En particular, los conductores (gracias por señalarlo @ewwhite).

  1. Inicie el nuevo servidor desde livecd/usb.
  2. Prepare particiones y bloque de arranque en las nuevas unidades.
    • Dependiendo de la configuración, esto se puede hacer copiando MBR/bootblock.
  3. Crea los sistemas de archivos.
  4. Realice una rsync del servidor antiguo al nuevo.
    • Es posible que desees hacerlo nuevamente para ver cuánto tiempo tomará el rsync de seguimiento; si dura menos de 30 minutos, continúa.
    • Este es el momento en el que puedes intentarlo si se inicia el nuevo sistema. Solo tenga cuidado de no causar conflictos de IP (u otros).
  5. Apague todos los servicios que escribirían en el sistema de archivos.
    • Preferiblemente reiniciar en livecd/usb
  6. Datos Rsync del servidor antiguo al nuevo nuevamente
  7. Reinicie el nuevo servidor y úselo.

Al hacerlo de esta manera, todavía tienes el servidor original intacto, por lo que si algo sale mal, hay una manera fácil de regresar. Pero requiere algunos conocimientos (grub/rsync/partitions), por lo que sugiero hacer un poco de trabajo de preparación y pruebas con anticipación, antes de hacerlo en vivo.

Respuesta2

Dos cosas:

  • Construiría datos nuevos y rsync.
  • Su asignación/ventana de tiempo de inactividad parece ser demasiado corta. 30 minutos pueden funcionar en situaciones específicas, pero no deberían¿Estará dictando el requisito realista de tiempo de inactividad en función de lo que se necesita para realizar realmente el trabajo?

Dependiendo de los datos contenidos dentro de cada servidor, la cantidad de datosbatiry su esquema de aprovisionamiento, puede tener sentido instalar el sistema operativo necesario en el nuevo Gen8 ProLiant y sincronizar la configuración y otras partes de datos en un punto en el que pueda desactivar los datos.

Quizás haga una copia inicial y derive su requisito de tiempo de inactividad de la cantidad de tiempo que lleva recoger los cambios del archivo en rsyncs posteriores. Si necesita acelerar el proceso de transferencia o tiene muchos archivos pequeños, existentécnicas que pueden ayudar con eso.

Hago este tipo de transiciones a menudo. Con instalaciones similares de Linux, rara vez necesita más que una lista precisa de paquetes (fácilmente obtenible a través de Yum o RPM), los directorios de configuración (por ejemplo /etc) y sus particiones de datos. Si aún no tiene un sistema de aprovisionamiento kickstart, puede aprovechar el /root/anaconda-ks.cfgarchivo para tener una idea de cómo se construyó el sistema G7.

Para responder a su pregunta sobre simplemente mover los discos, según las versiones específicas de RHEL que mencionó, esto es absolutamente posible. Puede mover los discos/caddies y los metadatos de HP Smart Array son compatibles entre los controladores P410 y P420 que puedan estar en sus sistemas. Sin embargo, no haría esto sin antes actualizar completamente el firmware de las unidades y componentes del nuevo sistema.

Respuesta3

Si la versión anterior de su sistema operativo es capaz de manejar el nuevo hardware (principalmente controlador RAID), puede intentarlo.ClonZilla.

Para comprobar si es posible pasar de un hardware a otro, puede pasar todos los datos del servidor antiguo al nuevo haciendo algunos trucos con dd.

Inicie el nuevo servidor con una distribución en vivo comoSistemaRescueCD, configúrelo con una dirección IP y un comando dd como este:

nc -l 8000 | dd of=/dev/sda

En el servidor actual realice

dd if=/dev/sda | nc ${newserverip} 8000

Esto hará una copia sin formato del /dev/sda de su servidor al nuevo servidor /dev/sda. De esta manera, puede realizar una prueba sin tiempo de inactividad en su servidor original y sin asumir riesgos casi nulos.

Respuesta4

El director del proyecto ha rechazado mi solicitud de un período de interrupción más amplio.

El procedimiento propuesto descrito en la pregunta funcionó bien en las pruebas. El tiempo de inactividad fue inferior a 20 minutos. Utilicé la utilidad hpacucli para monitorear el progreso en el G7 y luego en el Gen8, fue muy útil para esto.

Todavía tengo que hacer esto enojado, pero como dije, funcionó bien en las pruebas de RHEL 5.10 en BL460G7 a BL460 Gen8.

No actualicé el firmware.

La resincronización inicial de RAID1 en el G7 tardó poco más de una hora. La resincronización en Gen8 tardó menos de 50 minutos. Esto me preocupó pero no he podido encontrar ningún problema.

Gracias de nuevo por todos los útiles comentarios y sugerencias.

información relacionada