1. 程式人生 > >hadoop偽分布式集群搭建與安裝(ubuntu系統)

hadoop偽分布式集群搭建與安裝(ubuntu系統)

log 結束 實的 變量 開啟 web 路徑 har ont

1:Vmware虛擬軟件裏面安裝好Ubuntu操作系統之後使用ifconfig命令查看一下ip;

技術分享

2:使用Xsheel軟件遠程鏈接自己的虛擬機,方便操作。輸入自己ubuntu操作系統的賬號密碼之後就鏈接成功了;

技術分享

3:修改主機的名稱vi /etc/hostname和域名和主機映射對應的關系 vi /etc/hosts,改過之後即生效,自己可以ping一下,我這裏ip對應master,比如ping master之後發現可以ping通即可;

技術分享

技術分享

技術分享

技術分享

4:修改過主機名稱和主機名與ip對應的關系之後;開始上傳jdk,使用filezilla這個工具將jdk文件以及其他文件上傳到ubuntu操作系統中;

技術分享

鼠標左擊選中想要上傳的文件拖到右邊即可,如下所示:

技術分享

上傳成功之後可以檢查一下,這裏默認上傳到root目錄下面;顯示已經上傳成功即可;

技術分享

5:上傳之後創建一個文件夾用於存放上傳的文件或者壓縮包;

技術分享

記住-C是大寫,小寫的-c會報錯,見下面的測試結果;

技術分享

技術分享

解壓縮之後可以進到自己創建的hadoop目錄下面看看效果,確定已經解壓縮了;

技術分享

6:解壓縮jdk之後開始將java添加到環境變量中(ubuntu操作系統中配置jdk的環境變量):

技術分享

進去之後按shift+g到最後面,到最前面雙擊g,點擊a/s/i這三個任意一個字母進入命令行模式,可以對配置文件進行修改;

配置的方式有很多種,這只是其中一種。

技術分享

配置好jdk之後可以測試一下是否配置成功,如下圖,如果沒有使用source /etc/profile刷新配置是無法測試成功的;

使用source /etc/profile刷新配置之後查看java的版本即可以查看出來;

這裏出了一點小插曲,我的linux版本的jdk第一次好像不能用,報了錯,以為沒配置好呢,後來才發現是jdk錯了,所以這裏都小心點;

技術分享

7:開始上傳hadoop和解壓縮hadoop;上傳和上傳jdk一樣的做法,這裏不做多敘述;

技術分享

技術分享

查看hadoop的目錄:hadoop-2.4.1/share/hadoop裏面是核心jar包;

技術分享

8:解壓縮之後開始配置hadoop,找到如下所示的路徑;

技術分享

修改如下幾個配置文件;詳細修改見如下配置所示:

技術分享

修改的第一個配置文件,hadoop-env.sh;

技術分享

修改的內容如下所示:主要修改就是jdk的JAVA_HOME;如果忘記自己jdk的目錄可以執行命令echo $JAVA_HOME復制一下結果即可;

技術分享

修改第二個配置文件:core-site.xml;

技術分享

修改的內容如下所示:因為是偽分布式,所以節點配置直接配置主機名了;

技術分享

修改第三個配置文件:hdfs-site.xml

技術分享

修改的內容如下所示:

技術分享

修改第四個配置文件:首先將mapred-site.xml.template修改為mapred.site.xml,然後就將開始修改配置文件;

技術分享

修改內容如下所示:

技術分享

修改第五個配置文件:yarn-site.xml;

技術分享

修改的內容如下所示:至此配置基本結束;

技術分享

修改第六個配置文件:vi slaves

技術分享

修改的內容即是自己的主機名稱:

技術分享

9:查看一下ubuntu下面的防火墻的狀態和關閉開啟防火墻:

下圖所示分別是關閉防火墻,查看防火墻的狀態,開始防火墻和查看防火墻的狀態;

技術分享

10:為了執行hadoop命令方便,同樣配置一下hadoop的環境變量;同樣vi /etc/profile ,配置如下所示:

配置保存之後記得source /etc/profile刷新配置;

技術分享

11:格式化namenode(是對namenode進行初始化)

技術分享

執行格式化命令後看到successfully表示格式化成功;

技術分享

12:啟動hadoop,先啟動HDFS,sbin/start-dfs.sh;再啟動YARN,sbin/start-yarn.sh;

啟動過程中輸出大概三次yes和密碼;輸入即可;

技術分享

技術分享

13:驗證是否啟動成功,使用jps命令驗證;查看有幾個進程;分別是啟動start-dfs.sh和start-yarn.sh的效果;

技術分享

技術分享

14:搭建好偽分布式集群之後可以在window訪問集群的web服務;

技術分享

15:簡單測試一下,將一個文件上傳到hdfs上面,如下所示:

技術分享

去web服務查看效果如下所示:就是剛剛上傳的文件;

技術分享

技術分享

16:將文件從hdfs分布式集群中下載下來:

效果如下所示:

技術分享

17:使用hadoop自帶的mapreduce程序來測試mapreduce的效果:

技術分享

計算圓周率的程序;

技術分享

簡單使用一下mapreduce,以計算單詞的個數為例;

創建一個count.txt用於測試裏面的單詞重復的次數:

技術分享

技術分享

因為數據是在集群上面跑的,所以文件要放到集群上面;

首先需要創建一個文件夾,用於存放文件;

技術分享

創建好的文件夾可以在web服務器裏面查看,如下所示:

技術分享

將新建的count.txt文件放到input文件夾裏面,如下所示:

技術分享

開始使用mapreduce的自帶案例進行單詞重讀測試:

技術分享

可以查詢執行之後出現的結果:也可以直接去web服務器查看執行的結果;

技術分享

可以使用命令查看執行的結果,如下所示:

技術分享

HDFS的大體實現的思想:
1:hdfs是通過分布式集群來存儲文件,為客戶端提供了一個便捷的訪問方式,就是一個虛擬的目錄結構
2:文件存儲到hdfs集群中去的時候是被切分成block塊的
3:文件的block存放在若幹臺datanode節點上的
4:hdfs文件系統中的文件於真實的block之間有映射關系,由namenode管理
5:每一個block在集群中會存儲多個副本,好處是可以提高數據的可靠性,還可以提供訪問的吞吐量;

18:hdfs常使用的命令:

hadoop fs                         顯示hadoop 的fs的功能 
hadoop fs -ls /                      列舉某目錄下面的文件夾 hadoop fs -lsr                      列舉某目錄下面的文件夾及其文件夾裏面的文件 hadoop fs -mkdir /user/hadoop       在user文件夾下面創建一個hadoop文件夾 hadoop fs -put a.txt /user/hadoop/       將a.txt文件上傳到user文件夾下面的hadoop文件夾下面 hadoop fs -get /user/hadoop/a.txt /       獲取到user文件夾下面的hadoop文件夾下面的a.txt文件 hadoop fs -cp /原路徑 /目標路徑              拷貝文件,從原路徑拷貝到目標路徑   hadoop fs -mv /原路徑 /目標路徑             從原路徑移動到目標路徑 hadoop fs -cat /user/hadoop/a.txt       查看a.txt文件裏面的內容 hadoop fs -rm /user/hadoop/a.txt            刪除user文件夾下面的hadoop文件夾下面的a.txt文件
hadoop fs -rm -r /user/hadoop/a.txt          遞歸刪除,文件夾和文件 hadoop fs -copyFromLocal /本地路徑 /目的路徑      與hadoop fs -put功能類似。 hadoop fs -moveFromLocal localsrc dst         將本地文件上傳到hdfs,同時刪除本地文件。 hadoop fs -chown 用戶名:用戶組名 /文件名         修改所屬的用戶和用戶組,權限修改
hadoop fs -chmod 777 /文件名               文件的權限可讀可寫可執行的的權限修改
hadoop fs -df -h /                    查看根目錄下面的磁盤空間,可用和未用等等
hadoop fs -du -s -h /                  查看某文件的大小
hadoop fs -du -s -h hdfs://主機名:9000/* 查看根目錄下面的所有文件的大小  

未完待續.......

hadoop偽分布式集群搭建與安裝(ubuntu系統)