Nutch+hadoop環境搭建

之前搭建環境或是配置軟件歷來都沒有留Tips的習慣,但實踐證實這是錯誤的——作過不等於記得怎麼作,遇到過的錯誤也不等於從此就不是錯誤了。Nutch跟Hadoop的搭建困擾了我好久,但回頭看看又以爲真正有些問題的其實就幾個關鍵點,因此以爲花些時間寫個簡單流程,緬懷一下最近的探索,也但願能給想要搭建Nutch或hadoop的同窗提供一些幫助。歡迎你們指正。 node

想要說明一下的是,雖說hadoop誕生於nutch,但如今hadoop已經徹底獨立爲一個分佈式框架,咱們能夠簡 單地理解爲nutch只是跑在hadoop基礎之上的一個分佈式應用程序(實現的功能是開源的搜索引擎:crawl+index+search)。根據我 的實踐,Nutch+hadoop的配置關鍵仍是在於hadoop環境的搭建。linux

Hadoop 環境搭建apache

1.     硬件環境及軟件選擇框架

硬件環境:2臺Fedora虛擬機(我本身實驗的時候用了4臺,有兩臺在另一位同窗的機子上,因此如今就不佔用了),機器狀況以下表:ssh

計算機名分佈式

IPoop

內存搜索引擎

角色spa

Namenode.net

172.18.218.34

1G

Namenode+datanode

Datanode1

172.18.218.44

512M

Datanode

另外,兩個linux系統都建立了一個名爲hadoop的用戶。

至於nutch,我選擇的是1.2版本,由於這個版本集成了Hadoop,不用再單獨去下載Hadoop,並且兼容性較好。

下載地址:http://apache.etoak.com//nutch/ ,若是有須要,也能夠從我這裏拷貝。

2.     Hosts文件修改

節點之間的通訊有時候會用到IP地址,有時候會用到計算機名,因此須要給出節點IP地址跟計算機名的對應,linux系統中這種對應關係體如今/etc/hosts文件中,編輯hosts文件,按「IP   計算機名」的形式把各個節點寫進hosts文件。

其中::1這一行是跟IPv6相關的,不須要去理會。其中127.0.0.1這一行是要註釋掉的,否則以後運行 hadoop的時候會出現「Bad connection to DFS」的錯誤,DFS是hadoop的文件系統。每次重啓系統,hosts文件中都會自動自動加上一行127.0.0.1(緣由不解),運行 hadoop以前都要把這一行kill掉才行。

對於機器datanode1,hosts文件也要作相似處理。

3.     SSH無密碼訪問

Hadoop集羣中節點都是經過ssh相互聯繫,進行數據傳輸,咱們不可能爲每次鏈接輸入訪問密碼(常規ssh須要訪問密碼),因此咱們須要進行相應配置,使節點之間的ssh鏈接不須要密碼。 咱們能夠經過設置密鑰來實現。

首先在namenode跟datanode上安裝ssh(通常狀況下已經默認安裝了)。

而後在全部的節點(包括namenode跟datanode)上建立公鑰私鑰。

建立公鑰私鑰命令: ssh-keygen –t rsa

期間會要求輸入一些信息,直接按回車就能夠。這樣,在默認的路徑/home/hadoop/.ssh 目錄下建立私鑰 id_rsa 和一個公鑰 id_rsa.pub 。

對於 datanode 節點:

將本身的公鑰發送到 namenode 上:

#cp id_rsa.pub  datanode1_rsa.pub

#scp  datanode1_rsa.pub  172.18.218.34:/home/hadoop/.ssh

這裏須要注意,因爲每一個 datanode 節點都要將本身的公鑰傳到 namenode 的相同路徑下,所以,各個 datanode 發送的公鑰文件名不能相同。這裏使用 cp 命令,在每臺 datanode 節點上將公鑰文件複製爲惟一名字的文件。

對於 namenode 節點:

在收到全部 datanode 發送過來的公鑰文件以後,要綜合這些文件(包括自身),並將這些文件發送到每一個節點上:

#cp id_rsa.pub  authorized_keys

#cat datanode1_rsa.pub >>authorized_keys

把公鑰authorized_keys拷貝到全部節點的.ssh文件夾下:

#scpauthorized_keys 172.18.218.44:/home/hadoop/.ssh 

這時必定要查看一下 ssh 配置是否成功,查看方式是使用 ssh 命令: ssh 其餘機器 ip ,若是不須要密碼就能夠登陸,就說明配置成功。若是還須要密碼,乾脆沒法登陸,則須要重啓電腦。重啓以後再次使用 ssh 命令,若是還須要密碼或者沒法登陸,則須要從新配置一遍。

摘自:http://www.linuxidc.com/Linux/2011-12/48782.htm

http://blog.csdn.net/jackydai987/article/details/6222953

相關文章
相關標籤/搜索