【Hbase】HMaster 在分配region阶段时崩溃 ERROR: “Failed to become active master...“
当用户无法启动HMaster服务,并且在分配region阶段不断崩溃。
·
前言
当用户无法启动 HMaster
服务,并且在分配 region
阶段不断崩溃。
现象
重新启动后,HMaster
服务无法启动,因为它无法在超时之前分配 hbase:namespace
表。这发生在包含大量区域的大型集群中。验证日志时观察到以下错误:
2022-03-28 21:50:41,173 FATAL org.apache.hadoop.hbase.master.HMaster: Failed to become active master
java.io.IOException: Timedout 300000ms waiting for namespace table to be assigned
问题原因
出现此问题的原因是群集包含大量region
(其中超过 10万个区域),但在配置的超时值之前,服务器的线程参数非常低。
解决方案
要解决此问题,请考虑群集的负载,请调整以下参数:
hbase.regionserver.executor.openregion.threads = 200
hbase.regionserver.executor.closeregion.threads = 200
hbase.master.namespace.init.timeout = 86400000
hbase.master.initializationmonitor.timeout = 86400000
hbase.master.executor.openregion.threads = 300
hbase.master.executor.closeregion.threads = 200
hbase.master.procedure.threads = 261
调整这些参数后,由于线程数增加,region
分配阶段的完成速度要快得多。并且 HBase:namespace
表是在配置的超时值之前分配的。这有助于HMaster服务的成功启动。
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
已为社区贡献2条内容
所有评论(0)