Con una alta disponibilidad, WebSphere eXtreme Scale proporciona datos fiables, redundancia y detección de anomalías.
WebSphere eXtreme Scale autoorganiza las cuadrículas de datos de Mäquinas virtuales Java en un árbol federado libremente. El servicio de catálogo en los grupos raíz y principal que aloja los contenedores se encuentra en las hojas del árbol. Si desea más información, consulte Arquitectura de memoria caché: correlaciones, contenedores, clientes y catálogos.
Puede producirse una anomalía en un proceso por diversas causas. La anomalía puede ser debida a que se ha alcanzado un límite de recursos, como el tamaño máximo de almacenamiento dinámico, o que alguna lógica de control de proceso terminara un proceso. El sistema operativo podría fallar, lo que implicaría que se perdieran todos los procesos que se estuvieran ejecutando en el sistema. El hardware puede fallar, aunque es menos frecuente, como por ejemplo la tarjeta de interfaz de red (NIC), lo que provocaría que el sistema operativo se desconectase de la red. Pueden producirse más puntos de anomalías, que dejaría el proceso como no disponible. En este contexto, todas estas anomalías pueden clasificarse en uno de estos dos tipos: anomalías de proceso y pérdida de conectividad.
WebSphere eXtreme Scale reacciona rápidamente a anomalías de proceso. Cuando se produce una anomalía en un proceso, el sistema operativo es el responsable de limpiar los recursos sobrantes que utilizada el proceso. Esta limpieza incluye la asignación de puertos y conectividad. Cuando un proceso falla, se envía una señal a las conexiones que el proceso utilizaba para cerrar cada conexión. Gracias a estas señales, otro proceso conectado con el proceso que ha fallado puede detectar inmediatamente una anomalía en el proceso.
Se produce pérdida de conectividad cuando se desconecta el sistema operativo. Como resultado, el sistema operativo no puede enviar señales a otros procesos. Las razones de la pérdida de conectividad son diversas, pero se pueden dividir en dos categorías: anomalía de host y aislamiento.
Anomalía de host
Si la máquina se desconecta de la corriente, se apaga inmediatamente.
Aislamiento
Este escenario presenta la condición de anomalía más complicada para que el software pueda gestionarlo correctamente porque el proceso aparenta no estar disponible, aunque lo esté. Básicamente, el sistema cree que un servidor u otro proceso ha fallado, mientras que realmente se está ejecutando correctamente.
Las anomalías de contenedor generalmente las descubren los contenedores de igual a través del mecanismo de grupo principal. Cuando se produce una anomalía en un contenedor o grupo de contenedores, el servicio de catálogo migra los fragmentos alojados en dichos contenedores. El servicio de catálogo busca primero una réplica síncrona antes de migrar a una réplica asíncrona. Después de que los fragmentos primarios se migren a contenedores de host nuevos, el servicio de catálogo busca los contenedores host nuevos de las réplicas que faltan.
Latencia de detección de anomalía de contenedor
Las anomalías se pueden dividir en anomalías de poca importancia y anomalías graves. Las anomalías de poca importancia se suelen producir por un fallo en el proceso. Este tipo de anomalías lo detecta el sistema operativo, que puede recuperar rápidamente recursos utilizados, como por ejemplo sockets de red. La detección de este tipo de anomalía se realiza en menos de un segundo. Es posible que la detección de anomalías graves con el ajuste de pulsación predeterminado requiera hasta 200 segundos. Este tipo de anomalías incluye: bloqueos de la máquina física, desconexiones del cable de red o anomalías del sistema operativo. El tiempo de ejecución se basa en la pulsación para detectar anomalías graves que se puedan configurar.
Puesto que la cuadrícula del servicio de catálogo es una cuadrícula de eXtreme Scale, también utiliza el mecanismo de agrupación principal del mismo modo que el proceso de anomalía del contenedor. La diferencia principal es que el dominio de servicio de catálogo utiliza un proceso de elección de igual para definir el fragmento primario, en lugar del algoritmo del servicio de catálogo que se utiliza para los contenedores.
El servicio de colocación y el servicio de agrupación principal son uno de N servicios. Uno de N servicios se ejecuta en un miembro del grupo de alta disponibilidad. El servicio de ubicación y la administración se ejecutan en todos los miembros del grupo de alta disponibilidad. El servicio de colocación y el servicio de agrupamiento principal son objetos singleton porque son responsables de la presentación del sistema. El servicio de ubicación y administración son servicios de solo lectura y existen en cualquier punto para proporcionar escalabilidad.
El servicio de catálogo utiliza la réplica para convertirse en tolerante a errores. Si el proceso de servicio de catálogo falla, el servicio se reinicia para restaurar el sistema en el nivel de disponibilidad que se desea. Si todos los procesos que alojan el servicio de catálogo fallan, la cuadrícula de datos tiene una pérdida de datos crítica. Esta anomalía genera un reinicio necesario de todos los servidores de contenedor. Como el servicio de catálogo puede ejecutarse en numerosos procesos, esta anomalía es poco probable. No obstante, si ejecuta todos los procesos en una única máquina, dentro de un armazón blade sencillo, o en un conmutador de red, es más probable que se produzca una anomalía. Elimine las modalidades de anomalías comunes de las máquinas que alojan el servicio de catálogo para reducir la posibilidad de anomalía.
Una réplica nunca se coloca en el mismo proceso que su fragmento primario porque si el proceso se pierde, se perderían tanto la réplica como el fragmento primario. En un entorno de despliegue en una única máquina, puede tener dos contenedores y realizar réplicas entre ellos. Puede definir el atributo de modalidad de desarrollo en la política de despliegue para configurar una réplica para colocarla en la misma máquina que un primario. Sin embargo, en producción, la utilización de una sola máquina no es suficiente porque la pérdida de datos de ese host produce la pérdida de ambos servidores de contenedor. Para cambiar de modalidad de desarrollo en una única máquina a una modalidad de producción con varias máquinas y viceversa, inhabilite la modalidad de desarrollo en el archivo de configuración de la política de despliegue.
Tipo de pérdida | Mecanismo de descubrimiento (detección) | Método de recuperación |
---|---|---|
Pérdida de proceso | E/S | Reiniciar |
Pérdida del servidor | Pulsación | Reiniciar |
Parada de la red | Pulsación | Restablecer la red y la conexión |
Bloqueo del lado del servidor | Pulsación | Detener y reiniciar el servidor |
Servidor ocupado | Pulsación | Esperar hasta que el servidor esté disponible |