我在伪分布式模式下运行krejcmat/hadoop-hbase
docker。那就是master和slave在同一台机器上的不同容器中运行。在启动Hadoop集群和HBase之后,我使用以下命令启动主节点上的thrift服务器:
hbase thrift start -threadpool
我还公开了节点9090
(--expose=9090
开头的默认Thrift端口)。我想使用Happybase库通过Thrift API从我的主机连接到在Hadoop集群中运行的Hbase。这是我使用的命令:
connection = happybase.Connection('hadoop-hbase-master', 9090)
但我收到错误:
TTransportException(message="Could not connect to ('hadoop-hbase-master', 9090)", type=1)
这意味着无法访问Thrift API。是因为Thrift服务器没有运行吗?或者我应该在我的主机上使用某种Thrift客户端?或者我应该在其中一个奴隶而不是主人身上运行节俭服务器?
谢谢, Sepideh
答案 0 :(得分:0)
我开始节俭了
hbase thrift start
然后以下代码就可以了。
import happybase
connection = happybase.Connection('localhost')
你可以试试。