GPS-Graph Processing System每台机器运行多个Task经验总结(二)

HamaWhite 原创,转载请注明出处!欢迎大家加入Giraph 技术交流群: 228591158

1.        集群环境

由13台曙光A610服务器组成的集群,具体信息为:test150、test151、test152、test153、test154、test155、test156、test157、test158、test159、test60、test61、test164。每个服务器上都建有gougou用户,test150为master,其余12个为slave

 

2.        下图是官网的教程。下面以配置在每个slave上运行4个Task为例。


3.        修改test150: /home/gougou/GPS/trunk/master-scripts目录下的slaves文件,每个test1xx要出现4次。

gougou@test150:~/GPS/trunk/master-scripts$cat slaves

test151

test152

test153

test154

test155

test156

test157

test158

test159

test160

test161

test164

test151

test152

test153

test154

test155

test156

test157

test158

test159

test160

test161

test164
    ……    //再重复两遍test151-test64 (不连续的)

 

4.  由于有12个worker,每个worker上要启动4个task,因此共有48个task。在test150:/home/gougou/GPS/trunk/test-data上新建test_machine_config_48.cfg文件,包含master共有49行。

gougou@test150:~/GPS/trunk/test-data$cat test_machine_config_48.cfg

-1      test150 7030

0       test151 7031

1       test152 7032

2       test153 7033

3       test154 7034

4       test155 7035

5       test156 7036

6       test157 7037

7       test158 7038

8       test159 7039

9       test160 7040

10      test161 7041

11      test164 7042

12      test151 7043

13      test152 7044

14      test153 7045

15      test154 7046

16      test155 7047

17      test156 7048

18      test157 7049

19      test158 7050

20      test159 7051

21      test160 7052

22      test161 7053

23      test164 7054

24      test151 7055

……

47     test164 7078

然后上传到HDFS上,命令如下:

$ hadoop fs -puttest_machine_config_48.cfg /machine-configs

 

5.  写运行Job的命令,并在/home/gougou/GPS/trunk/master-scripts目录下运行,运行Job的命令如下:

./start_gps_nodes.sh48 WebStanford-48 \

"-ifs/user/gougou/WebStanford-48-GPS/output-gps-partition-* \

-hcf/home/gougou/hadoop-1.0.3/conf/core-site.xml \

-jcgps.examples.pagerank.PageRankVertex###JobConfiguration \

-mcfg/machine-configs/test_machine_config_48.cfg \

-log4jconfig/home/gougou/GPS/trunk/conf/log4j.config \

-other -max###70"

 

6.        运行后发现slava上的task一直在写log,不能终止。错误的log如下:

 

7.        然后分析master(test150)上的log,结果发现是由于masterTaskJVM的内存不足,查看/home/gougou/GPS/trunk/scripts目录下的start_gps_node.sh文件发现,默认masterTask的最大内存为50M,slave Task的最大内存为256M。如下截图:

 

8.        修改JVM的内存大小,Master和Slave Task都调整为4G (4096M),修改test150: /home/gougou/GPS/trunk/scripts目录下的start_gps_node.sh文件,如下:


9.        勿忘:上面修改只对master生效,也能解决上面遇到的master JVM内存不足的问题,以后若运行大量数据,则也会遇到Slave内存不足的问题,故把test150的修改要拷贝到集群所有机子上。在test150: /home/gougou/GPS/trunk/master-scripts运行下述命令即可:$ ./copy_start_gps_node_script_to_slaves.sh 12

注:12表示会读取slave文件中的前12行个机器,刚好是test151-test164。因此slave文件应该写成test151-test164 ,重复4遍。不要写成如下(即把一个slave连续写4次):

test151

test151

test151

test151

test152

test152

……

转载请注明出处。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值