我有一个带有1个主节点和5个从节点的试用HBase群集。我想通过其REST API访问群集(基本上通过GET的方式写入广告展示数据)群集。 我希望能够在稍后使用Hadoop/Hive?Pig(TBD)运行汇总报表,因此我需要单个数据图片。如何通过负载平衡在HBase群集上使用REST api
我是否在主服务器上启动REST服务器并只写入该单个端点,还是在每个从节点上启动REST服务器实例并在从节点上进行负载均衡写入?
(后者看起来不正确,但我在文档中看到了一些提及,所以我有点困惑)。
我有一个带有1个主节点和5个从节点的试用HBase群集。我想通过其REST API访问群集(基本上通过GET的方式写入广告展示数据)群集。 我希望能够在稍后使用Hadoop/Hive?Pig(TBD)运行汇总报表,因此我需要单个数据图片。如何通过负载平衡在HBase群集上使用REST api
我是否在主服务器上启动REST服务器并只写入该单个端点,还是在每个从节点上启动REST服务器实例并在从节点上进行负载均衡写入?
(后者看起来不正确,但我在文档中看到了一些提及,所以我有点困惑)。
我使用其余的API通过nginx提供负载平衡。你的nginx的配置会是这个样子......
upstream cluster
{
server master:1234;
server slave1:1234;
server slave2:1234;
server slave3:1234;
server slave4:1234;
}
server
{
listen 4444;
server_name someserver.com;
location/
{
proxy_pass http://cluster;
proxy_set_header X-Real-IP $remote_addr;
proxy_next_upstream error timeout invalid_header http_500 http_502 http_503;
}
}
你会集群
hbase rest -p 1234 start
你会叫你休息通话someserver.com:4444在所有服务器上运行。
如果您不希望REST服务器成为瓶颈,那么您希望运行其中的几个并在它们之间实现负载平衡。
我不确定我是否会在datanode本身或另一组盒子上运行它们。高频解析REST消息可能会影响HBase本身的性能。