GBase 8a
运维管理
文章
GBase 8a集群加载hdfs文件namenode高可用的原理
发表于2025-03-05 13:25:33101次浏览2个评论
集群通过gbase_hdfs_namenodes参数来配置所有可用的namenode。
第一次加载时,会判断加载语句url中的ip是否存在于该参数列表中。如何判断ip是否存在于参数列表中,集群的做法就是简单的对比字符串。
若不存在于列表中,集群会认为该次加载不属于高可用范畴,正常访问该namenode节点进行连接。
若存在则按顺序依次进行连接测试,遇到standby节点或是节点宕机、连接不通等报错,会继续切换下一个namenode进行连接测试,直到找到active节点。加载结束后还会将该active节点记录到一个全局map文件中,方便下次加载快速找到active节点。
并非所有的报错类型都会去遍历寻找active节点,比如:成功连接第一个namenode节点,开始读取hdfs文件,这时发现没有权限报错返回。这种情况再去连接下一个namenode也会是无权限。文件又不会发生变化,所以这种情况不适合高可用,没有必要全部节点访问完之后再把错误抛出。
正确使用方法: 参数配置ip则加载语句url中使用ip;参数配置域名则加载语句url中使用域名。(如果参数配置ip,而加载url使用域名。集群会认为域名不存在高可用列表中。不会生效高可用)。
热门帖子
- 12025-12-01浏览数:182759
- 22023-05-09浏览数:25044
- 42023-09-25浏览数:18519
- 52020-05-11浏览数:17526