accumulo-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Eric Newton <eric.new...@gmail.com>
Subject Re: getMasterStats problems
Date Mon, 16 Jul 2012 12:08:56 GMT
You also need to have the hadoop configuration in your classpath so
the client can find HDFS, and not the local file system.

-Eric

On Sun, Jul 15, 2012 at 11:09 PM, Adam Fuchs <afuchs@apache.org> wrote:
> Jim,
>
> The HdfsZooInstance looks for accumulo-site.xml on the classpath to find the
> directory in HDFS to look for the instance ID. If accumulo-site.xml is not
> on the classpath then it will default to /accumulo, which is probably
> different from the directory you are using. accumulo-site.xml also includes
> a shared secret which is used to construct the system credentials. This is
> the standard way that servers communicate with each other.
>
> Clients, however, typically don't use HdfsZooInstance. You might try
> replacing that with ZooKeeperInstance, and then construct your own AuthInfo
> object (i.e. new
> AuthInfo("user",ByteBuffer.wrap("password".getBytes()),zkInstance.getInstanceID())
> ) instead of trying to use the system credentials.
>
> Cheers,
> Adam
>
>
> On Sun, Jul 15, 2012 at 10:52 PM, Jim Klucar <klucar@gmail.com> wrote:
>>
>> I'm trying to get the master stats in the same way the monitor server
>> does, but I keep having issues.
>>
>> The code I'm using is from the GetMasterStats.java program:
>>
>>     MasterClientService.Iface client = null;
>>     MasterMonitorInfo stats = null;
>>     try {
>>       client =
>> MasterClient.getConnectionWithRetry(HdfsZooInstance.getInstance());
>>       stats = client.getMasterStats(null,
>> SecurityConstants.getSystemCredentials());
>>     } finally {
>>       if (client != null)
>>         MasterClient.close(client);
>>     }
>>
>> The problem is that the HdfsZooInstance can never find the instance
>> data, even though it's there. I can create a ZooKeeperInstance just
>> fine, but passing that into the MasterClient fails the same way.
>>
>> Caused by: java.lang.RuntimeException: Accumulo not initialized, there
>> is no instance id at /accumulo/instance_id
>>         at
>> org.apache.accumulo.core.client.ZooKeeperInstance.getInstanceIDFromHdfs(ZooKeeperInstance.java:263)
>>         at
>> org.apache.accumulo.server.conf.ZooConfiguration.getInstance(ZooConfiguration.java:65)
>>         at
>> org.apache.accumulo.server.conf.ServerConfiguration.getZooConfiguration(ServerConfiguration.java:49)
>>         at
>> org.apache.accumulo.server.conf.ServerConfiguration.getSystemConfiguration(ServerConfiguration.java:58)
>>         at
>> org.apache.accumulo.server.client.HdfsZooInstance.<init>(HdfsZooInstance.java:62)
>>         at
>> org.apache.accumulo.server.client.HdfsZooInstance.getInstance(HdfsZooInstance.java:70)
>>         at
>> org.apache.accumulo.server.security.SecurityConstants.makeSystemPassword(SecurityConstants.java:58)
>>         at
>> org.apache.accumulo.server.security.SecurityConstants.<clinit>(SecurityConstants.java:43)
>>         ... 91 more
>>
>> Any ideas as to what I'm missing?
>
>

Mime
View raw message