slaves obter uma conexão expirou com hdfs

1

Eu tenho 3 instâncias de nó -

master, slave1 and slave2

O SSHing entre esses nós funciona bem.

Aqui estão os processos que iniciam em cada nó quando digo ./sbin/start-dfs.sh

master:

SecondaryNameNode
Jps
NameNode
DataNode

slave1:

Jps
DataNode

slave2:

Jps
DataNode

Mas quando tento acessar hdfs de nós escravos, recebo um connection timed out .

Além disso, ao verificar o hdfs dfsadmin -report , vejo apenas um datanode (no host local do mestre) como parte do hdfs.

Datanodes available: 1 (1 total, 0 dead)

Live datanodes:
Name: 127.0.0.1:50010 (localhost)
Hostname: master
Decommission Status : Normal
Configured Capacity: 8309932032 (7.74 GB)
DFS Used: 24576 (24 KB)
Non DFS Used: 2309738496 (2.15 GB)
DFS Remaining: 6000168960 (5.59 GB)
DFS Used%: 0.00%
DFS Remaining%: 72.20%

Aqui está meu mapeamento de arquivo / etc / hosts em todos os três nós.

127.0.0.1 localhost
<ip of master> master
<ip of slave1> slave1
<ip of slave2> slave2

Aqui está o meu arquivo $ HADOOP_HOME / etc / hadoop / slaves no mestre

localhost
slave1
slave2

Em resumo, datanodes em slaves não conseguem se conectar com hdfs.

O que estou fazendo de errado?

    
por Prasanna 07.08.2014 / 18:10

1 resposta

1

Se você não pode fazer telnet para a porta 9000 no master dos escravos (e o erro é o tempo limite da conexão), então é mais provável que ocorra um problema de firewall.

Verifique se as instâncias ec2 estão no mesmo grupo de segurança ec2 e se não há regras de firewall iptables ativas bloqueando as conexões (você pode verificar isso executando iptables -vnxL).

    
por 07.08.2014 / 22:00