It's seems that the problems is with the initialization of the values for Kerberos, with the class KerberosName.

Where you have the key file and principal name for Kerberos.

In HBase, there are four parameters for this:

- hbase.master.keytab.file: Full path to the kerberos keytab file to use for logging in the configured HMaster server principal.

- hbase.master.kerberos.principal: Ex. "hbase/[email protected]". The kerberos principal name that should be used to run the HMaster process. The principal name should be in the form: user/hostname@DOMAIN. If "_HOST" is used as the hostname portion, it will be replaced with the actual hostname of the running instance.

- hbase.regionserver.keytab.file: Full path to the kerberos keytab file to use for logging in the configured HRegionServer server principal.

- hbase.regionserver.kerberos.principal: Ex. "hbase/[email protected]". The kerberos principal name that should be used to run the HRegionServer process. The principal name should be in the form: user/hostname@DOMAIN. If "_HOST" is used as the hostname portion, it will be replaced with the actual hostname of the running instance. An entry for this principal must exist in the file specified in hbase.regionserver.keytab.file

Looking on the source of this class (KerberosName), it throws a IOException by several reason:
- The files and these parameters are empty values
- There is not matching rule in the Kerberos realm server
- There is not shortname for the Kerberos server, etc

Look at the source and see what it's missing.
Regards

On 05/20/2012 03:45 PM, Ben Cuthbert wrote:
All I just upgraded hbase and hadoop to hbase(0.92.1) and hadoop (1.0.3)

hbase and hadoop look to come up correctly. but when I start my application I 
am getting the error below.

I have copied the hbase-security settings into the classpath.

core-site.xml is set to

configuration>

        <property>
                <name>hadoop.tmp.dir</name>
                <value>${celer.hadoop.data.dir}</value>
                <description>A base for other temporary 
directories.</description>
        </property>

        <property>
                <name>fs.default.name</name>
                
<value>hdfs://${celer.hadoop.master.address}:${celer.hadoop.bind.port}</value>
                <description>The name of the default file system. A URI whose
                        scheme and authority determine the FileSystem 
implementation. The
                        uri's scheme determines the config property 
(fs.SCHEME.impl) naming
                        the FileSystem implementation class. The uri's 
authority is used to
                        determine the host, port, etc. for a filesystem.
                </description>
        </property>

        <!-- Security configuration -->
        <property>
                <name>hadoop.security.authorization</name>
                <value>false</value>
                <description></description>
        </property>

        <property>
                <name>hadoop.security.authentication</name>
                <value>simple</value>
                <description></description>
        </property>

        <property>
                <name>hadoop.security.token.service.use_ip</name>
                <value>true</value>
                <description></description>
        </property>

</configuration>


2012-05-20 20:43:20,914 [main] INFO  
org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation - 
getMaster attempt 2 of 10 failed; retrying after sleep of 1000
java.io.IOException: failure to login
        at 
org.apache.hadoop.security.UserGroupInformation.getLoginUser(UserGroupInformation.java:490)
        at 
org.apache.hadoop.security.UserGroupInformation.getCurrentUser(UserGroupInformation.java:452)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.apache.hadoop.hbase.util.Methods.call(Methods.java:37)
        at org.apache.hadoop.hbase.security.User.call(User.java:586)
        at org.apache.hadoop.hbase.security.User.callStatic(User.java:576)
        at org.apache.hadoop.hbase.security.User.access$400(User.java:50)
        at 
org.apache.hadoop.hbase.security.User$SecureHadoopUser.<init>(User.java:393)
        at 
org.apache.hadoop.hbase.security.User$SecureHadoopUser.<init>(User.java:388)
        at org.apache.hadoop.hbase.security.User.getCurrent(User.java:139)
        at org.apache.hadoop.hbase.ipc.HBaseRPC.getProxy(HBaseRPC.java:280)
        at org.apache.hadoop.hbase.ipc.HBaseRPC.getProxy(HBaseRPC.java:332)
        at 
org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation.getMaster(HConnectionManager.java:642)
        at org.apache.hadoop.hbase.client.HBaseAdmin.<init>(HBaseAdmin.java:106)
Caused by: javax.security.auth.login.LoginException: 
java.lang.NoClassDefFoundError: Could not initialize class 
org.apache.hadoop.security.KerberosName
        at org.apache.hadoop.security.User.<init>(User.java:44)
        at org.apache.hadoop.security.User.<init>(User.java:39)
        at 
org.apache.hadoop.security.UserGroupInformation$HadoopLoginModule.commit(UserGroupInformation.java:130)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at javax.security.auth.login.LoginContext.invoke(LoginContext.java:769)
        at 
javax.security.auth.login.LoginContext.access$000(LoginContext.java:186)
        at javax.security.auth.login.LoginContext$5.run(LoginContext.java:706)
        at java.security.AccessController.doPrivileged(Native Method)
        at 
javax.security.auth.login.LoginContext.invokeCreatorPriv(LoginContext.java:703)
        at javax.security.auth.login.LoginContext.login(LoginContext.java:576)
        at 
org.apache.hadoop.security.UserGroupInformation.getLoginUser(UserGroupInformation.java:471)
        at 
org.apache.hadoop.security.UserGroupInformation.getCurrentUser(UserGroupInformation.java:452)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.apache.hadoop.hbase.util.Methods.call(Methods.java:37)
        at org.apache.hadoop.hbase.security.User.call(User.java:586)
        at org.apache.hadoop.hbase.security.User.callStatic(User.java:576)
        at org.apache.hadoop.hbase.security.User.access$400(User.java:50)
        at 
org.apache.hadoop.hbase.security.User$SecureHadoopUser.<init>(User.java:393)
        at 
org.apache.hadoop.hbase.security.User$SecureHadoopUser.<init>(User.java:388)
        at org.apache.hadoop.hbase.security.User.getCurrent(User.java:139)
        at org.apache.hadoop.hbase.ipc.HBaseRPC.getProxy(HBaseRPC.java:280)
        at org.apache.hadoop.hbase.ipc.HBaseRPC.getProxy(HBaseRPC.java:332)
        at 
org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation.getMaster(HConnectionManager.java:642)
        at org.apache.hadoop.hbase.client.HBaseAdmin.<init>(HBaseAdmin.java:106)
10mo. ANIVERSARIO DE LA CREACION DE LA UNIVERSIDAD DE LAS CIENCIAS 
INFORMATICAS...
CONECTADOS AL FUTURO, CONECTADOS A LA REVOLUCION

http://www.uci.cu
http://www.facebook.com/universidad.uci
http://www.flickr.com/photos/universidad_uci

--
Marcos Luis Ortíz Valmaseda
 Data Engineer&&  Sr. System Administrator at UCI
 http://marcosluis2186.posterous.com
 http://www.linkedin.com/in/marcosluis2186
 Twitter: @marcosluis2186



10mo. ANIVERSARIO DE LA CREACION DE LA UNIVERSIDAD DE LAS CIENCIAS 
INFORMATICAS...
CONECTADOS AL FUTURO, CONECTADOS A LA REVOLUCION

http://www.uci.cu
http://www.facebook.com/universidad.uci
http://www.flickr.com/photos/universidad_uci

Reply via email to