I use QuickStart VMs for CDH 5.3.x
I try to implement this spring hadoop sample for hbase
The sample from the host computer will connect to Hbase in the VM to create table, add data, read data.
In my pom i use
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<spring.version>4.0.5.RELEASE</spring.version>
<spring.hadoop.version>2.1.2.RELEASE-cdh5</spring.hadoop.version>
<hadoop.version>2.5.0-cdh5.3.0</hadoop.version>
<hbase.version>0.98.6-cdh5.3.0</hbase.version>
</properties>
My hbase.propertise file:
hbase.zk.host=172.30.119.25
hbase.zk.port=2181
My application-context.xml:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:hdp="http://www.springframework.org/schema/hadoop"
xmlns:p="http://www.springframework.org/schema/p"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/hadoop http://www.springframework.org/schema/hadoop/spring-hadoop.xsd">
<context:property-placeholder location="hbase.properties"/>
<context:component-scan base-package="org.springframework.samples.hadoop.hbase"/>
<hdp:configuration id="hadoopConfiguration">
fs.defaultFS=hdfs://172.30.119.25:8020
</hdp:configuration>
<hdp:hbase-configuration id="hbaseConfiguration" configuration-ref="hadoopConfiguration" zk-quorum="${hbase.zk.host}" zk-port="${hbase.zk.port}"/>
<bean id="hbaseTemplate" class="org.springframework.data.hadoop.hbase.HbaseTemplate">
<property name="configuration" ref="hbaseConfiguration"/>
</bean>
</beans>
When run the sample i got this exception:
Exception in thread "main" org.apache.hadoop.hbase.client.RetriesExhaustedException: Failed after attempts=35, exceptions:
Wed Jul 15 16:01:24 ICT 2015, org.apache.hadoop.hbase.client.RpcRetryingCaller@35988e16, java.net.UnknownHostException: unknown host: quickstart.cloudera
May someone help me solve this exception ?
If you're running client outside of a vm, try adding quickstart.cloudera
and its external vm ip into /etc/hosts
.
These vm's are not usually designed to be used from outside but cloudera's vm is a bit more friendly compared to hortonwork's vm.