Problema de HBase com conexão de alguns servidores de regiões *

2

Eu tenho um cluster HBase que está funcionando e estou tentando adicionar alguns novos servidores ao cluster, mas "SocketException: argumento inválido" e "FailedServerException: este servidor é na lista de servidores com falha, os erros " continuam sendo gerados nos registros.

2014-07-02 22:28:01,140 WARN org.apache.hadoop.hbase.regionserver.HRegionServer: Unable to connect to master. Retrying. Error was:
java.net.SocketException: Invalid argument
    at sun.nio.ch.Net.connect(Native Method)
    at sun.nio.ch.SocketChannelImpl.connect(SocketChannelImpl.java:534)
    at org.apache.hadoop.net.SocketIOWithTimeout.connect(SocketIOWithTimeout.java:193)
    at org.apache.hadoop.net.NetUtils.connect(NetUtils.java:528)
    at org.apache.hadoop.net.NetUtils.connect(NetUtils.java:492)
    at org.apache.hadoop.hbase.ipc.HBaseClient$Connection.setupConnection(HBaseClient.java:392)
    at org.apache.hadoop.hbase.ipc.HBaseClient$Connection.setupIOstreams(HBaseClient.java:438)
    at org.apache.hadoop.hbase.ipc.HBaseClient.getConnection(HBaseClient.java:1141)
    at org.apache.hadoop.hbase.ipc.HBaseClient.call(HBaseClient.java:988)
    at org.apache.hadoop.hbase.ipc.WritableRpcEngine$Invoker.invoke(WritableRpcEngine.java:87)
    at com.sun.proxy.$Proxy10.getProtocolVersion(Unknown Source)
    at org.apache.hadoop.hbase.ipc.WritableRpcEngine.getProxy(WritableRpcEngine.java:141)
    at org.apache.hadoop.hbase.ipc.HBaseRPC.waitForProxy(HBaseRPC.java:208)
    at org.apache.hadoop.hbase.regionserver.HRegionServer.getMaster(HRegionServer.java:2040)
    at org.apache.hadoop.hbase.regionserver.HRegionServer.reportForDuty(HRegionServer.java:2086)
    at org.apache.hadoop.hbase.regionserver.HRegionServer.run(HRegionServer.java:748)
    at java.lang.Thread.run(Thread.java:701)
2014-07-02 22:28:31,764 WARN org.apache.hadoop.hbase.regionserver.HRegionServer: Unable to connect to master. Retrying. Error was:
org.apache.hadoop.hbase.ipc.HBaseClient$FailedServerException: This server is in the failed servers list: <MY_MASTER_SERVER>/<MY_MASTER_NAME>:<MY_MASTER_PORT>
    at org.apache.hadoop.hbase.ipc.HBaseClient$Connection.setupIOstreams(HBaseClient.java:427)
    at org.apache.hadoop.hbase.ipc.HBaseClient.getConnection(HBaseClient.java:1141)
    at org.apache.hadoop.hbase.ipc.HBaseClient.call(HBaseClient.java:988)
    at org.apache.hadoop.hbase.ipc.WritableRpcEngine$Invoker.invoke(WritableRpcEngine.java:87)
    at com.sun.proxy.$Proxy10.getProtocolVersion(Unknown Source)
    at org.apache.hadoop.hbase.ipc.WritableRpcEngine.getProxy(WritableRpcEngine.java:141)
    at org.apache.hadoop.hbase.ipc.HBaseRPC.waitForProxy(HBaseRPC.java:208)
    at org.apache.hadoop.hbase.regionserver.HRegionServer.getMaster(HRegionServer.java:2040)
    at org.apache.hadoop.hbase.regionserver.HRegionServer.reportForDuty(HRegionServer.java:2086)
    at org.apache.hadoop.hbase.regionserver.HRegionServer.run(HRegionServer.java:748)
    at java.lang.Thread.run(Thread.java:701)

Até agora não encontrei nenhuma diferença entre o antigo e o novo servidor:

  • ambos rodando o Ubuntu 12.04 com todas as atualizações mais recentes e o CDH4 da Cloudera para o HBase
  • nem o / etc / hosts tem entradas para o HBase principal (embora eu tenha tentado adicionar um em novos servidores, mas ainda com o mesmo problema)
  • firewalls devem ser configurados da mesma forma, sem nenhuma restrição de rede local (OBSERVAÇÃO: em novos servidores, posso fazer telnet para a porta 60000, a porta do meu HBase Master, sem erros)

Durante a depuração, vi uma menção on-line sobre a configuração do IPv6 possivelmente causando problemas, mas, tanto quanto sei, os servidores antigos e os novos têm as configurações padrão que o Ubuntu usa para isso.

Alguma idéia de como eu posso depurar mais e / ou qual pode ser a questão?

    
por Dolan Antenucci 03.07.2014 / 16:53

0 respostas