Hace unas semanas, Stratus organizó un seminario web con Light Reading titulado “Achieving Instantaneous Fault Tolerance for Any Application on Commodity Hardware” dirigido a los proveedores de aplicaciones de telecomunicaciones y comunicaciones. El evento fue muy exitoso, con 150 asistentes que llamaron en vivo y otros 200 que se registraron pero no pudieron asistir a esa hora específica. Tuvimos muchas preguntas durante la sesión, algunas de las cuales fueron respondidas en el momento y otras que quedaron sin respuesta por falta de tiempo. Esta entrada del blog resume todas las preguntas que se hicieron y nuestras respuestas.
Antes de que lleguemos a las preguntas y respuestas, permítanme primero definir everRun en términos simples;
everRun es una infraestructura de disponibilidad definida por software (SDA) que traslada la gestión de fallos y la conmutación automática por error de las aplicaciones a la infraestructura de software. Esto proporciona una tolerancia a fallos totalmente automatizada y completa al instante para todas las aplicaciones, que incluye la detección de fallos, la localización, el aislamiento, la restauración del servicio, la restauración de la redundancia y, si se desea, la replicación del estado, todo ello sin cambios en el código de la aplicación y con niveles dinámicos de resiliencia. Esto significa que cualquier aplicación puede desplegarse instantáneamente con alta resiliencia, múltiples niveles de protección de estado y una velocidad de restauración de servicio ultrarrápida – en hardware comercial (COTS) en cualquier red, sin la complejidad, el esfuerzo que consume tiempo y el riesgo asociado a la modificación y prueba de cada aplicación. Por ello, everRun es ideal para aplicaciones de comunicaciones que incluyen la supervisión de vídeo, la gestión de redes, las pasarelas de señalización, los cortafuegos, los controladores de red y mucho más.
Ahora, a las preguntas y respuestas:
- ¿Necesito una distribución Linux separada para ejecutar everRun?
- everRun soporta múltiples sistemas operativos invitados que incluyen Windows, CentOS Linux y RHEL Linux. everRun viene con su propia distribución CentOS, que se instala en un servidor de mercancías de metal desnudo, pero tendrá que instalar un sistema operativo (como un sistema operativo invitado) para cada máquina virtual.
- ¿Qué pasa si tengo una mezcla de aplicaciones de Windows y Linux ?
- No hay problema. Como ya hemos dicho, puede instalar varios SO invitados porque everRun aprovecha el hipervisor KVM donde reside el código tolerante a fallos Stratus , de modo que todas las VMs, independientemente del SO invitado, estarán protegidas sin problemas y sin necesidad de realizar cambios en el código de la aplicación. Algunas VMs pueden ser Linux, otras Windows en la misma configuración everRun .
- ¿Tienes soluciones para cosas como BGP que se superpone a TCP? (Típicamente llamado enrutamiento sin paradas)
- No ofrecemos aplicaciones, sólo la plataforma de software que ejecuta estas aplicaciones. Esencialmente, cualquier aplicación que utilice cualquier protocolo que se ejecute en TCP/IP en cualquier sistema operativo invitado se ejecutará en everRun.
- Suponiendo que hay una entidad MME que necesito hacer tolerante a fallos, ¿cómo mantendrá su motor de disponibilidad el estado interno de las aplicaciones MME? Podría haber múltiples estados internos para múltiples flujos que son mantenidos por esta entidad.
- A diferencia de las soluciones de HA basadas en aplicaciones que requieren cambios en el código de la aplicación, esta solución crea automáticamente pares de VM entre hosts en una configuración antiafinidad. Esto significa que el estado de una VM (y de todas sus aplicaciones) se captura de forma regular y asíncrona, basándose en un algoritmo altamente sofisticado de Stratus StatePoint que garantiza un estado globalmente consistente para todas las aplicaciones desplegadas en un modo tolerante a fallos. Si se produce un fallo en el servidor primario en el estado “n”, el sistema cambia automáticamente al servidor secundario, que se reanuda automáticamente desde el punto de estado más reciente, “n”, sin ninguna interrupción o degradación de la aplicación.
- ¿Cuál suele ser la experiencia de degradación del nivel de servicio al añadir la funcionalidad de tolerancia a fallos y la protección dentro del software, como el impacto en la latencia, el bloqueo de estados o el procesamiento en tiempo real?
- Hay dos tipos principales de protección que ofrece everRun . Una aplicación o componente de aplicación puede desplegarse en modo tolerante a fallos (FT), lo que significa el nivel más alto de protección en términos de replicación total del estado y tiempo rápido de restauración del servicio. En este escenario, la “latencia añadida” total media para todo el proceso, incluido el checkpointing con la barrera de E/S, es inferior a un milisegundo (unos 750 microsegundos).
- ¿Qué tan separados pueden estar el activo y el pasivo?
- Depende del ancho de banda del enlace entre los servidores primario y secundario y de la sensibilidad a la latencia…. Pero, por lo general, no más de unos pocos kilómetros, ya que una mayor distancia implica un mayor retraso en la propagación.
- ¿Pueden todos los productos utilizar el sistema de tolerancia a fallos Stratus ? En el caso de los productos que utilizan muchos estados dentro de su software, ¿hay algún reto al que nos enfrentaríamos para integrar esta solución?
- Cualquier aplicación puede funcionar en everRun siempre y cuando se pueda ejecutar en Ubuntu, SUSE, CentOS, Red Hat Enterprise Linux (RHEL), o incluso Windows. Si bien todas las aplicaciones necesitan gestión de fallos, no todas ellas necesitan protección estatal o requieren la misma velocidad de restauración del servicio – por lo tanto everRun soporta múltiples niveles de redundancia – esto significa que algunas aplicaciones que se ejecutan en modo FT tendrán una completa redundancia de estado y protección, mientras que otras que se ejecutan en HA no tendrán protección estatal pero se reiniciarán automáticamente si hay un fallo – esto utiliza muchos menos recursos del sistema. Incluso dentro de la misma aplicación, diferentes componentes de una aplicación pueden requerir diferentes niveles de redundancia. Por ejemplo, para las aplicaciones que también tienen elementos de reenvío de plano de datos (como vFirewalls y vRouters) y que se descomponen en VM separados para el elemento de control (CE) y los elementos de reenvío de plano de datos (FE), el CE podría funcionar en modo FT (protección de estado), mientras que el FE podría funcionar sólo en modo HA, lo que significa que se reiniciará rápida y automáticamente si falla. Esto significa que mientras el CE esté protegido, un nuevo FE se reiniciará sin interrupción o degradación del servicio
- ¿Qué cambios debo hacer en mi solicitud para usar everRun?
- No se requiere ningún cambio en la aplicación. Cualquier aplicación que se ejecute en cualquiera de los sistemas operativos que apoyamos (Red Hat Enterprise Linux, Ubuntu, SUSE, CentOS o Windows) funcionará bien en everRun (en su sistema operativo invitado), y everRun protegerá sin problemas estas máquinas virtuales, incluyendo la replicación de estado, sin conocimiento de la aplicación.
- Entiendo que necesitaré dos servidores físicos, cuando uno falle ¿cómo sabré y qué debo hacer?
- Si uno de ellos falla, el sistema pasará automáticamente al servidor secundario. Las aplicaciones que se ejecuten en modo FT se reanudarán automáticamente y con gran rapidez (en milisegundos), mientras que las aplicaciones de HA se reiniciarán automáticamente. Existen múltiples formas de recibir alertas de los fallos del sistema (SNMP, everRun Manager, correo electrónico) para poder reparar los componentes defectuosos.
- ¿Cómo se compara su solución con la solución FT de VMware?
- Stratus es el líder del mercado en materia de resiliencia y aprovecha sus 35 años de experiencia en el campo del ajuste de nuestros algoritmos FT para maximizar el rendimiento del sistema y la utilización de los recursos basándose en miles de cargas de trabajo reales. Generalmente, los clientes consideran a VMware cuando están consolidando. Pero cuando requieren disponibilidad y resiliencia compran everRun.