有2台机器:
id-test-n03 : hadoop-hbase-master, hadoop-hbase-regionserver, hadoop-hbase-thrift, hadoop-zookeeper-serverid-test-i03 : hadoop-hbase-regionserver它们都是 Ubuntu Maverick 机器,使用 Cloudera CDH3 存储库安装了所有 Hadoop(CDH3u3) 和 HBase 包。
仅使用 id-test-n03 时没有问题。正如预期的那样,HBase 主 Web 控制台上有 1 个区域服务器(http://id-test-n03:60010/master-status)。
将区域服务器添加到 id-test-i03 后,我在 HBase master 上发现了重复的区域服务器(都具有相同的地址 id-test-i03:60030)网络控制台:
hbase shell 中的状态为:
hbase(main):001:0> status 'detailed'
version 0.90.4-cdh3u3
0 regionsInTransition
3 live servers
id-test-i03:60020 1332390489086
requests=0, regions=0, usedHeap=24, maxHeap=983
id-test-n03.daum.net:60020 1332389557235
requests=0, regions=2, usedHeap=26, maxHeap=983
.META.,,1
stores=1, storefiles=0, storefileSizeMB=0, memstoreSizeMB=0, storefileIndexSizeMB=0
-ROOT-,,0
stores=1, storefiles=2, storefileSizeMB=0, memstoreSizeMB=0, storefileIndexSizeMB=0
id-test-i03:60020 1332390489086
requests=0, regions=0, usedHeap=0, maxHeap=0
0 dead servers
因此,我尝试停止 id-test-i03 上的区域服务器,但发现只有一个区域服务器死了,另一个还活着:
hbase(main):002:0> status 'detailed'
version 0.90.4-cdh3u3
0 regionsInTransition
2 live servers
id-test-n03.daum.net:60020 1332389557235
requests=0, regions=2, usedHeap=29, maxHeap=983
.META.,,1
stores=1, storefiles=0, storefileSizeMB=0, memstoreSizeMB=0, storefileIndexSizeMB=0
-ROOT-,,0
stores=1, storefiles=2, storefileSizeMB=0, memstoreSizeMB=0, storefileIndexSizeMB=0
id-test-i03:60020 1332390489086
requests=0, regions=0, usedHeap=0, maxHeap=0
1 dead servers
id-test-i03.daum.net,60020,1332390489086
根据master web console上的信息,duplicate region server的区别在于Start Code和Load。一个有主机名,另一个在起始代码中有 FQDN。一个有主机名的负载是空的。
id-test-n03 和 id-test-i03 的 /etc/hosts/ 是:
127.0.0.1 localhost
192.168.1.1 id-test-n03 id-test-n03.daum.net
192.168.1.2 id-test-i03 id-test-i03.daum.net
两台机器的 hbase-site.xml 是:
<configuration>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.rootdir</name>
<value>hdfs://id-test-n03:8020/hbase</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>id-test-n03</value>
</property>
</configuration>
感谢您的任何建议。
问题通过以下步骤解决。
首先,删除两台机器的 /etc/hosts 中的 FQDN:
127.0.0.1 localhost
192.168.1.1 id-test-n03
192.168.1.2 id-test-i03
然后,在两台机器的/etc/resolv.conf中注释掉search $DOMAIN_NAME:
#search daum.net
nameserver 10.20.30.40
最后,重启两台机器上的所有 Hadoop 和 HBase 服务。
通过这样做,Hadoop 和 HBase 服务器不再使用 FQDN,仅与主机名通信。
添加和删除区域服务器会按预期反射(reflect)在 HBase 主状态 Web 控制台和 hbase shell 中。
最佳答案
启动HBase后短时间内显示重复的region server是正常现象,过后会自动删除
关于hadoop - HBase 主状态中显示的重复区域服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9816564/
我正在尝试使用ruby和Savon来使用网络服务。测试服务为http://www.webservicex.net/WS/WSDetails.aspx?WSID=9&CATID=2require'rubygems'require'savon'client=Savon::Client.new"http://www.webservicex.net/stockquote.asmx?WSDL"client.get_quotedo|soap|soap.body={:symbol=>"AAPL"}end返回SOAP异常。检查soap信封,在我看来soap请求没有正确的命名空间。任何人都可以建议我
我需要在客户计算机上运行Ruby应用程序。通常需要几天才能完成(复制大备份文件)。问题是如果启用sleep,它会中断应用程序。否则,计算机将持续运行数周,直到我下次访问为止。有什么方法可以防止执行期间休眠并让Windows在执行后休眠吗?欢迎任何疯狂的想法;-) 最佳答案 Here建议使用SetThreadExecutionStateWinAPI函数,使应用程序能够通知系统它正在使用中,从而防止系统在应用程序运行时进入休眠状态或关闭显示。像这样的东西:require'Win32API'ES_AWAYMODE_REQUIRED=0x0
我想安装一个带有一些身份验证的私有(private)Rubygem服务器。我希望能够使用公共(public)Ubuntu服务器托管内部gem。我读到了http://docs.rubygems.org/read/chapter/18.但是那个没有身份验证-如我所见。然后我读到了https://github.com/cwninja/geminabox.但是当我使用基本身份验证(他们在他们的Wiki中有)时,它会提示从我的服务器获取源。所以。如何制作带有身份验证的私有(private)Rubygem服务器?这是不可能的吗?谢谢。编辑:Geminabox问题。我尝试“捆绑”以安装新的gem..
我得到了一个包含嵌套链接的表单。编辑时链接字段为空的问题。这是我的表格:Editingkategori{:action=>'update',:id=>@konkurrancer.id})do|f|%>'Trackingurl',:style=>'width:500;'%>'Editkonkurrence'%>|我的konkurrencer模型:has_one:link我的链接模型:classLink我的konkurrancer编辑操作:defedit@konkurrancer=Konkurrancer.find(params[:id])@konkurrancer.link_attrib
我主要使用Ruby来执行此操作,但到目前为止我的攻击计划如下:使用gemsrdf、rdf-rdfa和rdf-microdata或mida来解析给定任何URI的数据。我认为最好映射到像schema.org这样的统一模式,例如使用这个yaml文件,它试图描述数据词汇表和opengraph到schema.org之间的转换:#SchemaXtoschema.orgconversion#data-vocabularyDV:name:namestreet-address:streetAddressregion:addressRegionlocality:addressLocalityphoto:i
所以我在关注Railscast,我注意到在html.erb文件中,ruby代码有一个微弱的背景高亮效果,以区别于其他代码HTML文档。我知道Ryan使用TextMate。我正在使用SublimeText3。我怎样才能达到同样的效果?谢谢! 最佳答案 为SublimeText安装ERB包。假设您安装了SublimeText包管理器*,只需点击cmd+shift+P即可获得命令菜单,然后键入installpackage并选择PackageControl:InstallPackage获取包管理器菜单。在该菜单中,键入ERB并在看到包时选择
最近,当我启动我的Rails服务器时,我收到了一长串警告。虽然它不影响我的应用程序,但我想知道如何解决这些警告。我的估计是imagemagick以某种方式被调用了两次?当我在警告前后检查我的git日志时。我想知道如何解决这个问题。-bcrypt-ruby(3.1.2)-better_errors(1.0.1)+bcrypt(3.1.7)+bcrypt-ruby(3.1.5)-bcrypt(>=3.1.3)+better_errors(1.1.0)bcrypt和imagemagick有关系吗?/Users/rbchris/.rbenv/versions/2.0.0-p247/lib/ru
在Rails4.0.2中,我使用s3_direct_upload和aws-sdkgems直接为s3存储桶上传文件。在开发环境中它工作正常,但在生产环境中它会抛出如下错误,ActionView::Template::Error(noimplicitconversionofnilintoString)在View中,create_cv_url,:id=>"s3_uploader",:key=>"cv_uploads/{unique_id}/${filename}",:key_starts_with=>"cv_uploads/",:callback_param=>"cv[direct_uplo
当我的预订模型通过rake任务在状态机上转换时,我试图找出如何跳过对ActiveRecord对象的特定实例的验证。我想在reservation.close时跳过所有验证!叫做。希望调用reservation.close!(:validate=>false)之类的东西。仅供引用,我们正在使用https://github.com/pluginaweek/state_machine用于状态机。这是我的预订模型的示例。classReservation["requested","negotiating","approved"])}state_machine:initial=>'requested
我试图在索引页中创建一个超链接,但它没有显示,也没有给出任何错误。这是我的index.html.erb代码。ListingarticlesTitleTextssss我检查了我的路线,我认为它们也没有问题。PrefixVerbURIPatternController#Actionwelcome_indexGET/welcome/index(.:format)welcome#indexarticlesGET/articles(.:format)articles#indexPOST/articles(.:format)articles#createnew_articleGET/article