2013-06-14 4 views
2

Мы пытаемся подключиться к серверу HBase из WebApp, развернутого в WebLogic 12c.Подключение к HBase из WebLogic 12c

WebApp использует файл jar, который содержит код подключения клиента HBase. Этот код подключается к HBase через экземпляр HTablePool, который ленив инициализируется следующим образом, когда первый запрос на HTable сделан:

public HTableInterface getTable(String tableName) { 

    if (pool == null) { 

     logger.info("Initializing connection to HBase"); 

     final Configuration config = HBaseConfiguration.create(); 

     config.set("hbase.zookeeper.quorum", "<HBaseHost>"); 

     pool = new HTablePool(config, Integer.MAX_VALUE); 

     logger.info("HTable pool created"); 

    } 

    return = pool.getTable(tableName); 


} 

Этот код прекрасно работает, когда вызывается из JUnit (то есть без развертывания его WebLogic). Но его унции развернут WL и вызывается из WebApp следующее исключение (обратите внимание, что Ive заменил все конкретные детали соединения с помощью, и т.д.

INFO: Инициирование соединения клиента, ConnectString =: 2181 sessionTimeout = 180000 watcher = hconnection 14-Jun-2013 17:28:06 org.apache.zookeeper.ClientCnxn $ SendThread startConnect INFO: Открытие соединения сокета с сервером /: 2181 13/06/14 17:28:06 INFO zookeeper.RecoverableZooKeeper : Идентификатор этого процесса - 6504 @ 14-Jun-2013 17:28:06 org.apache.zookeeper.ClientCnxn $ SendThread run ПРЕДУПРЕЖДЕНИЕ: сеанс 0x0 для сервера null, непредвиденная ошибка, закрытие соединения сокета и попытка повторного подключения java.lang.IllegalArgumentException: не было зарегистрировано ни одной конфигурации, которая может обрабатывать конфигурацию с именем Клиент по адресу com.bea.common.security.jdkutils.JAASConfiguration.getAppConfigurationEntry (JAASConfiguration.java:130) at org.apache.zookeeper.client. ZooKeeperSaslClient. (ZooKeeperSaslClient.java:92) в org.apache.zookeeper.ClientCnxn $ SendThread.startConnect (ClientCnxn.java:938) в org.apache.zookeeper.ClientCnxn $ SendThread.run (ClientCnxn.java:973) 13/06/14 17:28:07 WARN zookeeper.RecoverableZooKeeper: возможно переходное исключение ZooKeeper: org.apache.zookeeper.KeeperException $ ConnectionLossExce ption: KeeperErrorCode = ConnectionLoss for/hbase/master 13/06/14 17:28: 07 INFO util.RetryCounter: Спящий 2000мс до повторной попытки №1 ...

Возможно, нам недостает дополнительной конфигурации JAAS, позволяющей устанавливать исходящие соединения из WL?

Любая помощь будет высоко оценена.

+0

Посмотрите, поможет ли эта нить: https://community.jboss.org/thread/157690 –

ответ

3

ИТАК после некоторого более Googling мы обнаружили, что это связано с:

https://issues.apache.org/jira/browse/ZOOKEEPER-1696

Проблема с комбинацией WebLogic/Zookeeper, когда не используется SASL.

Zookeeper Jira выше ссылки на исправление на источник Zookeeper, который, к сожалению, мы не можем использовать, как мы должны работать с Cloudera CDH 4.2.2

Скорее всего, мы будем переключаться на JBoss. По крайней мере, JBoss 5 (самая низкая версия, которую мы можем запустить) не показывает эту проблему. Мы также попробуем JBoss 6 & 7, посмотрим, что будет дальше.

Примите это как ответ, надеюсь, это будет полезно для кого-то.

Смежные вопросы