Instalar parches en Xenserver 6.2 - CLI

En Xenserver 6.0 podemos actualizar los servidores desde XenCenter automáticamente
Pero en la version 6.2 hay que
  •     Descargar los ficheros de Updates
  •     Subirlos al servidor
  •     Instalarlos desde la línea de comandos
   
Para saber qué updates hay que descargar vamos a Xencenter -> Tools -> Check for updates
Nos aparece una ventana con las updates y un enlace para descargarlo




Aprovechamos que el servidor ya tiene montando un repositorio de ISO y ponemos las updates allí. Así será más fácil subirlas al servidor después.

Descomprimimos cada update en un directorio con su nombre

En el servidor xen Master del Pool:
Iniciamos sesión (putty o consola)

Para ver donde está montado el repositorio de ISOs, ejecutamos mount

[root@xenserver-6 ~]# mount | grep -i iso
//10.10.10.1/ISO on /var/run/sr-mount/aecad5dd-8b9a-192d-9be4-57865e640fdd type cifs (rw,mand)


Subimos el fichero al servidor
[root@xenserver-6]# xe patch-upload file-name=/var/run/sr-mount/aecad5dd-8b9a-192d-9be4-57865e640fdd/XS62ESP1.xsupdate

Nos devuelve el UUID
0850b186-4d47-11e3-a720-001b2151a503

Aplicamos el parche
xe patch-pool-aply uuid=0850b186-4d47-11e3-a720-001b2151a503

Verificamos que está instalado
xe patch-list name-label=XS62ESP1

Y tendríamos que hacer reboot para que se instale el SP1 en el siguiente reinicio.

Hasta aquí bien. Pero ¿ y cómo hacemos si tenemos que instalar 20 updates?
¿Tengo que reiniciar 20 veces todos los servidores del pool?

Si queremos instalar varios parches de 1 sola vez podemos usar un script que aparece en
http://discussions.citrix.com/topic/307074-xenserver-56-sp2-install-mutiple-patches-at-once/


####start####
#!/bin/bash
UUID="!error getting UUID from xe patch-upload!"

cd /Updates
# Poner las updates en el orden correcto
for PATCH in XS62ESP1002 XS62E014 XS62ESP1003 XS62ESP1005 XS62E015 XS62ESP1008
do


# el repositorio de iso está en /var/run/sr-mount/aecad5dd-8b9a-192d-9be4-57865e640fdd. 

# Cada update en un directorio con su nombre
UUID=`xe patch-upload file-name=/var/run/sr-mount/aecad5dd-8b9a-192d-9be4-57865e640fdd/$PATCH/$PATCH.xsupdate`
echo "$UUID"
xe patch-pool-apply uuid=$UUID
done

xe patch-list
echo "reboot this box"
#####end####


Subimos el script al servidor y modificamos el valor del path al repositorio de isos
Hay que poner las updates en orden para que no den fallos.
Ejecutamos el script y esperamos

Al finalizar, comprobamos que está todo instalado con el comando
xe patch-list  | grep -i name-label |sort

[root@xenserver-6 Updates]# xe patch-list  | grep -i name-label |sort
              name-label ( RO): XS62E001
              name-label ( RO): XS62E002
              name-label ( RO): XS62E004
              name-label ( RO): XS62E005
              name-label ( RO): XS62E007
              name-label ( RO): XS62E008
              name-label ( RO): XS62E009
              name-label ( RO): XS62E010
              name-label ( RO): XS62E011
              name-label ( RO): XS62E012
              name-label ( RO): XS62E013
              name-label ( RO): XS62E014
              name-label ( RO): XS62E015
              name-label ( RO): XS62E017
              name-label ( RO): XS62ESP1
              name-label ( RO): XS62ESP1002
              name-label ( RO): XS62ESP1003
              name-label ( RO): XS62ESP1004
              name-label ( RO): XS62ESP1005
              name-label ( RO): XS62ESP1006
              name-label ( RO): XS62ESP1007
              name-label ( RO): XS62ESP1008



Reiniciamos el servidor Master del pool .
OJO: Si tenemos  VM que queremos que sigan ejecutándose, hay que migrarlas de pool

Comentarios

Entradas populares de este blog

Cómo saber el UUID de un equipo

Monitor HP No funciona ningún botón - OSD LOCKOUT

Reducir el tamaño de install.wim a menos de 4 GB