Elastix en aplicaciones de alta exigencia

32
ELASTIX en Aplicaciones de Alta Exigencia

description

Mark Warren USA Redfone 15th Conference - ElastixWorld 2011 Elastix on high availability environments Elastix en aplicaciones de alta exigencia

Transcript of Elastix en aplicaciones de alta exigencia

Page 1: Elastix en aplicaciones de alta exigencia

ELASTIX en Aplicaciones de Alta

Exigencia

Page 2: Elastix en aplicaciones de alta exigencia

22

Que es una aplicación de alta exigencia?

Page 3: Elastix en aplicaciones de alta exigencia

Operación Continua

Mantenimiento sin cortes

Failover automático

Alto volumen de llamadas simultáneas

Calidad de voz

Características

Page 4: Elastix en aplicaciones de alta exigencia

44

Ejemplos

Centros de Llamadas

Hospitales

Bancos

Empresas Grandes

Cualquier organización o aplicación que depende mucho del teléfono

Page 5: Elastix en aplicaciones de alta exigencia

55

Casos Reales

Page 6: Elastix en aplicaciones de alta exigencia

6

Call Center: Asia

Movilred: empresa dedicada a la recarga virtual de telefonos celulares, prestando el servicio a todas las empresas moviles del pais.

5 servidores “blade”18 troncales E1 Escabilidad infinitaTrafico dinamicamente balanceadoProcesa 100,000 llamadas diariasTasa de disponibilidad de 99.99%

Incumbent Telecom7 millones de suscriptoresAtención al cliente principal1000+ agentes50 troncales E1Interfaz con Nortel core switchs120,000 llamadas diariasRedundancia total:

ServidoresTroncalesAgentesGeografica

Page 7: Elastix en aplicaciones de alta exigencia

7

Call Center: Asia

Page 8: Elastix en aplicaciones de alta exigencia

8

Sistema de Recarga de celulares: Peru

Movilred: empresa dedicada a la recarga virtual de telefonos celulares, prestando el servicio a todas las empresas moviles del pais.

5 servidores “blade”18 troncales E1 Escabilidad infinitaTrafico dinamicamente balanceadoProcesa 100,000 llamadas diariasTasa de disponibilidad de 99.99%

MOVILRED: empresa dedicada a la recarga virtual de teléfonos celulares, prestando el servicio a todas las empresas moviles del pais.

5 servidores “blade”18 troncales E1 Escabilidad facilTrafico dinámicamente balanceadoProcesa 100,000 llamadas diariasTasa de disponibilidad de 99.99%

Page 9: Elastix en aplicaciones de alta exigencia

9

Sistema de Recarga de celulares: Perú

Page 10: Elastix en aplicaciones de alta exigencia

10

Sistema de TELEVOTO

Movilred: empresa dedicada a la recarga virtual de telefonos celulares, prestando el servicio a todas las empresas moviles del pais.

5 servidores “blade”18 troncales E1 Escabilidad infinitaTrafico dinamicamente balanceadoProcesa 100,000 llamadas diariasTasa de disponibilidad de 99.99%

Plataforma hosteada de televoto utilizado por emisoras de radio y canales TV

4 servidores HP Proliant30 troncales E1, 8 E1/servidor 900 llamadas simultaneasAlta disponibilidad con failover automatico

Page 11: Elastix en aplicaciones de alta exigencia

11

Sistema de TELEVOTO

Page 12: Elastix en aplicaciones de alta exigencia

12

Alta Disponibilida

d

Replicación & Failover

Automático

Page 13: Elastix en aplicaciones de alta exigencia

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.

Page 14: Elastix en aplicaciones de alta exigencia

Porque alta disponibilidad?

Page 15: Elastix en aplicaciones de alta exigencia

Logrando paz y tranquilidad

Page 16: Elastix en aplicaciones de alta exigencia

Externalizar la conectividad con la red telefónicacon hardware de

estado sólido

Page 17: Elastix en aplicaciones de alta exigencia

17

PCI Gateway

Page 18: Elastix en aplicaciones de alta exigencia

18

Operación Normal

PSTNR2/ISDN/SS7

Activo Pasivo

sincronización

Page 19: Elastix en aplicaciones de alta exigencia

19

Mantenimiento PSTNR2/ISDN/SS7

ActivoPasivo

sincronización

Page 20: Elastix en aplicaciones de alta exigencia

20

Falla PSTNR2/ISDN/SS7

ActivoFALLA

sincronización

Page 21: Elastix en aplicaciones de alta exigencia

21

Pruebas PSTNR2/ISDN/SS7

Activo Pasivo

sincronización

Pruebas

Page 22: Elastix en aplicaciones de alta exigencia

22

Componentes: DRBD

Hace espejos de “block devices” por una conexión IP

Parecido a RAID-1 sino por una conexión TCP/IP

Page 23: Elastix en aplicaciones de alta exigencia

23

Componentes: DRBD

Page 24: Elastix en aplicaciones de alta exigencia

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.

Page 25: Elastix en aplicaciones de alta exigencia

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

Page 26: Elastix en aplicaciones de alta exigencia

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

Page 27: Elastix en aplicaciones de alta exigencia

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

Page 28: Elastix en aplicaciones de alta exigencia

28

Heartbeat

/etc/ha.d/haresourcesasterisk1 192.168.1.110 asterisk dahdi mysql apache fonulator

/etc/ha.d/authkeysauth 11 sha1 SuPerS&cretP@$$werd

Page 29: Elastix en aplicaciones de alta exigencia

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

Page 30: Elastix en aplicaciones de alta exigencia

Flash preso

Page 31: Elastix en aplicaciones de alta exigencia

31

Best Practices

Estandardizar HardwareSoftware

Probar todo antes de mover a producción.Rotar los servidoresDocumentar/Change ManagementSigan apoyando a Elastix!

Page 32: Elastix en aplicaciones de alta exigencia

Redfone Communications9941 W Jessamine StMiami, FL+1 786-544-1200http://www.red-fone.com