sábado, 18 de julio de 2009

Creando una base virtualizada con VMware, Fedora y Webmin

Hoy voy a contar cómo hago una máquina virtual con Linux para poder reutilizar posteriormente, usando el proceso de instalación "desde la red" de Fedora 9 y su actualización posterior, aunque es muy similar para otras distros de Linux. Por último se instalará Webmin para poder manejarlo todo cómodamente desde un navegador:
  1. - Creación y configuración de la máquina virtual.
  2. - Instalación mínima de Fedora 9.
  3. - Desinstalación de aplicaciones sobrantes, actualización del sistema y eliminación del kernel anterior.
  4. - Instalación de Webmin.
Al final de todo esto quedará una imagen lista y reaprovechable para ser usada como base de futuros appliances virtualizados. Yo uso VMware para la virtualización, aunque supongo que se pueda hacer con otros sistemas de virtualización sin problemas. Como sistema operativo uso Fedora, pero se puede hacer con muchas otras distros (igual cambian los comandos).

Creación y configuración de la máquina virtual:
Primero descargate una ISO "net-inst" de cualquiera de los mirros de Fedora; este tipo de ISO tiene lo necesario para arrancar el PC y descargar de la red las partes necesarias del sistema operativo sin tener que descargarte un DVD de 4 Gb.
Abre la aplicación de VMware Server y crea una nueva máquina


con las características que ves en la siguiente imagen:


Luego hay que tocar el fichero .VMX (configuración de la máquina virtual) para acelerar un poco su funcionamiento haciendo que omita el uso del fichero NVRAM. Advierto que los puristas de VMware se echarán las manos a la cabeza, pero funciona (siempre y cuando el hardware sea TOTALMENTE FIABLE, hasta la alimentación eléctrica):
  1. Con la máquina apagada, abre el fichero .VMX usando el bloc de notas o similar.
  2. Borra la línea que contiene el nombre del fichero .NVRAM.
  3. Añade las siguientes líneas:
    mem.ShareScanVM=0
mem.ShareScanThreshold=4096
sched.mem.maxmemctl=0
sched.mem.pshare.enable = "FALSE"
MemTrimRate = 0
MemAllowAutoScaleDown = "FALSE"
mainMem.useNamedFile = "FALSE"

(Ver en http://snippets.dzone.com/posts/show/10093)

Si alguien conoce algún método más (o mejor), por favor, que me lo diga.


Instalación mínima de Fedora 9:

Ahora ya se puede arrancar la máquina. Por defecto iniciará desde la ISO, escogiendo el idioma deseado, escogiendo el mirror (p.ej: ftp://mirror.ovh.net/download.fedora.redhat.com/linux/releases/9/Fedora/i386/os/), asignando por defecto las particiones del disco, creación de un usuario/contraseña y lo más importante, la pantalla de los repositorios, donde hay que indicar sólo el de FEDORA (FEDORA UPDATES no) y que queremos personalizar el software instalado: sólo dejaremos instalado el SYSTEM BASE. Se pueden ver pantallazos del proceso aquí (inglés).

Desinstalación de aplicaciones sobrantes, actualización del sistema y eliminación del kernel anterior:
Una vez finalizada la instalación se realiza el primer arranque de la máquina virtual y nos podremos conectar a ella desde la consola de VMWare:


o desde una consola remota (mejor) usando PuTTY u otro programa similar:


Se inicia una sesión como root con la contraseña usada en la instalación y se ejecutan los siguientes comandos:

yum clean all
yum install fedora-release-9-5.transition
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-8-and-9
yum install yum-fastestmirror
yum remove cups cups-libs gpm
yum --skip-broken update

con esto (1) limpia la información almacenada del instalador, (2 y 3) prepara la actualización e importa la nueva clave de firmas de paquetes, (4) instala una utilidad para acelerar las descargas usando el mirror más rápido, (5) elimina las aplicaciones innecesarias y (6) actualiza todos los paquetes.

Como se ha actualizado el kernel, hay que eliminar el antiguo usando:
    yum remove kernel-2.6.25-14.fc9
Si quieres saber todos los que tienes instalados, usa:
    rpm -q kernel
Instalación de Webmin:
El manejo del servidor usando el Terminal no es trivial, por lo que instalaremos la aplicación Webmin para suavizarlo: abre un terminal como root y ejecuta los siguientes comandos

cd /etc/yum.repos.d/
vi webmin.repo
para (1) cambiarte a la carpeta de los repositorios y (2) crear un nuevo fichero de definición de repositorios usando VI. Pulsa la tecla "I" para poder insertar texto y copia el siguiente texto:

[Webmin]
name=Webmin Distribution Neutral
baseurl=http://download.webmin.com/download/yum
enabled=1
Para salir del modo "INSERT", pulsa la tecla [Escape] y para grabar y salir teclea :wq (raro, eh)
Luego ejecuta

rpm --import http://www.webmin.com/jcameron-key.asc
yum install webmin
para (1) importar la clave necesaria para usar el repositorio e (2) instalar Webmin. Eso si, como en Linux la seguridad es lo primero, tenemos lo puertos "capados" por el firewall, asi que le detenemos momentaneamente

service iptables stop
para poder acceder a Webmin, pero ¿qué IP tiene la máquina? Puedes mirarlo en la consola


o usar el comando
ifconfig

Una vez conocida la IP, escribirla en un navegador seguida de :10000 para acceder a Webmin y logearse como root:


Esta aplicación permite controlar practicamente todo dentro de Linux de una manera gráfica. Si no te gusta el tema, lo puedes cambiar por otro:


Y ya tenemos el Fedora 9 listo para meterle mano. Haz una copia de seguridad para poder reaprovechar sin dar estos pasos y a experimentar con aplicaciones de servidor en Linux.

No hay comentarios: