Hadoop的簡介:node
Hadoop是apache軟件基金會的開源分佈式計算平臺hadoop集羣包括兩種角色Mater和Slave。一個HDFS集羣由一個運行於Master上的NameNode和若干個運行於Slave節點的DataNode組成。NameNode負責管理文件系統命名空間和客戶端對文件系統的訪問操做;DataNode管理存儲的數據。文件以塊形式在DataNode中存儲,假如一個塊大小設置爲50MB,塊的副本數爲3(經過設置塊的副本數來達到冗餘效果,防止單個DataNode磁盤故障後數據丟失),一個40MB的文件將被存儲在一個塊中,而後將相同的3個塊存儲在3個DataNode中實現冗餘。大文件將被切成小塊存儲。web
本案例的目的是搭建hadoop的HDFS,經過DataNode節點的添加與刪除實現HDFS空間動態增長與減小,以及HDFS文件系統的基本管理。apache
案例環境:瀏覽器
案例實施:安全
1.準備環境ssh
在master、slave1 - 3上配置域名解析、主機名分佈式
(1)配置host解析ide
(2)修改各自的主機名oop
在192.168.0.11主機spa
在192.168.0.12主機
在192.168.0.13主機
(3)JDK安裝
(4)添加hadoop運行用戶
同理在slave1 - slave3上重複步驟(3)和步驟(4)
2.配置SSH密鑰對
要求master免密碼登陸各slave,用於開啓相應服務。
Master無密碼鏈接slave,先切換hadoop用戶,用ssh-keygen按照默認配置直接按Enter鍵生成密鑰對,經過ssh-copy-id將公鑰複製至3個slave主機中,複製過程須要輸入slave主機的hadoop用戶密碼,做用是master遠程啓動slave
3.安裝hadoop,在master和slave上設置環境變量
(1)安裝hadoop
(2)配置環境變量
(3)配置hadoop
各slave主機也須要安裝hadoop並設置環境變量,第三步由master經過SSH安全通道複製給各slave
4.使用HDFS初始化master
(1)格式化HDFS文件系統
(2)檢查新生成的目錄
(3)啓動hadoop羣集
啓停hadoopde的管理命令位於@HADOOP_HOME/sbin下,以start-*或stop-*開頭;單獨啓動HDFS分佈式文件系統可以使用start-dfs.sh,也能夠使用如下命令啓動整個hadoop集羣。
(4)驗證訪問
經過瀏覽器查看Namenode,即master,訪問http://192.168.0.10:50070/,
能夠查看視圖統計信息和HDFS存儲信息等。
驗證以前先關閉master和全部slave的防火牆
(5)Hadoop基本命令
使用「hadoop fs」命令能夠結合普通的文件管理命令實現不少操做,如查看、修改權限、統計、獲取幫助、建立、刪除、上傳下載文件等,更多的用法可以使用「hadoop fs -help」或「hadoop fs -usage」命令查看
(6)HDFS高級命令
開啓安全模式
複製
將本地文件複製到HDFS上
將HDFS上文件複製到本地
權限和歸屬
修改屬組
修改權限
修改全部者
統計顯示目錄中文件大小
合併文件
5.爲HDFS集羣添加節點
(1)slave4節點安裝jdk與hadoop,配置環境變量、添加用戶
(2)配置/etc/hosts解析,Namenode與4臺DataNode都要配置
(3)配置ssh無密碼鏈接
(4)在master上修改hadoop配置後,複製到其餘節點
(5)新節點啓動並平衡節點已經存儲數據
(6)查看集羣信息
6.刪除DataNode節點
(1)增長exclude配置,做用爲存放要刪除的DataNode信息
(2)檢查slave4的進程
(3)查看集羣信息