一、Hadoop的介紹
Hadoop是Apache的一個(gè)偽分布式文件系統(tǒng)的開源項(xiàng)目。作者名為Doug Cutting,Hadoop項(xiàng)目是他通過(guò)Google的發(fā)布三篇論文所啟發(fā),分別為GFS、MapReduce和BigTable。Hadoop最受歡迎是致力于搜索大量數(shù)據(jù)進(jìn)行分類工具。
Hadoop的優(yōu)點(diǎn):
①高可用性:Hadoop按位存儲(chǔ)和處理力能強(qiáng)
②高擴(kuò)展性:Hadoop是在可用的計(jì)算機(jī)集族間分配數(shù)據(jù)并完成計(jì)算任務(wù),這些集族間可以方便的擴(kuò)展到數(shù)以千計(jì)的節(jié)點(diǎn)中。
③高效性:Hadoop能夠在節(jié)點(diǎn)之間動(dòng)態(tài)的移動(dòng)數(shù)據(jù),并保證各個(gè)節(jié)點(diǎn)的平衡。
④高容錯(cuò)性:Hadoop能夠自動(dòng)保存數(shù)據(jù)的多個(gè)副本,并且能夠?qū)⑹〉娜蝿?wù)重新分配。
⑤低成本:Hadoop是開源項(xiàng)目,對(duì)比與機(jī)體一身、商用商用數(shù)據(jù)倉(cāng)庫(kù)以及QlikView、Yonghong Z-Suite等數(shù)據(jù)集市,成本會(huì)大大降低。
---來(lái)自百科,介紹不多說(shuō),進(jìn)入實(shí)踐動(dòng)手搭建^_^
二、搭建配置環(huán)境
原材料:ubuntu-16.04.3-desktop-amd64.iso,jdk-8u151-linux-x64.tar.gz,hadoop-2.4.0.tar.gz
(1)搭建Hadoop需要的安裝環(huán)境
1、JDK的配置。參考http://www.cnblogs.com/Trappist-1/p/8193959.html
2、Hadoop的環(huán)境配置
①下載:在http://hadoop.apache.org/index.html官網(wǎng)下載hadoop,在我寫這篇文章的時(shí)候最新版本是3.0.0。
②解壓:把下載的安裝包解壓到/home/xxx/app/hadoop目錄下(需要sudo mkdir /usr/hadoop),使用命令 tar -zxvf hadoop-2.4.0.tar.gz 解壓包,使用命令 mv hadoop-2.4.0 hadoop 重命名一下。
③設(shè)置環(huán)境變量:(如同配置JDK環(huán)境變量)使用命令sudo vim /etc/profile 編輯文件,在文件后面添加一下兩行代碼
export HADOOP_HOME =/home/xxx/app/hadoop
export PATH = $HADOOP_HOME/bin:$PATH
添加完成之后,使用命令 source /ect/profile
3、安裝SSH(主要為了免密碼登錄,SSH詳細(xì)介紹參考...)
使用命令 ssh-keygen,然后一直按回車,會(huì)生成一下信息。(SHA256 每個(gè)都不一樣)
進(jìn)入.ssh文件夾(.開頭的是系統(tǒng)隱藏文件,可以通過(guò)命令 ls -a 查看),把id_rsa.pub 公鑰附加到授權(quán)文件authorized_keys中,使用命令 cat id_rsa.pud >> authorized_keys,或者使用重命名方式 cp id_rsa.pud authorized_keys 。chmod 700 ~/.ssh chmod 600 ~/.ssh/authorized_keys
,修改訪問權(quán)限。
配置Hadoop的需要安裝環(huán)境已經(jīng)搭建好,接下來(lái)要修改Hadoop的配置環(huán)境。
(2)配置Hadoop偽分布式模式
配置Hadoop要修改解壓安裝包的4個(gè)配置文件
1、修改etc/hadoop目錄下的hadoop-evn.sh指定JDK所在位置。
2、修改core-site.xml文件,指定name主機(jī)節(jié)點(diǎn)和HDFS的根目錄
3、修改hdfs-site.xml指定namenode和datanode存放目錄,配置每個(gè)節(jié)點(diǎn)存放的副本數(shù)和hdfs的IP地址和端口號(hào)。
4、修改mapred-site.xml指定jobTarcker的位置
最后創(chuàng)建配置文件需要的文件目錄
使用命令 mkdir /var/lib/hadoop/tmp,chmod 777 /var/lib/hadoop 創(chuàng)建Hadoop的根目錄。
(3)格式化Namenode
使用命令 hadoop namenode -format。每次重新安裝或者初次安裝hadoop都需要且僅一次格式化。
(4)啟動(dòng)Hadoop
在Hadoop安裝根目錄sbin文件存放這啟動(dòng)和關(guān)閉Hadoop的運(yùn)行文件。為了啟動(dòng)關(guān)閉方便,把hadoop目錄下的sbin添加環(huán)境中。
Hadoop的命令如下(*.sh 是linux系統(tǒng)使用的命令,*.cmd是windows系統(tǒng)使用的命令)
①啟動(dòng)HDFS 輸入命令 start-dfs.sh,啟動(dòng)namenode、 datanode 、secondary namenode
②輸入jps查看hadoop進(jìn)程
③輸入hadoop fs -ls / 查看HDFS的文件根目錄。(為了演示效果,我通過(guò)-mkdir 命令 創(chuàng)建一個(gè)temp文件夾,hadoop的命令類似linux系統(tǒng))
Hadoop做了一個(gè)web管理系統(tǒng),我們可以輸入Hadoop所配置的IP和端口進(jìn)行訪問,比如我的是192.168.157.130:50070(默認(rèn)是50070端口)
④輸入start-yarn.sh啟動(dòng)yarn,并輸入jps查看進(jìn)程,我們可以發(fā)現(xiàn)啟動(dòng)了兩個(gè)進(jìn)程,ResourceManager和NodeManager。
如果能正常啟動(dòng)著幾個(gè)進(jìn)程,說(shuō)明Hadoop環(huán)境搭建完成。
三、遇到的問題
1、無(wú)法啟動(dòng)Datanode
在配置Hadoop過(guò)程中可能進(jìn)行多次的測(cè)試,所以避免不了重復(fù)多次要格式化namenode,網(wǎng)上一些說(shuō)法是多次格式化namenode導(dǎo)致namenode和datanode的VERSION不一致,其解決的方法是拷貝namenode的VERSION文件覆蓋datanode的。我的解決方法是,刪除文件夾,重新格式化,該方法會(huì)導(dǎo)致數(shù)據(jù)的丟失,由于是初始搭建,所以存在的都是測(cè)試的無(wú)用數(shù)據(jù)。
2、無(wú)法啟動(dòng)Secondary Namenode
①查看core-site.xml文件是否配置了hadoop.tmp.dir。
②是否正確創(chuàng)建hadoop.tmp.dir對(duì)應(yīng)的路徑,同時(shí)要訪問權(quán)限設(shè)置為777。
3、無(wú)法訪問50070端口
查看hdfs-site.xml文件是否配置dfs.http.address,值為0.0.0.0:50070。
聯(lián)系客服