Доступ к планшетному серверу для Accumulo, работающий на AWS

Я пытаюсь запустить простой драйвер для записи некоторых данных в экземпляр Accumulo 1.5, работающий на AWS, который использует кластер с одним узлом, управляемый CDH 4.7. Клиент успешно подключается к zookeeper, но затем происходит сбой со следующим сообщением:

2015-06-26 12:12:13 WARN  ServerClient:163 - Failed to find an available server in the list of servers: [172.31.13.210:10011:9997 (120000)]

Я попытался применить решение, указанное здесь , но это не решило проблему. IP-адрес, установленный для главного/подчиненного устройства, является внутренним IP-адресом AWS для сервера.

Кроме предупреждающего сообщения, я не смог найти в журналах Accumulo ничего, что указывало бы на то, что препятствует подключению к главному серверу. Любые предложения о том, где искать дальше?

--EDIT-- Похоже, zookeeper возвращает соединители удаленному клиенту, которые содержат ссылки на внутренний IP-адрес сервера AWS. Удаленный клиент не может использовать эти соединители, поскольку ему неизвестен внутренний IP-адрес. Когда я изменил внутренние IP-адреса в объектах соединителя бережливости на общедоступный IP-адрес, соединение работает нормально. По сути, я не могу понять, как заставить zookeeper возвращать общедоступные IP-адреса, а не внутренние AWS для удаленных клиентов.


person Richard Garcia    schedule 26.06.2015    source источник


Ответы (1)


172.31.13.210:10011:9997

Это выглядит действительно странно. Это должен быть IP/имя хоста и порт. Похоже, у вас как-то два порта..

Вы указали порты в файле slaves в ACCUMULO_CONF_DIR? Этот файл должен содержать только имя хоста/IP. Если вы хотите изменить порт, который прослушивает TabletServer, вам нужно изменить tserver.port.client.

person elserj    schedule 29.06.2015
comment
Я изменил порт, который прослушивает TabletServer, на 10011, чтобы избежать конфликтов со службами cdh. В файле рабов перечислены внутренние DNS сервера aws без портов. - person Richard Garcia; 29.06.2015
comment
Если ACCUMUL_CONF_DIR был неверным при вызове accumulo init, может ли это вызвать эту проблему? - person Richard Garcia; 29.06.2015
comment
Это не должно. accumulo init инициализирует HDFS и zookeeper, на процессы не влияет. Вы установили tserver.port.client на 10011 в accumulo-site.xml? Вот и все? - person elserj; 30.06.2015
comment
Для master.port.client задан порт 10010. На данный момент я считаю, что Accumulo настроен правильно и что проблема каким-то образом связана с моим экземпляром AWS. - person Richard Garcia; 30.06.2015