4.2 叢集節點初步搭建

尹成發表於2018-11-15

CentOS下搭建hadoop偽分散式
1.開啟配置好JDK的CentOS7,輸入 mkdir /usr/local/hadoop 建立一個hadoop的資料夾

2.將hadoop的tar包放到剛建立好的目錄

3.進入hadoop目錄,輸入 tar -zxvf hadoop-2.7.3.tar.gz 解壓tar包

4.輸入 java -version 檢查JDK是否配置成功,自己配置,不要用系統自帶的openJDK

5.輸入 ssh-keygen -t dsa -P ‘’ -f ~/.ssh/id_dsa 建立一個無密碼的公鑰,-t是型別的意思,dsa是生成的金鑰型別,-P是密碼,’’表示無密碼,-f後是密要生成後儲存的位置

6.輸入 cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys 將公鑰id_dsa.pub新增進keys,這樣就可以實現無密登陸ssh

7.輸入 ssh localhost 驗證,第一次登陸有詢問,輸入 yes ,登陸成功且不需要密碼

8.輸入 vi /etc/hostname 修改主機名

9.將localhost.localdomain修改為localhost,儲存並退出

10.建立3個之後要用到的資料夾,分別如下:
mkdir /usr/local/hadoop/tmp

mkdir -p /usr/local/hadoop/hdfs/name

mkdir /usr/local/hadoop/hdfs/data

11.輸入 vi ~/.bash_profile 修改環境變數,這個和之前配JDK那個不同,profile是超級使用者所有,這個是每個使用者獨立所有的,就在 ~ 目錄下,是隱藏檔案,可以用 ll -a 檢視

12.根據hadoop的解壓位置,配置環境變數如下所示

13.按ESC切換到命令模式,然後輸入 :wq! 儲存並退出

14.輸入 source ~/.bash_profile 使環境變數生效,將source簡寫為 . 也可以

15.進入hadoop解壓後的 /etc/hadoop 目錄,裡面存放的是hadoop的配置檔案,接下來要修改這裡面一些配置檔案

16.有2個.sh檔案,需要指定一下JAVA的目錄,首先輸入 vi hadoop-env.sh 修改配置檔案

17.將原有的JAVA_HOME註釋掉,根據自己的JDK安裝位置,精確配置JAVA_HOME如下

18.按ESC,輸入 :wq! 儲存並退出,這裡和之後的儲存並退出就不再截圖
19.輸入 vi yarn-env.sh 修改配置檔案

20.在如下位置新增 export JAVA_HOME=/usr/local/java/jdk1.8.0_102 指定JAVA_HOME,儲存並退出

21.輸入 vi core-site.xml 修改配置檔案

22.在configuration標籤中,新增如下內容,儲存並退出,注意這裡配置的hdfs:localhost:9000是不能在網頁訪問的,可以在本機訪問,等配好並啟動hadoop後,可以輸入 hadoop fs -ls hdfs:localhost:9000 命令進行訪問,檢視hdfs的檔案目錄及檔案

fs.defaultFS
hdfs://localhost:9000
HDFS的URI


hadoop.tmp.dir
/usr/local/hadoop/tmp
namenode上本地的hadoop臨時資料夾

23.輸入 vi hdfs-site.xml 修改配置檔案

24.在configuration標籤中,新增如下內容,儲存並退出

dfs.namenode.name.dir
file:/usr/local/hadoop/hdfs/name
namenode上儲存hdfs名字空間後設資料


dfs.datanode.data.dir
file:/usr/local/hadoop/hdfs/data
datanode上資料塊的物理儲存位置


dfs.replication
1
副本個數,預設是3,應小於datanode機器數量

  1. 輸入 cp mapred-site.xml.template mapred-site.xml 將mapred-site.xml.template檔案複製到當前目錄,並重新命名為mapred-site.xml

26.輸入 vi mapred-site.xml 修改配置檔案

27.在configuration標籤中,新增如下內容,儲存並退出

mapreduce.framework.name
yarn
指定mapreduce使用yarn框架

28.輸入 vi yarn-site.xml 修改配置檔案

  1. 在configuration標籤中,新增如下內容,儲存並退出

    yarn.resourcemanager.hostname
    master
    指定resourcemanager所在的hostname


    yarn.nodemanager.aux-services
    mapreduce_shuffle

    NodeManager上執行的附屬服務。
    需配置成mapreduce_shuffle,才可執行MapReduce程式


    30.進入hadoop的bin目錄,輸入 ./hdfs namenode -format 格式化namenode,第一次使用需格式化一次,之後就不用再格式化,如果改一些配置檔案了,可能還需要再次格式化

31.格式化完成

32.進入hadoop的sbin目錄,輸入 ./start-all.sh 啟動hadoop

33.輸入 yes

34.輸入 jps 檢視當前java的程式,該命令是JDK1.5開始有的,作用是列出當前java程式的PID和Java主類名,除了JPS,有5個程式都是hadoop啟動的程式,啟動成功

35.虛擬機器內開啟網頁,輸入localhost:8088,檢視hadoop程式管理介面

36.虛擬機器內開啟網頁,輸入localhost:50070,檢視hdfs的介面

37.能訪問8088和50070兩個埠看到如上兩個介面,說明hadoop搭建完成,接下來通過本地web訪問這兩個埠,IP輸入虛擬機器的IP

38.如上所示,訪問失敗,這是因為沒有關閉虛擬機器的防火牆,輸入 systemctl stop firewalld.service 關閉防火牆,

39.若想重啟後,防火牆不再開啟,輸入 systemctl disable firewalld.service

40.繼續在本地網頁訪問hadoop的8088和50070埠,訪問成功

學院Go語言視訊主頁
https://edu.csdn.net/lecturer/1928

清華團隊帶你實戰區塊鏈開發
掃碼獲取海量視訊及原始碼 QQ群:721929980
在這裡插入圖片描述

相關文章