1
votes

I am recently started working on Big Data - Hadoop technology. I have been working on Hbase commands. I started working on the cloudera virtualbox platform. I couldn't able to execute the "snapshot" command.

hbase> snapshot 'users','users_snapshot'

I got an error as

ERROR: java.io.IOExecption: java.lang.unsupportedOperationException:
To use snapshots, you must add to the hbase-site.xml of the Hbase Master: 'hbase.snapshot.enabled' property with value 'true'

Actually, I have added following lines

<property>
  <name>hbase.snapshot.enabled</name>
  <value>true</value>
</property>

in the hbase-site.xml obtained in the /etc/hbase/conf folder and saved. I have restarted the hbase instance in the cloudera manager. But still getting the same error. When I looked in the hbase-master its not showing this property in the hbase configuration files. Please any body can help me out to solve this issue.

Thanks bips

1
please any body tell me how the "snapshot" command works in the Hbase (Big Data-hadoop). I need to know the configurations required to run this command...thanks - Bipin Kishore

1 Answers

0
votes

In case of CDH, HBase configuration configuration file, 'hbase-site.xml' in 'etc/hbase/conf' is not used by hbase server process but by hbase clients like HBase shell. From the Cloudera Manager Manual,

Administrators are sometimes surprised that modifying /etc/hadoop/conf and then restarting HDFS has no effect. That is because service instances started by Cloudera Manager do not read configurations from the default locations. To use HDFS as as an example, when not managed by Cloudera Manager, there would usually be one HDFS configuration configuration per host, located at /etc/hadoop/conf/hdfs-site.xml.Server-side daemons and clients running on the same host would all use that same configuration.

Cloudera Manager distinguishes between server and client configuration. In the case of HDFS , the file /etc/hadoop/conf/hdfs-site.xml contains only configuration relevant to an HDFS client. That is, by default,if you run a program that needs to communicate with Hadoop , it will get the addresses of the NameNode and JobTracker, and other important configurations, from that directory. A similar approach is taken for /etc/hbase/conf and /etc/hive/conf

Since you are using Cloudera VM, I would suggest you to modify the corresponding configuration for hbase by by using "Cloudera Manager". This has been discussed here