Hadoop:Hadoop的分佈式(僞分佈式)部署安裝

今天總結一下hadoop的分佈式部署安裝,由於寡人資源實在是有限,在學習的時候,是在一臺機器上模擬多臺服務器進行部署的,後面我們在寫集羣。

原創文章,轉載請註明出處:http://blog.csdn.net/jessonlv/article/details/18270041

1、安裝前的準備

在安裝軟件之前,我們的linux系統具體要進行一下操作,不然,hadoop安裝不成功!

1、關閉防火牆,

RedHat 內置一個文本行的管理工具,可以管理防火牆、ip 地址、各類服務等信息的設置。使用setup 命令調出該工具。很簡單,我就不贅述了。。

2、修改IP地址

將虛擬機的ip地址和宿主機的ip地址設置在一個網段,互相ping通。命令也很簡單,不贅述。

3、修改hostname爲hadoop

命令“hostname 新主機名”,意味着修改主機名,但只對本次會話有效,重啓機器後失效。我們要想永久改主機名,需要修改配置文:/etc/sysconfig/network我們這裏將主機名改爲:hadoop

4、設置ssh自動登錄。

設置ssh自動登錄。

如果我們需要遠程管理其他機器的話,一般使用遠程桌面或者telnet。linxu 服務器幾乎都是命令行,所以只能使用telnet 了。telnet 的缺點是通信不加密,非常不安全,只適合於
內網訪問。爲解決這個問題,推出了加密的通信協議,即SSH。SSH 的全稱是Secure Shell,使用非對稱加密方式,傳輸內容使用rsa 或者dsa 加密,可以有效避免網絡竊聽。
hadoop 的進程之間通信使用ssh 方式,需要每次都要輸入密碼。爲了實現自動化操作,我們下面配置SSH 的免密碼登錄方式.

首先到用戶主目錄下:


在“ls -a”命令顯示的文件中,最後一列中間一項是“.ssh”,該文件夾是存放密鑰的。注意該文件夾是以“.”開頭的,是隱藏文件。待會我們生成的密鑰都會放到這個文件夾中。
現在執行命令,生成密鑰


解釋一下:
命令“ssh-keygen -t rsa”表示使用rsa 加密方式生成密鑰, 回車後,會提示三次輸入信息,我們直接回車即可。
然後進入密鑰文件夾,執行命令,


其中,命令“cp id_rsa.pub authorized_keys”用於生成授權文件。至此,配置部分完成了。這裏爲什麼要使用ssh 登錄本機哪?因爲hadoop 在本機部署時,需要使用ssh 訪問。
注意:文件夾“.ssh”中的三個文件的權限,是有要求的,“自己之外的任何人對每個文件都沒有寫權限”。另外,“.ssh”文件夾是700 權限。如果權限有問題,會造成SSH 訪問
失敗。
現在開始驗證SSH 無密碼登錄


執行“ssh localhost”意味着使用“ssh”通信協議訪問主機“localhost”,第一次執行時需要確認;第二次不再確認了。這就是無密碼登錄。當登錄到對方機器後,退出使用命令
“exit”。這兩次操作時,注意觀察主機名變化。讀者可以執行命令“ssh book0”,驗證dns對book0 解析是否正確。

注意:使用命令ssh 時,一定要觀察主機名的變化。很多同學在操作ssh 時,由於大量的使用ssh 登錄退出,忘記自己目前在哪臺機器了,執行了大量錯誤的操作。
另外,如果多次執行ssh,每次都要輸入確認信息的話,說明配置失敗了。可以刪除文件夾“.ssh”,重新配置。也可以重啓虛擬機再配置。只要嚴格按照上面的步驟操作,保證
能夠成功的。
如果還搞不定,給你個絕招” 刪除/etc/udev/rules.d/70-persistent-net.rules 文件,重啓
系統”。
配置出錯,可以查看/var/log/secure 日誌文件,找原因。

以上四項完成以後下面我安裝jdk和hadoop

2、安裝jdk和hadoop

(1)jdk-6u24-linux-xxx.bin
(2)hadoop-1.1.2.tar.gz


將這個兩個文件放在/usr/local 下,分別解壓,並將解壓後的文件分別命名爲: hadoop  和 jdk

1、首先配置jdk

我們知道,jdk的配置在/etc/profile裏。hadoop的配置道理和jdk是一樣的,看圖中紅線圈中的部分。


當然,編輯完配置文件後,還要執行

source /etc/profile
驗證執行 java -version 等命令。

3、修改hadoop的四個配置文件
這四個配置文件分別爲:

1、hadoop-env.sh

用vi編輯器打開,將下面的配置複製進去就行了:

export JAVA_HOME=/usr/local/jdk/
注意你的路徑。
2、core-site.xml

<configuration>
    <property>
        <name>fs.default.name</name>
        <value>hdfs://hadoop:9000</value>
        <description>change your own hostname</description>
    </property>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/usr/local/hadoop/tmp</value>
    </property>  
</configuration>
我在上面加了描述,只要和你的主機名相對應就行,這裏我的主機名字數hadoop

3、hdfs-site.xml

<configuration>
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
    <property>
        <name>dfs.permissions</name>
        <value>false</value>
    </property>
</configuration>

這個不需要改,直接複製上去就行。

4、mapred-site.xml

<configuration>
    <property>
        <name>mapred.job.tracker</name>
        <value>hadoop:9001</value>
        <description>change your own hostname</description>
    </property>
</configuration>
這個還是需要修改你的主機名,端口號不用改。
至此,四個文件都修改完畢,大功將要告成,哈哈。

4、格式化hadoop的namenode

hadoop namenode -format

如果出現上面的日誌信息,那說明咱們的hadoop安裝已經大功告成了。下面,我們看看勞動成果。

5、啓動hadoop

啓動命令:

./start-all.sh
在local/hadoop/bin 目錄下。

然後用jps命令查看下都啓動了什麼進程,我們發現hadoop的運行,一下子蹦出了五個進程,看名思意。

6、驗證hadoop

啓動成功後,我們在瀏覽器下驗證:




另外一個端口號再來一張:

至此,我們的安裝就全部完成了,後面我會總結下集羣的安裝、設置。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章