Nuestro servidor es un cluster formado AMD Athlon(tm) 1.1 Ghz con 256 KB de caché y 512 MB RAM, dispone de dos discos duros de 9G y 7G. Una tarjeta ethernet Realtek 8139 y una tarjeta de video VGA.

Montado manualmente con una caja reciclada:

Para las comunicaciones en casa disponemos de una tarjeta Digium TDM 11 B:

Con un puerto FXO (rojo) y un puerto FXS (verde):

Al ver estas imágenes sabréis porque no tenemos una sección de GIMP en nuestro web XD
Nuestro servidor corre Debian GNU/Linux Etch 4.0 con el kernel de la rama 2.6 y la rama 1.4 de Asterisk, Asterisk Addons y drivers Zaptel. Por supuesto obviamente también corre Apache, MySQL y PHP entre otros servicios. Apache y MySQL estan monitorizados por Heartbeat y DRBD.
Esta es la máquina:
processor : 0 vendor_id : AuthenticAMD cpu family : 6 model : 6 model name : AMD Athlon(tm) stepping : 2 cpu MHz : 1145.193 cache size : 256 KB fdiv_bug : no hlt_bug : no f00f_bug : no coma_bug : no fpu : yes fpu_exception : yes cpuid level : 1 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 mmx fxsr sse syscall mmxext 3dnowext 3dnow up ts bogomips : 2291.60
512 MB de RAM:
total used free shared buffers cached Mem: 504 303 200 0 16 91 -/+ buffers/cache: 195 308 Swap: 180 0 180
Y los discos:
S.ficheros Tamaño Usado Disp Uso% Montado en /dev/hdc1 250M 201M 36M 85% / tmpfs 253M 0 253M 0% /lib/init/rw udev 10M 56K 10M 1% /dev tmpfs 253M 0 253M 0% /dev/shm /dev/hdb1 9,4G 4,1G 4,9G 46% /var /dev/hdc9 2,2G 1,3G 854M 60% /home /dev/hdc8 177M 4,1M 163M 3% /tmp /dev/hdc5 2,2G 1,9G 243M 89% /usr /dev/drbd0 1000M 456M 492M 49% /data
El segundo nodo del cluster (donado por Javier) con Apache y MySQL ofreciendo servicio de alta disponibilidad con Heartbeat y DRBD, además de correo Postfix, servidor de Backups y conectividad VPN:
Es un Pentium 3 a 800Mhz:
processor : 0 vendor_id : GenuineIntel cpu family : 6 model : 8 model name : Pentium III (Coppermine) stepping : 6 cpu MHz : 798.000 cache size : 256 KB fdiv_bug : no hlt_bug : no f00f_bug : no coma_bug : no fpu : yes fpu_exception : yes cpuid level : 2 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 sep mtrr pge mca cmov pat pse36 mmx fxsr sse up bogomips : 1597.94
Con 750 MB de RAM:
total used free shared buffers cached Mem: 758 99 658 0 11 54 -/+ buffers/cache: 33 725 Swap: 2274 0 2274
Y 40Gb de disco:
/dev/hda1 250M 108M 130M 46% / tmpfs 380M 0 380M 0% /lib/init/rw udev 10M 56K 10M 1% /dev tmpfs 380M 0 380M 0% /dev/shm /dev/hda9 18G 59M 18G 1% /home /dev/hda8 361M 8,1M 334M 3% /tmp /dev/hda5 4,6G 606M 3,8G 14% /usr /dev/hda6 2,8G 432M 2,2G 17% /var
Finalmente un Intel Celeron, donde hay una replicación de la base de datos MySQL del blog y un servicio de monitorización con Zabbix, y donde tengo pensado colocar el balanceador de carga Linux Virtual Server para ofrecer así un servicio web con balanceo de carga (para momentos críticos) y al mismo tiempo disponer de un sistema escalable a bajo coste.
Es un Intel Celeron 333 Mhz:
processor : 0 vendor_id : GenuineIntel cpu family : 6 model : 6 model name : Celeron (Mendocino) stepping : 0 cpu MHz : 334.093 cache size : 128 KB fdiv_bug : no hlt_bug : no f00f_bug : no coma_bug : no fpu : yes fpu_exception : yes cpuid level : 2 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 sep mtrr pge mca cmov pat pse36 mmx fxsr up bogomips : 669.06
Con 369MB de RAM (tengo que tener más por ahí, esta justito):
total used free shared buffers cached Mem: 369 340 29 0 13 291 -/+ buffers/cache: 35 334 Swap: 164 0 164
Y 3.2 GB de disco :(
S.ficheros Tamaño Usado Disp Uso% Montado en /dev/hdc1 2,8G 664M 2,1G 25% / tmpfs 185M 0 185M 0% /lib/init/rw udev 10M 40K 10M 1% /dev tmpfs 185M 0 185M 0% /dev/shm
Este era el aspecto del cluster en la fase "beta" de pruebas con Heartbeat, DRBD y la replicación MySQL:
Y está es la versión actual más user-friendly, ella no lo quería todo por el medio y ya bastante que la convencí para que me deje tenerlos ;)
Acepto sugerencias o recomendaciones.
Comentarios
Algunas preguntillas
Tu articulo es muy interesante, pero tengo algunas dudas.
Primeramente me presento como tú decide montar mi servidor "casero". Yo Dónde tengo alojada algunas web como esta para Buscar trabajo y empleos.
Bueno dicho servidor he tenido que actualizar tres veces por falta de capacidad, por ejemplo ahora tengo 2 ordenadores "AMD Athlon(tm) Dual Core Processor 4850e, 2 cores" : Te preguntarás porque dos, porque el primero es para servir las paginas web y segundo para indexar las web de empleo. Lo intente tenerlo en uno pero se relentizaba por tener demasiadas consultas en el mysql, cada vez revisaba las otras web hacia consulta por si ya tenia el registro y como las bases datos son ya considerables la perdida de rendimiento es considerable.
Como vez no lo monte en cluster, aunque si decidí montar un balanceador de cargas de lineas adsl (router linksys rv042 con dos router más por lineas). Resumiendo tres routers para gestionar las lineas. Cuando lo monte también pensé en montarlo con balanceador con linux, pero leí que era muy complicado había que compilar el kernel y demás.
Pues deciendote esto es para preguntarte sobre algunas cosas de tu articulo:
¿con Asterix y tarjeta puedo balencear las lineas como mis tres routers? ¿Por eso el de centro es como un router?
DRBD este es como raid 1 por la red, es decir todos se replican
¿Heartbeat es para detectar que servidores estan disponibles?
¿Zabbix es para monitorizar la red o lo que esta pasando en lo router?
¿Linux Virtual Server es un gestor de servidores virtuales? ¿pero no lo hace los anteriores? ¿sirve para gestionarlo?
Si te suena webmin que es un administrador remoto del servidor muy útil para no cambiar de cuarto para modificar algo en el servidor. ¿Usa este o alguno similar?. Este gestor tiene un apartado de cluster pero no se si se le instalara todo esto se enteraría de que va todo...
¿Otra pregunta sobre los cluster si existe un cluster maestro si este cae, seguramente pasa otro a maestro?
¿Que sistema operativo has usado? ¿Podría usar suse o debe ser uno adaptado para clusteres?
¿Ella: es la novia o la madre ?
Bueno, gracias por todo de todas formas.
Cuantas cosas
¿con Asterix y tarjeta puedo balencear las lineas como mis tres routers? ¿Por eso el de centro es como un router?
Asterisk es una centralita (IP PBX) VoIP que te permite hacer un montón de cosas en telefonía.
DRBD este es como raid 1 por la red, es decir todos se replican
Sí, aunque por lo que yo sé al momento solo te permite usar dos discos.
¿Heartbeat es para detectar que servidores estan disponibles?
Sí, se envían "latidos" entre ellos hasta que uno cae.
¿Zabbix es para monitorizar la red o lo que esta pasando en lo router?
Sí
¿Linux Virtual Server es un gestor de servidores virtuales? ¿pero no lo hace los anteriores? ¿sirve para gestionarlo?
LVS es un balanceador de carga
Si te suena webmin que es un administrador remoto del servidor muy útil para no cambiar de cuarto para modificar algo en el servidor. ¿Usa este o alguno similar?. Este gestor tiene un apartado de cluster pero no se si se le instalara todo esto se enteraría de que va todo...
Sí, he probado webmin aunque ahora no lo uso (en cluster tiene un apartado para monitorizar heartbeat).
¿Otra pregunta sobre los cluster si existe un cluster maestro si este cae, seguramente pasa otro a maestro?
Sí, en el montaje solo hay dos PCs que atienden peticiones (uno de ellos siempre está en standby, esta es la configuración de Heartbeat).
¿Que sistema operativo has usado? ¿Podría usar suse o debe ser uno adaptado para clusteres?
Yo he usado Debian, no es que sea mejor para clústeres pero a mi me parece más sencillo de uso.
¿Ella: es la novia o la madre ?
Ambas se quejan cada vez que lo ven.