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

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

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