Impala 应急预案
Impala 应急预案
coordinator宕机处理方案
现象/事件
告警通知coordinator服务所在机器宕机
影响范围
业务SQL提交失败,服务不可用
故障恢复
如果coordinator节点全部挂了,可以选取线上任意impalad节点,修改impalad.conf,将executor调整为coordinator
针对集群负载过高的处理预案
现象/事件:
收到哨兵报警,线上的SQL数过多
影响范围:
集群SQL过多,后续排队的SQL无法正常执行
故障恢复
如果出现比较多的内存消耗大SQL,影响了线上的其他业务正常执行,优先kill这些SQL;
如果出现了大量的SQL导致集群处于瘫痪状态,则需要重启集群,根据实际情况确认重启catalogd/coordinator。
队列内存爆满处理方案
现象/事件:
收到报警,队列上的SQL失败过多
影响范围:
同一个队列后续提交的SQL都会失败
故障恢复:
1.同一个队列中,如果出现很多执行时间比较长的SQL,影响了后面提交的SQL,考虑kill这些SQL;
2.如果由于队列的瞬时并发很高,导致很多SQL都无法排队进而直接失败,可以考虑:
增加队列的执行数量和排队数量;
考虑从其他队列借用一些资源过来使用,需要记得归还;
如果集群有空闲资源,可以暂时增加队列的内存资源;
3.如果由于数据量过大,导致SQL因为内存不足而失败,可以考虑:
如果是调度任务,对单个任务设置mem_limit;
如果是线上系统,则考虑调整队列的mem_limit值,但是不能调整的太大,因为mem_limit增大,SQL的并发会相应的降低;
4.如果由于数据量过大,导致SQL因为超时失败,可以考虑:
如果是调度任务,对单个任务设置EXEC_TIME_LIMIT_S;
如果是线上系统,则考虑调整队列的EXEC_TIME_LIMIT_S值,但是不能调整的太大,因为EXEC_TIME_LIMIT_S增大,则意味着队列可能会出现很多的长SQL,这就有可能会导致后面的SQL提交一直处于排队,进而失败;
Impala服务出现skew认证异常
现象/事件:
Impala服务出现skew认证异常
影响范围
任务异常
故障恢复:
调大impala限制的client连接数fe_service_threads,并重启服务。
statestored/catalogd宕机处理方案
现象/事件:
收到哨兵报警,statestored/catalogd服务所在机器宕机
影响范围
线上业务的更新操作失败
故障恢复:
独立集群:选取任意一台机器作为新的statestored/catalogd启动,然后修改所有impalad的配置文件,并且重启节点;
自助分析集群:可以选取线上任意一台机器作为新的statestored/catalogd启动,然后修改所有impalad的配置文件,并且重启节点;
以上内容对您是否有帮助?