2016-03-18 98 views
0

請你詳細說明你的答案。我遇到類似的問題。我的hadoop進程運行良好。我正在使用我的Macbook筆記本電腦作爲主設備,並將aws ec2實例設置爲「從設備」。儘管datanode在slave中處於活動狀態,但它不能運行我的進程。奴隸datanode不工作在hadoop 0.20.2和奴隸無法與主@ 54310溝通

下面

是從兩個節點

在我的電腦主節點

我的/ etc/hosts文件 ## # Host Database # # localhost is used to configure the loopback interface # when the system is booting. Do not change this entry. ## 127.0.0.1 localhost 255.255.255.255 broadcasthost #::1 localhost xxx master abc slave1 abc slave2

在從EC2實例

127.0.0.1本地主機

# The following lines are desirable for IPv6 capable hosts 
::1 ip6-localhost ip6-loopback 
fe00::0 ip6-localnet 
ff00::0 ip6-mcastprefix 
ff02::1 ip6-allnodes 
ff02::2 ip6-allrouters 
ff02::3 ip6-allhosts 
xxx master 
abc slave1 
abc slave2 

從日誌文件條目:

2016-03-18 11:04:05,826 INFO org.apache.hadoop.hdfs.server.datanode.DataNode:  STARTUP_MSG: 
/************************************************************ 
STARTUP_MSG: Starting DataNode 
STARTUP_MSG: host = 
STARTUP_MSG: args = [] 
STARTUP_MSG: version = 0.20.2 
STARTUP_MSG: build =   https://svn.apache.org/repos/asf/hadoop/common/branches/branch-0.20 -r 911707;  compiled by 'chrisdo' on Fri Feb 19 08:07:34 UTC 2010 
************************************************************/ 
2016-03-18 11:04:27,273 INFO org.apache.hadoop.ipc.Client: Retrying connect to  server: master/xxx:54310. Already tried 0 time(s). 
2016-03-18 11:04:48,294 INFO org.apache.hadoop.ipc.Client: Retrying connect to server: master/xxx:54310. Already tried 1 time(s). 

請幫我解決這個問題,我堅持了兩天。我也看了這個帖子link從aws論壇和許多其他的鏈接,但力量的幫助。

感謝

回答

0

你不應該運行在自己的筆記本電腦的主節點,但運行在EC2上的數據節點。這是因爲這些EC2服務器無法達到通過IP「10.0.0.130」你的筆記本電腦,它總是由ISP提供:

ping 10.0.0.130 
PING 10.0.0.130 (10.0.0.130): 56 data bytes 
Request timeout for icmp_seq 0 
Request timeout for icmp_seq 1 
Request timeout for icmp_seq 2 
Request timeout for icmp_seq 3 
Request timeout for icmp_seq 4 

您可以登錄到您的EC2機ping的IP,它不會工作。將主節點移至ec2並確保羣集中的每臺計算機以及hadoop部署中的每個角色都有相互訪問的權限。

+0

所以你的意思是沒有其他方式可以實現本地機器和aws ec2實例之間? – Anantha

+0

順便說一句,在互聯網上發佈你的ec2機器的IP地址不是很好的做法,否則黑帽黑客可能會攻擊它們。 – winiex

+0

如果您的本地機器有一個ec2機器可以到達的靜態IP,您的部署就沒問題。 **只有在測試下才可以,從未在生產過程中。** – winiex