wiki:SyncronizeConceptos

Version 2 (modified by trac, 7 years ago) (diff)

--

Conceptos sobre imágenes sincronizadas e incrementales

Hasta ahora la creación y restauración de imágenes en OpenGnsys se ha llevado a cabo usando un software de clonación que sólo permitía tener imágenes monolíticas, esto es, una vez creadas, si pretendiamos reparar un sistema operativo o simplemente devolverlo a su situación original era necesario enviar por la red la imagen completa, aunque el cambio hubiera sido mínimo.

La nueva funcionalidad con que queremos dotar al proyecto es precisamente que esta restauración del software original se pueda realizar a través de la sincronización de imágenes. Este método consistiría en tener almacenadas dichas imágenes en repositorios, de manera que, para tener actualizado el contenido de una partición o una carpeta determinada del cliente, sólo se enviarían desde el repositorio las diferencias, economizando así, tiempo y tráfico de red.

Implementación

Para mantener la compatibilidad, se ha mantenido el actual método de clonación y se ha incorporado la sincronizacion, por tanto, en estos momentos, en Opengnsys, podemos tener dos tipos de imágenes:

  • Imágenes Monolíticas
  • Imágenes Sincronizadas

Como consecuencia de utilizar imágenes sincronizadas, aparecen dos conceptos:

  • Imágenes básicas: Son aquellas que pueden ser creadas y restauradas usando las ventajas de la sincronización y que contiene todo el software de un sistema operativo concreto instalado en una partición concreta.
  • Imágenes Incrementales: Son aquellas que se componen de las diferencias entre un sistema operativo al que se le ha instalado nuevo software o archivos, y una imagen básica creada de él, anteriormente. Normalmente las imágenes incrementales ocuparán mucho menos espacio que las imágenes básicas y se podrán tener las que se quiera, todas, evidentemente, referidas a la misma imagen básica.

En general, sólo podemos aplicar una incremental sobre una básica:

  • En el caso de windows, no podemos realizar diferencias sobre los archivos de registro, por lo que se copiarán enteros. Al restaurar el de la imagen incremental sobreescribirá el de la básica. Si restauramos una segunda diferencial, se volvería a sobreescribir y se eliminarían los cambios del registro que hizo la primera.
  • Tanto en windows como linux las diferenciales añaden y borran archivos, puede que la primera diferencial borre archivos que necesite la segunda.

En determinados casos sí será posible incluir una segunda incremental (ej: programas que se descomprimen en un directorio).

Ejemplo de uso: Imágenes diferenciales con distintos programas

Suponemos un entorno educativo donde hay dos grupos de usuarios que utilizan programas bien diferenciados.

  • Instalaremos los programas comunes sobre un equipo modelo y realizaremos una imagen básica con los programas que necesitan todos los usuarios, por ejemplo instalamos Windows con un antivirus, firefox, adobe reader, java,...
  • Crearemos incrementales con los grupos de programas que se utilizan los usuarios:
    • incremental programación: En el equipo modelo con la imagen básica recién restaurada añadimos por ejemplo: eclipse, visual estudio,... Creamos una incremental respecto a la imagen básica.
    • incremental "geografia": En el equipo modelo con la imagen básica recién restaurada añadimos por ejemplo arcgis desktop,... y creamos una imagen incremental respecto a la misma imagen básica.

Cuando queramos restaurar el equipo de un usuario siempre restauraremos la imagen básica y a continuación restauraremos la diferencial que contenga los programas que necesite.

Versiones

Se han desarrollado dos versiones en paralelo, se han de probar en distintos entornos para ver cual es más adecuada en cada uno de ellos.

El proceso de creación y restauración de las imágenes es el mismo, la diferencia principal es la manera de guardar las imágenes la versión uno las almacena en un directorio y las versión dos las guarda en un archivo.

En ambos casos se puede manipular el fichero de imagen en el servidor: añadir o borrar archivos o manipular las claves del registro de windows.