配置所需軟件:
①、VirtualBox-5.2.0-118431-Win.exe
②、Ubuntu14.04.5
(一)、下載并安裝VirtualBox
? ? ? ? 默認安裝
(二)、安裝Ubuntu14.04.5
然后“繼續”,“下一步”
信息填完后點擊繼續安裝完成后會重新進入系統。
(三)、創建用戶hadoop
$ sudo ?adduser ?hadoop
并按照提示輸入hadoop用戶的密碼,例如密碼設定為 hadoop。注意輸入密碼的時候是不顯示的。并將hadoop用戶添加進sudo用戶組
$ sudo ?usermod ?-G ?sudo ?hadoop
輸入
$ cd ../ ? ??#進入到home目錄
$ cd ../ ? ?#進入到根目錄
輸入
$ sudo gedit ~/etc/sudoers ? ?#打開sudoers配置文件
在root ? ? ALL = (ALL:ALL) ? ?ALL下面添加如下代碼:
hadoop????ALL = (ALL:ALL) ? ?ALL
保存并退出。
注銷切換成hadoop用戶
(四)、安裝JDK
? ? ①下載JDK
? ? ? ? ? ? ??jdk-8u151-linux-x64.tar.gz
? ? ②安裝解壓
將下載下來的 .tar.gz 文件解壓。使用如下命令解壓:
$ sudo ?tar ?zxvf ?./jdk-8u151-linux-x64.tar.gz
為了方便管理,將解壓后的文件移至另一個目錄下
$ sudo ?mkdir ?/usr/lib/jvm
$ sudo ?mv ?jdk1.8.0_151 ?/usr/lib/jvm
③設置環境變量
編輯用戶主目錄下的.bashrc文件
$ vim ?~/.bashrc
在該文件的末尾追加以下幾行代碼:
export ?JAVA_HOME=/usr/lib/jvm/jdk1.8.0_151
export ?CLASSPATH=${JAVA_HOME}/lib
export ?PATH=${JAVA_HOME}/bin:$PATH
為了讓更改立即生效,執行如下命令:
$ source ?~/.bashrc
④驗證JDK
$ java ?-version
(五)、安裝Hadoop2.7.3
①下載hadoop2.7.3
②安裝hadoop-2.7.3
進入到下載目錄
將下載下來的 .tar.gz 文件解壓。使用如下命令解壓:
$ sudo ?tar ?zxvf ?hadoop-2.7.3.tar.gz
為了方便管理,將解壓后的文件移至另一個目錄下
$ sudo? mv? hadoop-2.7.3? /usr/local/hadoop
為安裝目錄添加權限
$ sudo ?chmod ?777 ?/usr/local/hadoop
③配置hadoop2.7.3
編輯用戶主目錄下的.bashrc文件
$ gedit? ~/.bashrc
$ vim ?~/.bashrc
在該文件的末尾追加以下幾行代碼:
#HADOOP START
export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_151
export HADOOP_INSTALL=/usr/local/hadoop
export PATH=$PATH:$HADOOP_INSTALL/bin
export PATH=$PATH:$HADOOP_INSTALL/sbin
export HADOOP_MAPRED_HOME=$HADOOP_INSTALL
export HADOOP_COMMON_HOME=$HADOOP_INSTALL
export HADOOP_HDFS_HOME=$HADOOP_INSTALL
export YARN_HOME=$HADOOP_INSTALL
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_INSTALL/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_INSTALL/lib"
#HADOOP END
保存退出后,激活新加的環境變量
$ source ? ~/.bashrc
④驗證安裝是否成功
$ cd ?/usr/local/hadoop
$ mkdir ?./input
$ cp ./etc/hadoop/*.xml ./input ? ?#將配置文件作為輸入文件
$ ? ./bin/hadoop ?jar ?./share/hadoop/mapreduce/hadoop-mapreduce-examples-*.jar grep ?./input ?./output ?'dfs[a-z.]+'
$ cat ?./output/* ? ?#查看運行結果
出現以下結果即可。
(六)、安裝SSH、配置SSH無密碼登陸
$ sudo apt-get install openssh-server
$ ssh localhost
輸入yes
$ exit ? ? ? ?#退出剛才的 ssh localhost
$ cd ~/.ssh/ ? ? ? ?#若沒有該目錄,請先執行一次ssh localhost
$ ssh-keygen -t rsa ? ? ? #會有提示,都按回車就可以
$ cat ./id_rsa.pub >> ./authorized_keys ? ?#加入授權
然后輸入
$ ssh localhost
結果如下:
(七)、安裝hadoop-偽分布式配置
Hadoop 可以在單節點上以偽分布式的方式運行,Hadoop 進程以分離的 Java 進程來運行,節點既作為 NameNode 也作為 DataNode,同時,讀取的是 HDFS 中的文件。
①修改配置文件
Hadoop 的配置文件位于 /usr/local/hadoop/etc/hadoop/ 中,偽分布式需要修改2個配置文件 core-site.xml 和 hdfs-site.xml 。Hadoop的配置文件是 xml 格式,每個配置以聲明 property 的 name 和 value 的方式來實現。
修改配置文件 core-site.xml (通過 gedit 編輯會比較方便: gedit ./etc/hadoop/core-site.xml),將當中的
<configuration>
</configuration>
修改為如下配置:
<configuration>
<property>
<name>hadoop.tmp.dir</name>
< value> file:/usr/local/hadoop/tmp< /value>
< description> Abase for other temporary directories.< /description>
</property>
< property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</ property>
</ configuration>
同樣的,修改配置文件 hdfs-site.xml
<configuration>
? ??<property>
? ??????<name>dfs.replication</name>
? ?????? ? ?????<value>1</value>
? ?????? </property>
? ?????? <property>
? ?????? ? ?????? <name>dfs.namenode.name.dir</name>
? ?????? ? ? ?<value>file:/usr/local/hadoop/tmp/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/usr/local/hadoop/tmp/dfs/data</value>
</property>
</configuration>
②執行 NameNode 的格式化:
./bin/hdfs ?namenode ?–format
成功的話,會看到 “successfully formatted” 和 “Exitting with status 0” 的提示,若為 “Exitting with status 1” 則是出錯。
③開啟 NameNode 和 DataNode 守護進程。
./sbin/start-dfs.sh
關閉守護進程
./sbin/stop-dfs.sh
若出現以下SSH提示,輸入yes即可。
④通過jps查看啟動的Hadoop進程
⑤運行Hadoop偽分布式實例
./bin/hdfs ?dfs ?-mkdir -p ?/usr/hadoop
./bin/hdfs ?dfs ?-mkdir ?input
./bin/hdfs ?dfs ?-put ?./etc/hadoop/* ?.xml ?input
./bin/hdfs ?dfs ?-ls ?input
./bin/hadoop ?jar ?./share/hadoop/mapreduce/hadoop-mapreduce-examples-*.jar ?grep ?./input ?./output ?'dfs[a-z.]+'
./bin/hdfs ?dfs ?-cat ?output/*
⑥成功啟動后,可以訪問 Web 界面
http://localhost:50070 查看 NameNode 和 Datanode 信息,還可以在線查看 HDFS 中的文件。
(八)、啟動YARN
①首先修改配置文件 mapred-site.xml,這邊需要先進行重命名:
②編輯mapred-site.xml?文件,
gedit ?./etc/hadoop/mapred-site.xml
<configuration>
? ??<property>
? ??????<name>yarn.nodemanager.aux-services</name>
? ??????<value>yarn</value>
? ??</property>
</configuration>
③修改配置文件 yarn-site.xml
<configuration>
? ? <property>
? ?????<name>yarn.nodemanager.aux-services</name>
? ?????<value>mapreduce shuffle</value>
? ??</property>
</configuration>
④啟動 YARN 了(需要先執行過 ./sbin/start-dfs.sh)
./sbin/start-dfs.sh? ? #啟動YARN
./sbin/mr-jobhistory-daemon.sh ?start ?historyserver? ? #開啟歷史服務器,才能在Web中查看任務運行情況
關閉YARN
./sbin/stop-yarn.sh
啟動 YARN 有個好處是可以通過 Web 界面查看任務的運行情況:http://localhost:8088/cluster,如下圖所示
不啟動 YARN 需重命名 mapred-site.xml
如果不想啟動 YARN,務必把配置文件 mapred-site.xml 重命名,改成 mapred-site.xml.template,需要用時改回來就行。
否則在該配置文件存在,而未開啟 YARN 的情況下,運行程序會提示 “Retrying connect to server: 0.0.0.0/0.0.0.0:8032” 的錯誤,這也是為何該配置文件初始文件名為 mapred-site.xml.template。
⑤開啟 NameNode 和 DataNode 守護進程。
./sbin/start-dfs.sh
到此hadoop大數據已配置完成。