Migración al Software Libre
AIMME ITI
Foto Temática
Triángulo Submenú
Implantación
Implantación técnica

Instalando muchos equipos

Dado que se puede realizar la migración en un alto número de equipos, es posible utilizar herramientas de instalación automática de equipos. Para este propósito, se puede utilizar SystemImager, que también es software libre. Mediante esta aplicación y las modificaciones que se han realizado sobre ella, se puede instalar y configurar cualquier PC en un tiempo reducido (unos veinte minutos). El proceso creará las particiones del disco duro (independientemente del tamaño de este), configurará la red, se cargarán los módulos apropiados de hardware y se ejecutará el arranque. El ahorro de tiempo es considerable.

Para ello se realiza una imagen de un equipo modelo (golden client), que es el que se quiere volcar al resto de equipos. Si en algún momento se modifica esta imagen (por actualizaciones de software, cambios de versiones, etc.), mediante un sencillo comando se podrá actualizar cualquier PC con esta nueva modificación. De esta forma, los equipos siempre estarán actualizados. Si por error u otra causa se eliminasen o corrompiesen archivos de la estación del usuario, éstos se podrían recuperar muy fácilmente, simplemente actualizando la máquina cliente.

En caso de que el hardware no sea homogéneo, es probable que haya que realizar instalaciones manuales en parte de los equipos para configurar aquellos aspectos que el equipo modelo no contemple, como puede ser hardware nuevo, servicios específicos, etc.

Aunque esta guía no pretende ser muy técnica, consideramos que existen una serie de tareas básicas y delicadas que se darán en la mayoría de migraciones. Es por ello que vamos a mostrar algunos elementos técnicos clave y cómo podría plantearse la implantación en un entorno de software libre.

Migrando datos de usuarios a sistemas GNU/Linux

Proporcionan una forma rápida de consulta de nombres, direcciones y datos afines. El estándar más popular para servicios de directorios es el LDAP. Consiste en un protocolo abierto y se incluye en muchos productos como, por ejemplo, Evolution y OpenOffice.org.

El LDAP trabaja con definiciones de datos llamadas esquemas y las empresas pueden crear sus propios esquemas personalizados. Lamentablemente, los esquemas utilizados por las aplicaciones no siempre son compatibles entre sí, lo que significa, por ejemplo, que a OpenOffice.org le resulta difícil leer los datos de Evolution y viceversa. La aplicación libre OpenLDAP se ajusta al estándar LDAP versión 3, y la versión 2.1 y posteriores se pueden configurar con toda una serie de gestores de bases de datos (como archivos planos o servidores SQL).

Existen herramientas que nos ayuden en este proceso, de manera que la información pueda migrarse a OpenLDAP, como puede ser Versora Progression Desktop o Windows To Linux Migration Tools.

La mayoría de los groupware proporcionan alguna forma de servicio de directorio, pero pocos son los que se integran de manera compatible en el LDAP. Con pocas facilidades para las técnicas de "cortar y pegar", es difícil usar la base de datos de contactos que proporcionan en agentes de correo externo. La mayoría de ellos ofrecen sus propios agentes de correo, pero no dicen mucho en cuanto al nivel de integración disponible en el gestor de contactos incorporado.

OpenOffice.org, Evolution y Mozilla proporcionan funciones integrales de libreta de direcciones. Sin embargo, los formatos de almacenamiento utilizados no son intercambiables. Para poder interactuar es necesario utilizar algún software de sincronización.

Afortunadamente, esta tendencia está cambiando, y son cada vez más las aplicaciones que permiten intercambiar datos entre ellas. Actualmente, Evolution ha incorporado en EDS (Evolution Data Server), un conjunto de librerías que permiten desarrollar aplicaciones que trabajen con el mismo conjunto de datos. De esta manera, ya hay gestores de tareas y contactos como Pimlico que se integran y sincronizan la información con Evolution de manera transparente y flexible.

Realización de copias de seguridad

Es obvio el ahorro de tiempo que suponen las copias incrementales, quedando ahora limitado el pesado periodo de espera de casi un par de horas al primer backup. Luego, las copias sucesivas estarán listas en breves minutos (unos dos o tres minutos).

Para realizar este tipo de copias de seguridad, podemos utilizar RSync o Amanda.

Un tema importante es la conveniencia de separar lo más posible la copia y el sistema original. Si se utiliza el mismo sistema de ficheros original para guardar la copia (aunque sea otra partición) es evidente que un fallo del disco o un pico de tensión pueden estropear a la vez sin original y sin copia. Una idea mejor es dirigir la copia a otra máquina de nuestra red o a un espacio de almacenamiento remoto aunque guardar la copia en otro disco, externo y diferente es también una buena opción.

Por último, también conviene que las copias no puedan ser sobreescritas -o borradas- por error, obteniendo permisos de escritura sólo durante el lapso que dura la realización de la copia, y volviendo otra vez a "sólo lectura" al finalizar ésta.

Emulación de aplicaciones

Para aquellas aplicaciones que no se pueden ejecutar de forma nativa en Linux se puede utilizar el emulador llamado Wine, que permite la ejecución de aplicaciones Windows dentro de GNU/Linux, y que pertenece también al mundo del software libre.

Wine no necesita tener instalada ninguna partición Windows en la estación de trabajo GNU/Linux. Desde las aplicaciones nativas de Windows emuladas con WINE se puede acceder a los archivos, impresoras y bases de datos en red. Aunque se pueden emular un gran número de aplicaciones de forma óptima, hay ciertas aplicaciones que por su complejidad o su interacción con otros programas, plantean dificultades, y se necesitará ayuda de los desarrolladores para modificar pequeñas partes del código de las aplicaciones corporativas (si se dispone del código fuente o son aplicaciones internas de la empresa).

Servidores de archivos

Los servidores de archivos en red permiten a las máquinas que funcionan en la red su acceso al almacenamiento de datos en una máquina remota como si fuera local.

Sistema de archivos NFS

Este es el estándar de facto y ha estado en uso durante muchos años. El subconjunto que se implanta normalmente no proporciona una gran seguridad, aunque hay una variante segura que se ha puesto en marcha en algunas variantes comerciales de Unix.

NFS consiste en un servidor que exporta archivos desde la máquina en la que está funcionando a clientes que funcionan en otras máquinas adjuntas a la red. Se controla lo que otras máquinas puedan adjuntar a esos archivos pero una vez que se adjunta uno entonces el tráfico en la red queda fuera de toda sospecha. En la versión de Linux hay una mínima autenticación de los usuarios de Linux.

Samba

Samba es un producto que pone en marcha el protocolo SMB de Microsoft. Es fundamental para la integración de los sistemas basados en Windows y software libre, y viene en la mayoría de las distribuciones GNU/Linux.

Appletalk

En el caso de los que tienen máquinas Macintosh de Apple, Netatalk proporciona la ejecución del protocolo AppleTalk.

Bases de datos

Muchos proyectos pequeños de bases de datos en Windows usan Access. Este resulta un producto atractivo para mucha gente pues es bastante sencillo para comenzar, y tiene una interfaz de usuario familiar. Pero Access tiene fuertes limitaciones, al no haber sido diseñado para un entorno multiusuario pesado y no puede hacer frente a grandes conjuntos de datos.

Las bases de datos más grandes podrían usar SQL Server o una de las bien conocidas bases de datos relacionales: Oracle, Sybase, DB2, etc. En el caso de estos grandes sistemas, puede que lo mejor sea dejar que las bases de datos funcionen en la plataforma existente y sólo transferir las aplicaciones de cliente a plataformas software libre.

Hay modos estándar de conectarse a bases de datos relacionales en red, así que la elección de plataforma puede ser diferente para la base de datos y las aplicaciones de cliente. Además, la mayoría de las bases de datos propietarias que no son de Microsoft están disponibles en plataformas GNU/Linux y Unix, por lo que es posible cambiar el sistema operativo sin tener que aprenderse una base de datos totalmente nueva. Por otra parte, las bases de datos propietarias pueden resultar muy caras por lo que vale la pena considerar si un producto libre podría hacer el trabajo con eficacia.

Las dos bases de datos más conocidas son MySQL y PostgreSQL. Las dos son productos maduros y cuentan con una buena base de instalaciones y equipos creativos muy activos. Las dos tienen buen soporte para el SQL estándar y pueden dar un magnífico rendimiento. También vale la pena recordar que las bases de datos no tienen que ser relacionales. Algunas tareas van mejor con otros modelos, y el uso directo de software libre como la Berkeley DB de Sleepycat puede ser extremadamente eficaz. Igualmente, el modelo LDAP de bases de datos jerárquicas en red es muy adecuado para algunos tipos de aplicaciones distribuidas. A veces transferir los datos es la parte más fácil del trabajo, aunque si el acceso a los mismos es por la red como tablas SQL entonces hay mucho más que hacer.

Lo más probable es que los problemas vengan de las utilidades secundarias y lenguajes scripting que rodean a cualquier base de datos práctica. El propio SQL está estandarizado, aunque casi todos los vendedores de bases de datos lo amplían y animan a la gente a usar sus apliaciones no estándar. También suele haber otros modos de conseguir un resultado dado en SQL, y elegir cuál es el más eficaz, varía de una base de datos a otra. Muchas aplicaciones para bases de datos se construyen con generadores de aplicaciones o constructores de formularios y puede que no funcionen con otra base de datos que no sea aquella con la que venían. Tanto MySQL como PostgreSQL han evolucionado muchísimo en los últimos años, por lo que es importante que se asegure de leer revisiones recientes al estudiar cuál usar y si hacer la migración o no.

Migración de las bases de datos de Access

Access sólo está disponible en plataformas Windows. Por ello, esas bases de datos deben ser transferidas a algún otro paquete si se proyecta un entorno completamente de software libre. Un interesante y útil escenario intermedio implica la migración de los datos a una base de datos libre, pero sin dejar de usar Access como entorno frontal. Esto tiene la deseable propiedad de eliminar muchas de las restricciones y problemas del almacén de datos Access.

Existen varios programas y scripts que exportarán una base de datos Access que tienen toda la información necesaria para recrear las tablas en otro gestor de bases de datos. Algunos producen archivos para ser copiados en una nueva plataforma, mientras otros se conectan directamente en la red y hacen los cambios de inmediato. Un ejemplo de los scripts para escritor de archivos es exportsql2, que produce archivos con cláusulas DROP TABLE, CREATE TABLE e INSERT que reproducirán la base de datos Access en MySQL.

En el informe de Paul DuBois titulado Migrating from Microsoft Access to MySQL se describen otras herramientas de migración. Una vez que los datos han sido transferidos ya se puede seguir usando Access como entorno cliente borrando las tablas localmente y enlazando con las tablas recién creadas en el servidor MySQL.

Migración de las bases de datos de SQL Server

El proceso aquí es en gran medida igual al descrito anteriormente; en el caso de las bases de datos sencillas suele bastar con exportar los datos a un formato común (normalmente CSV) y luego importarlos a la nueva base de datos. Las bases de datos más complejas que incluyen procedimientos almacenados y disparadores necesitarán más esfuerzo, y en estos casos vale la pena mirar la gama de herramientas disponibles para ayudar al proceso de migración. Algunas son software libre y otras comerciales. He aquí algunos ejemplos:

  • PGAdmin es software libre para administrar bases de datos PostgreSQL. Hay utilidades modulares para ellas que manejan la migración de datos de otros gestores de bases de datos.
  • SQLPorter de Realsoftstudio: un producto comercial disponible en diversas variantes según los gestores de bases de datos inicial y final.
  • SQLWays de Ispirer: un producto comercial que da soporte a una amplia gama de gestores de bases de datos.
  • SQLyog es otra herramienta comercial que gestiona en MySQL y también maneja la migración de datos desde otras bases de datos de tipo ODBC.
  • El sitio web de MySQL da una lista amplia de otras herramientas de conversión.

Sistemas de monitorización y administración

Para realizar un mantenimiento del equipo, es aconsejable instalar un sistema de monitorización y administración en todos los equipos, de manera que puedan ser accedidos de forma remota por los administradores de sistemas. Se aconseja el uso de OpenSSH para realizar conectar por terminal a los equipos de forma remota, aunque otra opción atractiva es Webmin, un sistema de administración vía web que permite configurar todos los aspectos de un equipo a través del navegador web de forma cómoda.

OpenSSH es una implementación libre de las herramientas de conectividad SSH que utilizan habitualmente los administradores remotos. Los usuarios de telnet, rlogin y FTP transmiten su password sin encriptar, en cambio OpenSSH encripta todo el tráfico (incluyendo los passwords) para eliminar efectivamente los riesgos de seguridad. Además, OpenSSH permite realizar conexiones seguras tunelizadas mediante varios métodos de autenticación, y soporta todas las versiones del protocolo SSH. OpenSSH está desarrollado por el proyecto OpenBSD (otra variante libre de Unix). Es software libre bajo la licencia BSD.

Webmin es una interfaz para la administración de sistemas Unix. Usando cualquier navegador web moderno, se pueden crear cuentas de usuario, configurar el servidor web Apache, realizar cambios del sistema de red, manejar el subsistema de compartición de archivos, etc. Webmin elimina la necesidad de editar manualmente los ficheros de configuración, y permite manejar el sistema desde la consola o de forma remota.

 
SourcePYME cofinanciado: Generalitat Valenciana IMPIVA Fondo Social Europeo