5
votes

I am trying to install cloudera impala on my local machine (32 bit ubuntu) without cloudera manager(they don't support on 32 bit ubuntu, i also tried and failed).

I have tried following commands to download the impala from repository.

    $ sudo apt-get install impala-shell
    $ sudo apt-get install impala             # Binaries for daemons
    $ sudo apt-get install impala-server      # Service start/stop script
    $ sudo apt-get install impala-state-store # Service start/stop script 

Upto here it worked fine. My impala/conf/hive-site.xml looks like this

<property>
<name>hive.metastore.local</name>
<value>false</value>
</property>

<property>
<name>hive.metastore.uris</name>
<value>thrift://localhost:9083</value>
</property>

<property>
<name>hive.metastore.client.socket.timeout</name>
<value>3600</value>
<description>MetaStore Client socket timeout in seconds</description>
</property>

My impala/conf/hdfs-site.xml looks like this.

<property>
    <name>dfs.client.read.shortcircuit</name>
    <value>true</value>
</property>

<property>
    <name>dfs.domain.socket.path</name>
    <value>/var/run/hadoop-hdfs/dn._PORT</value>
</property>

<property>
    <name>dfs.client.file-block-storage-locations.timeout</name>
    <value>3000</value>
</property>

Now, i was trying to connect to localhost on impala-shell. But, it give me this error

Error connecting: <class 'thrift.transport.TTransport.TTransportException'>, Could not connect to localhost:21000

FYI, i am using mysql for the metastore for my hive-hadoop cluster.

4

4 Answers

4
votes

I had the same issue when executing the command from the statestore Node. Try executing impala-shell from any daemon Node. Worked for me!

1
votes

There is nothing in specifying localhost itself but the question is if appropriate service is available on appropriate port. I'd recommend first to check if service is available.

Following command will show you if service is listening on port (and on what IP interface). It could be interface different from localhost.

netstat -a -n | grep 21000

Please pay attention localhost usually means IP 127.0.0.1 but in default Ubuntu configuration it looks like different IP address (like 127.0.1.1). Recommended solution is to correct /etc/hosts (there is many articles about this). Also please check this answer.

1
votes

Make sure all Impala Daemons are running: Impala Daemon, Impala Catalog Server Daemon and Impala StateStore Daemon.

That solved the problem for me.

-1
votes

This is happening because you are using localhost in your configuration settings. Use fully qualified domain name instead of localhost and restart the shell.