Recuperación de interrupción de HBase - SplitWAL
HBase detecta el tiempo de inactividad a través de Zookeeper. En circunstancias normales, RegionServer enviará latidos a Zookeeper con regularidad. Una vez que ocurre un tiempo de inactividad, el latido se detendrá después de un cierto período de tiempo (SessionTimeout, nuestra configuración de clúster es 30 segundos). El cuidador del zoológico pensará que está caído.
Hay dos modos principales para la división HBase HLog: división de registros distribuidos y reproducción de registros distribuidos.
Dado que nuestro clúster no está configurado con hbase.master.distributed.log.replay=true, aquí nos centramos en la reproducción de registros distribuidos. Por lo tanto, aquí se estudia principalmente el proceso de segmentación de registros distribuidos.
Segmentación de registros distribuidos
Proceso general:
Como fuerza laboral principal real, Regionserver ejecuta tareas de preferencia y el flujo de trabajo después de que se adelantan las tareas:
Fuente:
Posibles problemas y soluciones durante todo el proceso de conmutación: (Actualizado continuamente)
1. Después de la pseudomuerte del nodo RS, el proceso DataNode existe pero no puede El estado del servicio hará que hbase split wal se agote hasta el punto en que sea casi imposible continuar. El DataNode tarda 10 minutos en estar completamente fuera de línea antes de que se pueda restaurar el rendimiento.
Solución: contacto. SA se apaga y reinicia, lo que puede acelerar la recuperación del clúster
Referencia:/2016/10/29/hbase-regionserver-recovering/