Este documento describe las características de una aplicación de alta exigencia y proporciona ejemplos como centros de llamadas, hospitales y bancos. Luego presenta dos casos reales de implementaciones de Elastix para sistemas de recarga de celulares en Perú y un sistema de televoto. Explica cómo lograr alta disponibilidad a través de la replicación y el failover automático usando componentes como DRBD para la sincronización de datos y Heartbeat para monitorear nodos y controlar servicios.
6. Call Center: Asia
Movilred: empresa dedicada a la recarga
Incumbent Telecom
virtual de telefonos celulares, prestando
7 millones de suscriptores
el servicio a todas las empresas moviles
Atención al cliente principal
del pais.
1000+ agentes
50 troncales E1
5 servidores “blade”
18 troncales E1 core switchs
Interfaz con Nortel
120,000 llamadas diarias
Escabilidad infinita
Trafico dinamicamente balanceado
Redundancia total:
Procesa 100,000 llamadas diarias
Servidores
Tasa de disponibilidad de 99.99%
Troncales
Agentes
Geografica
6
8. Sistema de Recarga de celulares: Peru
Movilred: empresa dedicada a la recarga
MOVILRED: empresa dedicada a la recarga
virtual de telefonos celulares, prestando
virtual de teléfonos celulares, prestando el
el servicio a todas las empresas moviles
servicio a todas las empresas moviles del
del pais.
pais.
5 servidores “blade”
5 servidores “blade”
18 troncales E1
Escabilidad E1
18 troncales infinita
Trafico dinamicamente balanceado
Escabilidad facil
Procesa 100,000 llamadas diarias
Trafico dinámicamente balanceado
Tasa de 100,000 llamadas diarias
Procesa disponibilidad de 99.99%
Tasa de disponibilidad de 99.99%
8
10. Sistema de TELEVOTO
Movilred: empresa dedicada a la recarga
Plataforma hosteada de televoto
virtual de telefonos celulares, prestando
el servicio por emisoras de radio y
utilizado a todas las empresas moviles
del pais.
canales TV
5 servidores “blade”
18 servidores HP Proliant
4 troncales E1
Escabilidad infinita
30 troncales E1, 8 E1/servidor
Trafico dinamicamente balanceado
Procesa 100,000simultaneas
900 llamadas llamadas diarias
Tasa de disponibilidad de 99.99%
Alta disponibilidad con failover
automatico
10
12. Replicación &
Alta Failover
Disponibilida Automático
d
12
13. Logrando alta disponibilidad
•Externalizar conectividad PSTN
•Utilizar clusters pequeños de servidores
economicos, distribuyendo el riesgo
•Implementar HA Heartbeat Monitor
•Implementar Distributed Replicated Block
Device (DRBD) para sincronizacion de data
entre todos los nodos en el cluster.
•SIP Proxy server para el balanceo de
registraciones SIP y trafico RTP.
OpenSIPS/OpenSER, etc.
24. Componentes: Heartbeat
Heartbeat (latido de corazon) Monitorea los
nodos en un cluster mandando un pulso entre
los nodos actualizandose sobre su estatus
actual.
Controla el arranque/pare de servicios
definidos en init.d: asterisk, mysql, apache, etc.
Controla un IP “flotante” que se mueve entre
los nodos participantes según quien esta en
modo activo.
24
25. Implementación: DRBD
Elastix instalado con la opción “advanced”
durante el boot para crear las particiones a mano.
Una vez arrancado Elastix, con fdisk/mke2fs
creamos una partición especial que sera controlada
por DRBD y compartida entre los dos nodos.
Instalar DRBD desde yum
Configurar /etc/drbd.conf con los parámetros de la
partición
25
26. Heartbeat
Instalar heartbeat desde YUM o el Elastix
Package Manager
Configurar tres archivos;
/etc/ha.d/ha.cf
/etc/ha.d/haresources
/etc/ha.d/authkeys
26
27. Heartbeat
/etc/ha.d/ha.cf
debugfile /var/log/ha-debug
logfile /var/log/ha-log
logfacility local0
keepalive 200ms
deadtime 2
warntime 1
initdead 120
udpport 694
# Listen on serial 1
baud 19200
serial /dev/ttyS0
# Listen on eth0 also
bcast eth1
node elastix1
node elastix2
27
29. Resumen
Heartbeat detecta falla en nodo
primario cuando el primario deja de
responder a pulsos heartbeat
Nodo secundario toma control del IP
flotante, ejecuta scripts definidos en
haresources para re-configurar el
gateway y arrancar Elastix
29
31. Best Practices
Estandardizar
Hardware
Software
Probar todo antes de mover a
producción.
Rotar los servidores
Documentar/Change Management
Sigan apoyando a Elastix!
31