You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@accumulo.apache.org by David Medinets <da...@gmail.com> on 2014/07/26 17:34:17 UTC

Where is 'MYHOSTNAME' name coming from?

I'm trying to change my docker-accumulo project to use accumulo v1.6
but ran into the exception below. I have set instance.volumes to
hdfs://10.0.10.1/accumulo and I see that value in the tserver log. As
far as I can tell, all of the configuration files (hadoop and
accumulo) are pointing to the 'grail' hostname.

2014-07-26 10:15:00,513 [tserver.TabletServer] WARN : exception trying
to assign tablet +r<< hdfs://MYHOSTNAME/accumulo/tables/+r/root_tablet
java.lang.IllegalArgumentException: java.net.UnknownHostException: MYHOSTNAME
    at org.apache.hadoop.security.SecurityUtil.buildTokenService(SecurityUtil.java:377)
    at org.apache.hadoop.hdfs.NameNodeProxies.createNonHAProxy(NameNodeProxies.java:240)
    at org.apache.hadoop.hdfs.NameNodeProxies.createProxy(NameNodeProxies.java:144)
    at org.apache.hadoop.hdfs.DFSClient.<init>(DFSClient.java:579)
    at org.apache.hadoop.hdfs.DFSClient.<init>(DFSClient.java:524)
    at org.apache.hadoop.hdfs.DistributedFileSystem.initialize(DistributedFileSystem.java:146)
    at org.apache.hadoop.fs.FileSystem.createFileSystem(FileSystem.java:2397)
    at org.apache.hadoop.fs.FileSystem.access$200(FileSystem.java:89)
    at org.apache.hadoop.fs.FileSystem$Cache.getInternal(FileSystem.java:2431)
    at org.apache.hadoop.fs.FileSystem$Cache.get(FileSystem.java:2413)
    at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:368)
    at org.apache.hadoop.fs.Path.getFileSystem(Path.java:296)
    at org.apache.accumulo.server.fs.VolumeManagerImpl.getVolumeByPath(VolumeManagerImpl.java:301)
    at org.apache.accumulo.server.fs.VolumeManagerImpl.listStatus(VolumeManagerImpl.java:335)
    at org.apache.accumulo.tserver.Tablet.lookupDatafiles(Tablet.java:1108)
    at org.apache.accumulo.tserver.Tablet.<init>(Tablet.java:1211)
    at org.apache.accumulo.tserver.Tablet.<init>(Tablet.java:1067)
    at org.apache.accumulo.tserver.Tablet.<init>(Tablet.java:1056)
    at org.apache.accumulo.tserver.TabletServer$AssignmentHandler.run(TabletServer.java:2911)
    at org.apache.accumulo.core.util.LoggingRunnable.run(LoggingRunnable.java:34)
    at org.apache.accumulo.tserver.TabletServer$ThriftClientHandler$3.run(TabletServer.java:2277)
Caused by: java.net.UnknownHostException: MYHOSTNAME
    ... 21 more

Is the hostname stored in Zookeeper or Hadoop during the initialization process?

The github project
(https://github.com/medined/docker-accumulo/tree/1.6.0) is updated so
you could replicate this issue by the following steps. As the
container is made, the MYHOSTNAME placeholder in all of the
configuration files is replaced by the actual hostname (run.sh calls
setup_config_files.sh).

git clone git@github.com:medined/docker-accumulo.git
git checkout 1.6.0
cd single_node
./make_image.sh
./make_container.sh grail grail brgrail 10.0.10 1 10.0.10.1 yes
./enter_image.sh grail
cd /var/log/accumulo
more tserver_grail.debug.log

That log file can be seen via gist at
https://gist.github.com/medined/27c4ec638f0ce0ef8339.

Re: Where is 'MYHOSTNAME' name coming from?

Posted by David Medinets <da...@gmail.com>.
Great question. I imagine you're thinking that the result of the
reverse lookup is MYHOSTNAME? Below are the results of hostname,
ifconfig, the cat of /etc/hosts, and nslookup. Should I look at
anything else?

-bash-4.1# hostname
grail
-bash-4.1# hostname -f
grail

-bash-4.1# ifconfig
eth0      Link encap:Ethernet  HWaddr 16:F7:9F:1E:98:8D
          inet addr:172.17.0.18  Bcast:0.0.0.0  Mask:255.255.0.0
          inet6 addr: fe80::14f7:9fff:fe1e:988d/64 Scope:Link
          UP BROADCAST RUNNING  MTU:1500  Metric:1
          RX packets:73 errors:0 dropped:2 overruns:0 frame:0
          TX packets:70 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:6948 (6.7 KiB)  TX bytes:4681 (4.5 KiB)

eth1      Link encap:Ethernet  HWaddr 52:79:BE:07:91:43
          inet addr:10.0.10.1  Bcast:0.0.0.0  Mask:255.255.255.0
          inet6 addr: fe80::5079:beff:fe07:9143/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:3005 errors:0 dropped:0 overruns:0 frame:0
          TX packets:9 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:570841 (557.4 KiB)  TX bytes:690 (690.0 b)

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:1500  Metric:1
          RX packets:117088 errors:0 dropped:0 overruns:0 frame:0
          TX packets:117088 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:13474791 (12.8 MiB)  TX bytes:13474791 (12.8 MiB)

-bash-4.1# cat /etc/hosts
172.17.0.18    grail
127.0.0.1    localhost
::1    localhost ip6-localhost ip6-loopback
fe00::0    ip6-localnet
ff00::0    ip6-mcastprefix
ff02::1    ip6-allnodes
ff02::2    ip6-allrouters

-bash-4.1# host 10.0.10.1
Host 1.10.0.10.in-addr.arpa. not found: 3(NXDOMAIN)

-bash-4.1# nslookup 10.0.10.1
Server:        8.8.8.8
Address:    8.8.8.8#53

** server can't find 1.10.0.10.in-addr.arpa.: NXDOMAIN

On Sat, Jul 26, 2014 at 11:43 AM, Sean Busbey <bu...@cloudera.com> wrote:
> Does reverse DNS work for 10.0.10.1?
>
> --
> Sean
> On Jul 26, 2014 10:34 AM, "David Medinets" <da...@gmail.com> wrote:
>
>> I'm trying to change my docker-accumulo project to use accumulo v1.6
>> but ran into the exception below. I have set instance.volumes to
>> hdfs://10.0.10.1/accumulo and I see that value in the tserver log. As
>> far as I can tell, all of the configuration files (hadoop and
>> accumulo) are pointing to the 'grail' hostname.
>>
>> 2014-07-26 10:15:00,513 [tserver.TabletServer] WARN : exception trying
>> to assign tablet +r<< hdfs://MYHOSTNAME/accumulo/tables/+r/root_tablet
>> java.lang.IllegalArgumentException: java.net.UnknownHostException:
>> MYHOSTNAME
>>     at
>> org.apache.hadoop.security.SecurityUtil.buildTokenService(SecurityUtil.java:377)
>>     at
>> org.apache.hadoop.hdfs.NameNodeProxies.createNonHAProxy(NameNodeProxies.java:240)
>>     at
>> org.apache.hadoop.hdfs.NameNodeProxies.createProxy(NameNodeProxies.java:144)
>>     at org.apache.hadoop.hdfs.DFSClient.<init>(DFSClient.java:579)
>>     at org.apache.hadoop.hdfs.DFSClient.<init>(DFSClient.java:524)
>>     at
>> org.apache.hadoop.hdfs.DistributedFileSystem.initialize(DistributedFileSystem.java:146)
>>     at
>> org.apache.hadoop.fs.FileSystem.createFileSystem(FileSystem.java:2397)
>>     at org.apache.hadoop.fs.FileSystem.access$200(FileSystem.java:89)
>>     at
>> org.apache.hadoop.fs.FileSystem$Cache.getInternal(FileSystem.java:2431)
>>     at org.apache.hadoop.fs.FileSystem$Cache.get(FileSystem.java:2413)
>>     at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:368)
>>     at org.apache.hadoop.fs.Path.getFileSystem(Path.java:296)
>>     at
>> org.apache.accumulo.server.fs.VolumeManagerImpl.getVolumeByPath(VolumeManagerImpl.java:301)
>>     at
>> org.apache.accumulo.server.fs.VolumeManagerImpl.listStatus(VolumeManagerImpl.java:335)
>>     at org.apache.accumulo.tserver.Tablet.lookupDatafiles(Tablet.java:1108)
>>     at org.apache.accumulo.tserver.Tablet.<init>(Tablet.java:1211)
>>     at org.apache.accumulo.tserver.Tablet.<init>(Tablet.java:1067)
>>     at org.apache.accumulo.tserver.Tablet.<init>(Tablet.java:1056)
>>     at
>> org.apache.accumulo.tserver.TabletServer$AssignmentHandler.run(TabletServer.java:2911)
>>     at
>> org.apache.accumulo.core.util.LoggingRunnable.run(LoggingRunnable.java:34)
>>     at
>> org.apache.accumulo.tserver.TabletServer$ThriftClientHandler$3.run(TabletServer.java:2277)
>> Caused by: java.net.UnknownHostException: MYHOSTNAME
>>     ... 21 more
>>
>> Is the hostname stored in Zookeeper or Hadoop during the initialization
>> process?
>>
>> The github project
>> (https://github.com/medined/docker-accumulo/tree/1.6.0) is updated so
>> you could replicate this issue by the following steps. As the
>> container is made, the MYHOSTNAME placeholder in all of the
>> configuration files is replaced by the actual hostname (run.sh calls
>> setup_config_files.sh).
>>
>> git clone git@github.com:medined/docker-accumulo.git
>> git checkout 1.6.0
>> cd single_node
>> ./make_image.sh
>> ./make_container.sh grail grail brgrail 10.0.10 1 10.0.10.1 yes
>> ./enter_image.sh grail
>> cd /var/log/accumulo
>> more tserver_grail.debug.log
>>
>> That log file can be seen via gist at
>> https://gist.github.com/medined/27c4ec638f0ce0ef8339.
>>

Re: Where is 'MYHOSTNAME' name coming from?

Posted by Sean Busbey <bu...@cloudera.com>.
Does reverse DNS work for 10.0.10.1?

-- 
Sean
On Jul 26, 2014 10:34 AM, "David Medinets" <da...@gmail.com> wrote:

> I'm trying to change my docker-accumulo project to use accumulo v1.6
> but ran into the exception below. I have set instance.volumes to
> hdfs://10.0.10.1/accumulo and I see that value in the tserver log. As
> far as I can tell, all of the configuration files (hadoop and
> accumulo) are pointing to the 'grail' hostname.
>
> 2014-07-26 10:15:00,513 [tserver.TabletServer] WARN : exception trying
> to assign tablet +r<< hdfs://MYHOSTNAME/accumulo/tables/+r/root_tablet
> java.lang.IllegalArgumentException: java.net.UnknownHostException:
> MYHOSTNAME
>     at
> org.apache.hadoop.security.SecurityUtil.buildTokenService(SecurityUtil.java:377)
>     at
> org.apache.hadoop.hdfs.NameNodeProxies.createNonHAProxy(NameNodeProxies.java:240)
>     at
> org.apache.hadoop.hdfs.NameNodeProxies.createProxy(NameNodeProxies.java:144)
>     at org.apache.hadoop.hdfs.DFSClient.<init>(DFSClient.java:579)
>     at org.apache.hadoop.hdfs.DFSClient.<init>(DFSClient.java:524)
>     at
> org.apache.hadoop.hdfs.DistributedFileSystem.initialize(DistributedFileSystem.java:146)
>     at
> org.apache.hadoop.fs.FileSystem.createFileSystem(FileSystem.java:2397)
>     at org.apache.hadoop.fs.FileSystem.access$200(FileSystem.java:89)
>     at
> org.apache.hadoop.fs.FileSystem$Cache.getInternal(FileSystem.java:2431)
>     at org.apache.hadoop.fs.FileSystem$Cache.get(FileSystem.java:2413)
>     at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:368)
>     at org.apache.hadoop.fs.Path.getFileSystem(Path.java:296)
>     at
> org.apache.accumulo.server.fs.VolumeManagerImpl.getVolumeByPath(VolumeManagerImpl.java:301)
>     at
> org.apache.accumulo.server.fs.VolumeManagerImpl.listStatus(VolumeManagerImpl.java:335)
>     at org.apache.accumulo.tserver.Tablet.lookupDatafiles(Tablet.java:1108)
>     at org.apache.accumulo.tserver.Tablet.<init>(Tablet.java:1211)
>     at org.apache.accumulo.tserver.Tablet.<init>(Tablet.java:1067)
>     at org.apache.accumulo.tserver.Tablet.<init>(Tablet.java:1056)
>     at
> org.apache.accumulo.tserver.TabletServer$AssignmentHandler.run(TabletServer.java:2911)
>     at
> org.apache.accumulo.core.util.LoggingRunnable.run(LoggingRunnable.java:34)
>     at
> org.apache.accumulo.tserver.TabletServer$ThriftClientHandler$3.run(TabletServer.java:2277)
> Caused by: java.net.UnknownHostException: MYHOSTNAME
>     ... 21 more
>
> Is the hostname stored in Zookeeper or Hadoop during the initialization
> process?
>
> The github project
> (https://github.com/medined/docker-accumulo/tree/1.6.0) is updated so
> you could replicate this issue by the following steps. As the
> container is made, the MYHOSTNAME placeholder in all of the
> configuration files is replaced by the actual hostname (run.sh calls
> setup_config_files.sh).
>
> git clone git@github.com:medined/docker-accumulo.git
> git checkout 1.6.0
> cd single_node
> ./make_image.sh
> ./make_container.sh grail grail brgrail 10.0.10 1 10.0.10.1 yes
> ./enter_image.sh grail
> cd /var/log/accumulo
> more tserver_grail.debug.log
>
> That log file can be seen via gist at
> https://gist.github.com/medined/27c4ec638f0ce0ef8339.
>