2016-02-29 3 views
3

Для начала я думаю, что эта проблема связана с проблемой в this post. Однако исправление для подключения оболочки HBase, предложенное в комментариях, тоже не работает для меня, и я не вижу разрешения.Google Cloud Bigtable HBase оболочка подключается

Подключение к моему кластеру Bigtable из оболочки HBase просто зависает с любой командой. Пример:

ubuntu:/opt/hbase-1.1.2# ./bin/hbase shell 
2016-02-29 13:43:38,975 WARN [main] util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable 
2016-02-29 13:43:39,114 INFO [main] grpc.BigtableSession: Opening connection for projectId [removed], zoneId us-central1-b, clusterId [removed], on data host bigtable.googleapis.com, table admin host bigtabletableadmin.googleapis.com. 
2016-02-29 13:43:39,191 INFO [BigtableSession-startup-0] grpc.BigtableSession: gRPC is using the JDK provider (alpn-boot jar) 
2016-02-29 13:43:39,516 INFO [bigtable-connection-shared-executor-pool1-t2] io.RefreshingOAuth2CredentialsInterceptor: Refreshing the OAuth token 
HBase Shell; enter 'help<RETURN>' for list of supported commands. 
Type "exit<RETURN>" to leave the HBase Shell 
Version 1.1.2, rcc2b70cf03e3378800661ec5cab11eb43fafe0fc, Wed Aug 26 20:11:27 PDT 2015 

hbase(main):001:0> list 
TABLE 

Корпус просто висит там неограниченно и делает это при любой введенной команде.

Вот результаты CheckConfig утилиты:

ubuntu:/opt/hbase-1.1.2# ./bin/hbase com.google.cloud.bigtable.hbase.CheckConfig 
User Agent: bigtable-hbase-1.1-0.2.2 
Project ID: [removed] 
Cluster Id: [removed] 
ZoneId: us-central1-b 
Cluster admin host: bigtableclusteradmin.googleapis.com 
Table admin host: bigtabletableadmin.googleapis.com 
Data host: bigtable.googleapis.com 
Attempting credential refresh... 
Exception in thread "main" java.lang.IllegalAccessError: tried to access field sun.security.ssl.Handshaker.localSupportedSignAlgs from class sun.security.ssl.ClientHandshaker 
    at sun.security.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:278) 
    at sun.security.ssl.Handshaker.processLoop(Handshaker.java:913) 
    at sun.security.ssl.Handshaker.process_record(Handshaker.java:849) 
    at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:1035) 
    at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1344) 
    at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1371) 
    at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1355) 
    at sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java:559) 
    at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:185) 
    at sun.net.www.protocol.http.HttpURLConnection.getOutputStream(HttpURLConnection.java:1093) 
    at sun.net.www.protocol.https.HttpsURLConnectionImpl.getOutputStream(HttpsURLConnectionImpl.java:250) 
    at com.google.bigtable.repackaged.com.google.api.client.http.javanet.NetHttpRequest.execute(NetHttpRequest.java:77) 
    at com.google.bigtable.repackaged.com.google.api.client.http.HttpRequest.execute(HttpRequest.java:965) 
    at com.google.auth.oauth2.ServiceAccountCredentials.refreshAccessToken(ServiceAccountCredentials.java:222) 
    at com.google.auth.oauth2.OAuth2Credentials.refresh(OAuth2Credentials.java:76) 
    at com.google.cloud.bigtable.hbase.CheckConfig.main(CheckConfig.java:68) 

Вот соответствующие версии и переменные окружения:

Linux ubuntu7 3.19.0-30-generiC#34~14.04.1-Ubuntu SMP Fri Oct 2 22:09:39 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux 
java version "1.7.0_95" 
export ALPN_VERSION=7.1.3.v20150130 
export HBASE_CLASSPATH="$(pwd)/lib/bigtable/bigtable-hbase-1.1-0.2.2.jar" 
export HBASE_OPTS="${HBASE_OPTS} -Xms1024m -Xmx2048m -Xbootclasspath/p:$(pwd)/lib/bigtable/alpn-boot-${ALPN_VERSION}.jar" 

Я бы признателен за любые решения/советы/подсказки при решении это. Благодаря!

ответ

2

Возможно, вы захотите использовать наш Quickstart для доступа к HBase Shell - он должен просто работать. (Взгляните на сайт hbasehbase-env после запуска быстрого запуска, чтобы узнать, как настроить его в будущем)

Версия 1.7.0_95 версии Java несовместима с w/alpn-boot. Мы перемещаем все наши образцы для использования netty-tcnative-boringssl, см. Пример Managed-VM-GAE для дополнительной информации.

+0

Спасибо @Les Vogel. Я использовал инструкции по установке оболочки hbase вручную и, должно быть, пропустил заметку о совместимых версиях. Я дам вам быстрый старт, а также версию java 8. –

+0

Все работает как ожидается с Java 8, еще раз спасибо! –

+0

Java 7 работает с артефактом netty-tcnactive-boringssl. –