在Hbase中服务器先读取hbase-defalut.xml文件,然后读取hbase-site.xml文件,也就是说后者会覆盖前者
hbase的配置中有一些和hdfs关联的配置,当hdfs中修改了,但是hbase中修改了,hbase中是不会知道的,比如 dfs.replication,有时候我们想增加备份的数量,在hdfs中设置为5了,但是hbase中默认为3,这样hbase还是只保存3份。
那么有什么方法可以使他们的配置文件同步,有三种方法:
(1)在hbase-env.sh的HBASE_CLASSPATH环境变量增加HADOOP_CONF_DIR。
(2)在${HBASE_HOME}/conf下放一份hadoop的配置文件hdfs-site.xml (or hadoop-site.xml)。
(3)直接在hbase-site.xml中添加。
从上述三种方法当中,目测是第一种方法比较靠谱,当然要同步配置文件还有别的方法,后续再进行介绍。
Hadoop的配置文件在HBase中的使用优先级最低,换句话说无论是default和site文件,HBase配置的优先级都会高于Hadoop配置的优先级,这意味着在参数重复的情况下,HBase配置文件的参数会覆盖Hadoop的参数.
时间: 2024-10-17 04:59:14