我最近开始研究大数据 - Hadoop技术。我一直在研究Hbase命令。我开始研究cloudera virtualbox平台。我无法执行“快照”命令。
hbase> snapshot 'users','users_snapshot'
我收到错误
错误: java.io.IOExecption:java.lang.unsupportedOperationException:
要使用快照,您必须添加到Hbase Master的hbase-site.xml:'hbase.snapshot.enabled'属性,其值为'true'
实际上,我添加了以下行
<property>
<name>hbase.snapshot.enabled</name>
<value>true</value>
</property>
在/ etc / hbase / conf文件夹中获取并保存的hbase-site.xml中。 我已经在cloudera管理器中重新启动了hbase实例。但仍然得到同样的错误。当我查看hbase-master时,它没有在hbase配置文件中显示此属性。请任何机构帮我解决这个问题。
由于 BIPS
答案 0 :(得分:0)
对于CDH,HBase配置配置文件,'etc / hbase / conf'中的'hbase-site.xml'不是由hbase服务器进程使用,而是由HBase shell等hbase客户端使用。来自Cloudera Manager Manual,
管理员有时会惊讶于修改/ etc / hadoop / conf然后重新启动HDFS没有任何效果。这是因为Cloudera Manager启动的服务实例不会从默认位置读取配置。以HDFS为例,当不受Cloudera Manager管理时,每个主机通常会有一个HDFS配置配置,位于/etc/hadoop/conf/hdfs-site.xml.Server-side守护进程和运行在相同的主机都会使用相同的配置。
Cloudera Manager区分服务器和客户端配置。对于HDFS,文件/etc/hadoop/conf/hdfs-site.xml仅包含与HDFS客户端相关的配置。也就是说,默认情况下,如果您运行需要与Hadoop通信的程序,它将从该目录获取NameNode和JobTracker的地址以及其他重要配置。 对/ etc / hbase / conf 和/ etc / hive / conf采取了类似的方法
由于您使用的是Cloudera VM,我建议您使用“Cloudera Manager”修改hbase的相应配置。这已经讨论过here