Я пытаюсь подключиться к комиссионному серверу HBase в моем hortonworks DP.
Я использую HDP 3.0 с Apache HBase 2.0.0
Я запустил HBase-сервер с защитой Kerberos
kinit -kt /etc/security/keytabs/hbase.service.keytab hbase/node1.domain.com@domain.com && /usr/hdp/current/hbase-master/bin/hbase-daemon.sh start thrift -p 12345
Сначала я получал сообщение об ошибке «Нет заголовка версии протокола». Я полагаю, это была ошибка совместимости протокола, поэтому я попробовал несколько вещей
- Я читал, что thirft 2 не был поддержан happybase, поэтому я протестировал с easybase, форком happybase для поддержки thrift2. Я получаю сообщение об ошибке «TSocked read 0 bytes» через пару минут (время ожидания?)
-Тогда я попытался запустить службу «thirft2» вместо «thrift», так как понял, что они разные:
kinit -kt /etc/security/keytabs/hbase.service.keytab hbase/node1.domain.com@domain.com && /usr/hdp/current/hbase-master/bin/hbase-daemon.sh start thrift2 -p 12345
Но получил ту же ошибку.
Мой код похож на следующий фрагмент:
import os
import easybase
os.system("kinit -kt /app/hbase.service.keytab hbase/node1.domain.com@domain.com")
connection = easybase.Connection(host="node1", port= 12345)
table = connection.table("users")
for key, data in table.scan(row_prefix="username"):
print(key)
Те же ошибки с happybase вместо easybase
Спасибо