Проблема с подключением при попытке подключиться к HBase на удаленном сервере с использованием Java - PullRequest
0 голосов
/ 29 декабря 2018

Я пытаюсь соединиться с HBase на удаленном сервере, используя Java.Ниже мой код Java

String zookeeperHost = "myserverIP";
String tableName = "User";

Configuration hconfig = HBaseConfiguration.create();
hconfig.setInt("timeout", 1200);
hconfig.set("hbase.zookeeper.quorum",zookeeperHost);
hconfig.set("hbase.zookeeper.property.clientPort", "2181");
TableName tname = TableName.valueOf(tableName);

try {
    HBaseAdmin.checkHBaseAvailable(hconfig);
} catch (ServiceException e) {
    e.printStackTrace();
}

HTableDescriptor htable = new HTableDescriptor(tname);
htable.addFamily( new HColumnDescriptor("Id"));
htable.addFamily( new HColumnDescriptor("Name"));
System.out.println( "Connecting..." );
Connection connection = ConnectionFactory.createConnection(hconfig);
HBaseAdmin hbase_admin = (HBaseAdmin)connection.getAdmin();
System.out.println( "Creating Table..." );
hbase_admin.createTable( htable );
System.out.println("Done!");

, но я продолжаю получать это исключение

org.apache.hadoop.hbase.MasterNotRunningException:

com.google.protobuf.ServiceException: java.net.ConnectException: Соединение> отказано: нет дополнительной информации

Как я могу решить эту проблему?

Ответы [ 2 ]

0 голосов
/ 02 января 2019

Может быть две причины для исключения ниже

org.apache.hadoop.hbase.MasterNotRunningException

  1. Имя / IP хоста удаленной виртуальной машины:недоступен на клиентской машине.Чтобы это исправить, вам нужно обновить входящие правила, чтобы разрешить доступ к порту.Если в случае имени хоста ВМ, убедитесь, что вы добавили запись в /etc/hosts для разрешения имени хоста с IP-адресом.

  2. Второй проблемой может быть работа мастера HBase.,Убедитесь, что служба HMaster запущена с вашего удаленного сервера.

0 голосов
/ 31 декабря 2018

Добавить ниже в 'hconfig'

 hconfig.set("hbase.master", hbaseConnectionIpAddr);
 hconfig.set("hbase.master.port", hbaseConnectionPortNum);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...