日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

搭建Hadoop环境(超详细)

發布時間:2023/12/20 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 搭建Hadoop环境(超详细) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

搭建Hadoop環境(超詳細)

  • 前言
  • 一、安裝VMware Workstation10.0
  • 二、安裝虛擬機:(沒有寫的全按默認處理)
    • 1.創建新的虛擬機
    • 2.配置虛擬機IP地址
    • 3.永久修改主機名Hostname
    • 4.配置集群Hosts
    • 5.永久關閉防火墻
    • 6.關閉selinux
    • 7.安裝VMware Tools
    • 8.安裝JDK
  • 三、虛擬機克隆
    • 1.克隆虛擬機
    • 2.修改克隆出來虛擬機的網絡IP
    • 3.進行ssh遠程登錄,并配置hosts集群
  • 四、進行虛擬機的批量開關機
  • 五、安裝配置Hadoop
  • 六、設置SSH無密碼登錄
  • 七、分發Hadoop文件
  • 八、格式化NameNode
  • 九、啟動集群
    • 1.啟動HDFS
    • 2.用jps命令來驗證各個節點的HDFS服務是否啟動成功
    • 3.查看HDFS Web監控頁面
    • 4.啟動yarn
    • 5.啟動日志服務器
  • 十、測試Job
    • 1.準備mapreduce輸入文件wc.input
    • 2. 在HDFS創建輸入目錄input
    • 3. 將wc.input上傳到HDFS
    • 4. 運行hadoop自帶的mapreduce Demo
    • 5. 查看輸出的結果文件
  • 十一、關閉服務

前言

所有本文中沒有提到的操作全部按照默認處理即可

一、安裝VMware Workstation10.0

選Typical典型安裝

修改為固定、靜態IP:
三臺機器的IP地址分別為:
192.168.100.10
192.168.100.12
192.168.100.13
子網掩碼:255.255.255.0

在VMware Workstation中-編輯-虛擬網絡編輯器

點NAT設置

點DNS設置

二、安裝虛擬機:(沒有寫的全按默認處理)

1.創建新的虛擬機

-典型-稍后安裝操作系統

點擊CD/DVD
選擇CentOS-6.5-x86_64-bin-DVD1.iso

點開啟虛擬機
進入虛擬機后選第1項,回車
選Skip,回車
時區選上海
虛擬機的Root Password:111111
密碼:111111

2.配置虛擬機IP地址

右鍵右上角網絡連接圖表-Edit Conections-選中System eh0-Edit

-Apply

3.永久修改主機名Hostname

vi /etc/sysconfig/network

i改為insert狀態

按esc,再:wq保存退出

reboot

重啟

4.配置集群Hosts

vi /etc/hosts

連按兩下d,把原來的刪除
i改為insert狀態
寫入

192.168.100.10 bigdata-senior01.chybinmy.com

按esc,再:wq保存退出

5.永久關閉防火墻

chkconfig iptables off reboot

重啟

6.關閉selinux

vi /etc/sysconfig/selinux


改為disabled

reboot

重啟

7.安裝VMware Tools

虛擬機-安裝VMware Tools

cd /media/VMware\ Tools/

(文件夾名字的空格需要寫成\ )

ls tar -xf VMwareTools-9.6.2-1688356.tar.gz -C / cd vmware-tools-distrib ls ./vmware-install.pl

一路回車

reboot

8.安裝JDK

將壓縮包拖拽到根目錄下的tmp文件夾中

mkdir /opt/modules/

解壓到新建的文件夾中

tar -xf /tmp/jdk-8u161-linux-x64.tar.gz -C /opt/modules/

配置環境變量

vi /etc/profile

添加以下環境變量配置:

JAVA_HOME=/opt/modules/jdk1.8.0_161 CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar PATH=$JAVA_HOME/bin:$PATH export JAVA_HOME CLASSPATH PATH


執行一下修改的文件

source /etc/profile

輸入

java

顯示信息
輸入

java -version

顯示版本信息

三、虛擬機克隆

1.克隆虛擬機

先將要克隆的虛擬機關機
右鍵-管理-克隆-虛擬機中的當前狀態-創建完整克隆-重命名并改路徑(改名為Hadoop2)
右鍵-管理-克隆-虛擬機中的當前狀態-創建完整克隆-重命名并改路徑(改名為Hadoop3)

2.修改克隆出來虛擬機的網絡IP

配置2號虛擬機:
右鍵右上角網絡連接圖表-Edit Conections-選中Auto eth1-Edit
-Apply

配置3號虛擬機:
右鍵右上角網絡連接圖表-Edit Conections-選中Auto eth1-Edit
-Apply

在1號虛擬機中測試是否配置成功:
ping一下其他虛擬機
三臺虛擬機網絡之間可以成功通訊

更改后兩臺虛擬機的主機名:
在2號中:

vi /etc/sysconfig/network

按i改為insert狀態,改為2
按esc,再輸入:wq,回車

reboot

重啟

在3號中:

vim /etc/sysconfig/network

按i改為insert狀態,改為3
按esc,再輸入:wq,回車

reboot

重啟

配置hosts:
在1號機中:

vi /etc/hosts

連續敲兩下yy進行復制整行,再按兩次p進行粘貼兩行
然后進行修改主機名和ip地址
按i改為insert狀態,進行修改

192.168.100.10 bigdata-senior01.chybinmy.com 192.168.100.12 bigdata-senior02.chybinmy.com 192.168.100.13 bigdata-senior03.chybinmy.com

按esc,再輸入:wq,回車

3.進行ssh遠程登錄,并配置hosts集群

(遠程登錄到其他機器時,其他機器需要是解鎖狀態)
登錄到2號機

ssh 192.168.100.12

回車(若出現提示,輸入yes,再回車)
再輸入密碼

vi /etc/hosts

連續敲兩下yy進行復制整行,再按兩次p進行粘貼兩行
然后進行修改主機名和ip地址
按i改為insert狀態,進行修改

192.168.100.10 bigdata-senior01.chybinmy.com 192.168.100.12 bigdata-senior02.chybinmy.com 192.168.100.13 bigdata-senior03.chybinmy.com

按esc,再輸入:wq,回車

再從2號機登錄到3號機

ssh 192.168.100.13

回車(若出現提示,輸入yes,再回車)
再輸入密碼

vi /etc/hosts

連續敲兩下yy進行復制整行,再按兩次p進行粘貼兩行
然后進行修改主機名和ip地址
按i改為insert狀態,進行修改

192.168.100.10 bigdata-senior01.chybinmy.com 192.168.100.12 bigdata-senior02.chybinmy.com 192.168.100.13 bigdata-senior03.chybinmy.com

按esc,再輸入:wq,回車

輸入exit可回到2號機
再輸入exit可回到1號機

或者可以使用scp命令進行遠程文件的傳輸

scp /etc/hosts root@192.168.100.12:/etc scp /etc/hosts root@192.168.100.13:/etc

如果原來已有這個文件,會進行覆蓋

注:如果將來出現2號或3號節點的DataNode服務啟動失敗的情況,可以首先查看2號或3號節點的log日志文件,即:

vi /opt/modules/app/hadoop-2.8.5/logs/hadoop-root-datanode-bigdata-senior02.chybinmy.com.log

vi /opt/modules/app/hadoop-2.8.5/logs/hadoop-root-datanode-bigdata-senior03.chybinmy.com.log

如果看到java.net.BindException: Port in use: localhost:0這條報錯信息,則說明該節點的0號端口被占用,解決方案就是再把這兩句話:

127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6

添加回2號或3號節點的/etc/hosts配置文件開頭即可。

四、進行虛擬機的批量開關機

在1號機中
切換到根目錄下:

cd /

新建一個文件shell腳本文件

touch /poweroff.sh vi /poweroff.sh

按i鍵改為insert狀態,輸入:

#!/bin/bash for i in 13 12 10 dossh root@192.168.100.$i "shutdown -h now" done

按esc鍵,再輸入:wq

ll

顯示當前所在位置的文件和文件夾的詳細信息
更改文件權限:

chmod 744 poweroff.sh

ll

查看權限的變化
執行腳本進行關機

./poweroff.sh

再分別輸入3臺機的密碼進行關機
執行命令的時候需要切換到根目錄下:

cd /

五、安裝配置Hadoop

1.在1號機中新建一個文件夾

mkdir /opt/modules/app

2.把Hadoop文件以拖拽的方式拷貝到tmp路徑下

3.解壓到新建的文件夾中

tar -xf /tmp/hadoop-2.8.5.tar.gz -C /opt/modules/app/ cd /opt/modules/app/ ls

可看到解壓成功

4.配置環境變量

vi /etc/profile

在末尾進行修改:

JAVA_HOME=/opt/modules/jdk1.8.0_161 HADOOP_HOME="/opt/modules/app/hadoop-2.8.5/" CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar PATH=$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH export JAVA_HOME HADOOP_HOME CLASSPATH PATH

使新配置的環境變量生效

source /etc/profile

輸入start再連續按兩下tab,如果能顯示start-yarn.sh(為Hadoop中集群啟動的命令)等,說明環境變量配置正確

5.配置Hadoop 環境下的JDK路徑:修改hadoop-env.sh、mapred-env.sh、yarn-env.sh文件中的JDK路徑:

vi /opt/modules/app/hadoop-2.8.5/etc/hadoop/hadoop-env.sh

找到JAVA_HOME進行修改

export JAVA_HOME="/opt/modules/jdk1.8.0_161" vi /opt/modules/app/hadoop-2.8.5/etc/hadoop/mapred-env.sh

找到JAVA_HOME進行修改

export JAVA_HOME="/opt/modules/jdk1.8.0_161"

(修改時若最左邊有#要刪掉)

vi /opt/modules/app/hadoop-2.8.5/etc/hadoop/yarn-env.sh

找到JAVA_HOME進行修改

export JAVA_HOME="/opt/modules/jdk1.8.0_161"

6.配置core-site.xml

vi /opt/modules/app/hadoop-2.8.5/etc/hadoop/core-site.xml

在<configuration>標簽中添加

<property><name>fs.defaultFS</name><value>hdfs://bigdata-senior01.chybinmy.com:8020</value></property><property><name>hadoop.tmp.dir</name><value>/opt/modules/app/hadoop-2.8.5/data/tmp</value></property>

需要創建hadoop.tmp.dir屬性所代表的目錄:

mkdir -p /opt/modules/app/hadoop-2.8.5/data/tmp

7.配置hdfs-site.xml

vi /opt/modules/app/hadoop-2.8.5/etc/hadoop/hdfs-site.xml

在<configuration>標簽中添加

<property><name>dfs.namenode.secondary.http-address</name><value>bigdata-senior03.chybinmy.com:50090</value></property>

8.配置slaves

vi /opt/modules/app/hadoop-2.8.5/etc/hadoop/slaves

刪掉原來的內容,寫入:

bigdata-senior02.chybinmy.com bigdata-senior03.chybinmy.com

slaves文件是指定HDFS上有哪些DataNode節點。設置2號和3號虛擬機作為數據節點。

9.配置yarn-site.xml

vi /opt/modules/app/hadoop-2.8.5/etc/hadoop/yarn-site.xml

在<configuration>標簽中添加

<property><name>yarn.nodemanager.aux-services</name><value>mapreduce_shuffle</value> </property> <property><name>yarn.resourcemanager.hostname</name><value>bigdata-senior01.chybinmy.com</value> </property> <property><name>yarn.log-aggregation-enable</name><value>true</value> </property> <property><name>yarn.log-aggregation.retain-seconds</name><value>106800</value> </property>

10.配置mapred-site.xml

從mapred-site.xml.template復制一個mapred-site.xml文件:

cp /opt/modules/app/hadoop-2.8.5/etc/hadoop/mapred-site.xml.template /opt/modules/app/hadoop-2.8.5/etc/hadoop/mapred-site.xml vi /opt/modules/app/hadoop-2.8.5/etc/hadoop/mapred-site.xml

在<configuration>標簽中添加

<property><name>mapreduce.framework.name</name><value>yarn</value></property> <property><name>mapreduce.jobhistory.address</name><value>bigdata-senior01.chybinmy.com:10020</value> </property> <property><name>mapreduce.jobhistory.webapp.address</name><value>bigdata-senior01.chybinmy.com:19888</value> </property>

六、設置SSH無密碼登錄

在1號機中:
1.生成密鑰對

ssh-keygen -t rsa

回車,回車,回車

ll /root/.ssh/

顯示內容,出現公鑰和私鑰

2.發送公鑰

ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.100.10

輸入密碼

ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.100.12

輸入密碼

ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.100.13

輸入密碼

3.在2號機上做同樣的操作:

登錄到2號機

ssh 192.168.100.12

此時不用輸入密碼

生成密鑰對

ssh-keygen -t rsa

回車,回車,回車

把公鑰鑰對發給1號和3號機以及自己

ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.100.10 ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.100.12 ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.100.13

(若出現連接提示,輸入yes再回車)

4.在3號機上做同樣的操作:
登錄到3號機

ssh 192.168.100.13

此時不用輸入密碼

生成密鑰對

ssh-keygen -t rsa

回車,回車,回車

發送公鑰

ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.100.10 ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.100.12 ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.100.13

(若需要輸入密碼時輸入密碼)
exit,exit退回到1號機
便實現了各臺機器之間的免密登錄,再進行批量關機的時候便不需要再輸入密碼

七、分發Hadoop文件

在1號機中:
1.在其他2兩臺機器上創建存放Hadoop的目錄

ssh 192.168.100.12 mkdir /opt/modules/app ssh 192.168.100.13 mkdir /opt/modules/app

exit,exit退回到1號機
2.通過Scp分發

Hadoop根目錄下的share/doc目錄是存放的hadoop的文檔,文件相當大,建議在分發之前將這個目錄刪除掉,可以節省硬盤空間并能提高分發的速度。

rm -rf /opt/modules/app/hadoop-2.8.5/share/doc/

分發到2號機和3號機

scp -r /opt/modules/app/hadoop-2.8.5/ 192.168.100.12:/opt/modules/app/ scp -r /opt/modules/app/hadoop-2.8.5/ 192.168.100.13:/opt/modules/app/

3.采用scp分發的簡便方式來配置2號和3號機的Hadoop環境變量:

scp -r /etc/profile 192.168.100.12:/etc scp -r /etc/profile 192.168.100.13:/etc

使環境變量生效

ssh 192.168.100.12 source /etc/profile ssh 192.168.100.13 source /etc/profile

exit,exit退回到1號機

八、格式化NameNode

在1號機中
在NameNode所部屬的機器bigdata-senior01上執行格式化:

hdfs namenode -format

(注:當在2號和3號虛擬機用jps命令顯示有DataNode進程名,但打開web監控頁面卻沒有顯示DataNode節點信息時,說明HDFS集群沒有啟動成功。此時可以嘗試采用重新格式化的方式來解決)

重新格式化集群的具體操作步驟如下:
1.先停止HDFS集群:

stop-dfs.sh

2.然后將3臺虛擬機上的dfs文件夾里的全部內容刪除:(分別登錄到3臺機器)

rm -rf /opt/modules/app/hadoop-2.8.5/data/tmp/dfs/ ssh 192.168.100.12 rm -rf /opt/modules/app/hadoop-2.8.5/data/tmp/dfs/ ssh 192.168.100.13 rm -rf /opt/modules/app/hadoop-2.8.5/data/tmp/dfs/

3.exit,exit返回1號虛擬機,再重新執行格式化命令即可:

hdfs namenode -format

4.重啟HDFS集群,確認是否成功。

九、啟動集群

1.啟動HDFS

start-dfs.sh

2.用jps命令來驗證各個節點的HDFS服務是否啟動成功

jps

登錄到2號機查看

ssh 192.168.100.12 jps

登錄到3號機查看

ssh 192.168.100.13 jps

顯示如下即啟動成功:

再exit,exit退回到1號機
(若沒有按此顯示,則查看上面的3.進行ssh遠程登錄,并配置hosts集群)

3.查看HDFS Web監控頁面

在1號機的火狐瀏覽器中輸入:
http://bigdata-senior01.chybinmy.com:50070/
紅框中即為分布式集群中的兩個DataNode存儲節點信息

4.啟動yarn

啟動yarn便啟動了MapReduce(要保證HDFS在啟動狀態)

start-yarn.sh

用jps命令來驗證各個節點的HDFS服務是否啟動成功

jps

登錄到2號機查看

ssh 192.168.100.12 jps

登錄到3號機查看

ssh 192.168.100.13 jps

顯示如下即啟動成功:
再exit,exit退回到1號機

5.啟動日志服務器

啟動歷史(日志)服務

mr-jobhistory-daemon.sh start historyserver

jps查看

查看YARN Web 頁面
在1號機的火狐瀏覽器中輸入:
http://bigdata-senior01.chybinmy.com:8088/cluster

十、測試Job

用hadoop自帶的wordcount例子來在本地模式下測試跑mapreduce

1.準備mapreduce輸入文件wc.input

mkdir /opt/data vi /opt/data/wc.input

寫入

hadoop mapreduce hive hbase spark storm sqoop hadoop hive spark hadoop

2. 在HDFS創建輸入目錄input

hdfs dfs -mkdir /input

3. 將wc.input上傳到HDFS

hdfs dfs -put /opt/data/wc.input /input/wc.input

4. 運行hadoop自帶的mapreduce Demo

yarn jar /opt/modules/app/hadoop-2.8.5/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.8.5.jar wordcount /input/wc.input /output

5. 查看輸出的結果文件

hdfs dfs -ls /output hdfs dfs -cat /output/part-r-00000

顯示wordcount詞頻

在1號機的火狐瀏覽器中輸入:
http://bigdata-senior01.chybinmy.com:8088/cluster
點FINISHED可看到結果

十一、關閉服務

關機時一定要關閉!!!
1.關閉歷史服務

mr-jobhistory-daemon.sh stop historyserver

2.關閉yarn(MapReduce)

stop-yarn.sh

3.關閉HDFS

stop-dfs.sh

4.執行腳本進行關機

cd / ./poweroff.sh

可將虛擬機進行復制備份
注意:將來如果要拷貝3臺虛擬機到其他機器,開機時會彈出如下提示,這時請一定選擇“我已移動該虛擬機”,因為選擇“復制”的話,VMware平臺會為每臺虛擬機自動生成一塊新的網卡并設置為啟動狀態,這會導致網絡不通,還需重新設置新網卡。

總結

以上是生活随笔為你收集整理的搭建Hadoop环境(超详细)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。