Hadoop 僞分佈式環境搭建——hadoop2.8+centos7

引言:

環境:

1、虛擬機:VMware14pro

2、操作系統:centos7

3、Jdk版本:java SE 1.8.0

4、hadoop版本:2.8.4

5、遠程連接工具:Xshell6(連接服務器)   和   Xftp6(文件傳輸)——ps.非必要

一、安裝虛擬機

在windows系統中安裝VMware14pro,直接下載安裝,無需贅述

下載地址:https://www.vmware.com/cn.html

激活方式參考另一篇博文:https://blog.csdn.net/MDbabyface/article/details/82084346

ps:如有條件,請購買使用

 

二、安裝linux操作系統

CentOS 是一個基於Red Hat Linux 提供的可自由使用源代碼的企業級Linux發行版本。也可以選擇其他Linux發行版。例如: Ubuntu、Fadora

1、下載centos7鏡像文件

下載地址:https://www.centos.org/download/

2、安裝centos7

2.1  創建虛擬機

         選擇創建新的虛擬機——選擇典型安裝——選擇centos7鏡像獲取位置——選擇centos7系統安裝位置——磁盤大小默認20G

點擊完成即可完成系統安裝

2.2 配置操作系統

         進入配置界面——選擇語言中文——軟件選擇(最小化安裝或者帶圖形界面)——網絡與主機名自行配置——選擇開始安裝

安裝完成之後打開虛擬機設置,網絡適配器選擇僅主機模式(也可選擇其他模式,此處僅配置單機hadoop,選用僅主機模式)

ps:這裏簡單介紹一下三種網絡模式

橋接模式:相當於在宿主機前端加入了一個虛擬交換器,宿主機和虛擬機共享這個虛擬交換器,虛擬機需要手動配置IP地址、子網掩碼,而且需要和宿主機處於同一個網段,保證能與宿主機進行通信。虛擬機相當於一臺獨立主機。

NAT模式:此種模式下宿主機成爲雙網卡主機,同時參與現有 的宿主局域網和新建的虛擬局域網,虛擬局域網通過虛擬的NAT服務器,使用宿主機IP地址訪問公網。

僅主機模式:此種模式下宿主機與上所以虛擬機可以相互通信,但是虛擬機和真實網絡是被隔離開的。

3、修改主機名

把原先的主機名刪去,寫入新的主機名 hadoop,保存退出

修改主機名需要重啓才能生效,可以通過臨時修改使得主機名立即生效

查看當前主機名

表示修改成功

4、設置靜態ip

查看當前網絡狀態:

第一個網卡lo是迴路網卡,機器與自己通信的,

第二個ens33是與外部通信的網卡,可以看到IP地址,但默認情況下IP地址自動獲取,因此需要手動修改成靜態

輸入指令:

打開ens33配置文件

將“BOOTPROTO=dhcp”改成“BOOTPROTO=static”(設置成靜態)

將“ONBOOT=no”修改成“ONBOOT=yes”(設置開機啓動網卡)

在下面寫入:

IPADDR=192.168.80.128

NETMASK=255.255.255.0

因此本機網絡設置爲僅主機模式無法連接外網,所以僅設置IP地址和子網掩碼

其他模式需要連接外網請自行設置網關和DNS。

重啓網絡即可完成設置

5、添加主機與ip映射

輸入指令

在文件中寫入一行

192.168.91.124  hadoop

:wq   保存退出

6、關閉防火牆

啓動: systemctl start firewalld

關閉: systemctl stop firewalld

查看狀態: systemctl status firewalld 

開機禁用  : systemctl disable firewalld

開機啓用  : systemctl enable firewalld

輸入指令    systemctl disable firewalld

若想立即成效,則輸入關閉防火牆指令

systemctl stop firewalld

7、設置ssh免登陸

authorized_keys:存放遠程免密登錄的公鑰,主要通過這個文件記錄多臺機器的公鑰 
id_rsa : 生成的私鑰文件 
id_rsa.pub : 生成的公鑰文件 
know_hosts : 已知的主機公鑰清單 

輸入指令生成祕鑰

enter幾次之後完成祕鑰生成

輸入ls指令即可查看生成的祕鑰文件

將公鑰寫入新的文件authorized_keys中

測試一下:ssh hadoop

顯示last login並且無需輸入密碼則設置成功

三、安裝與配置jdk

1、卸載當前openjdk

查看當前jdk版本

java -version

hadoop官網推薦使用sun公司的jdk版本,因此先卸載原先的jdk

yum -y remove java java-1.8.0-openjdk-headless.x86_64

yum -y remove java java-1.7.0-openjdk-headless.x86_64 

yum -y remove java java-1.8.0-openjdk

查看是否卸載完成

2、安裝jdk

            將jdk安裝包文件拷入到  usr/java 下

cd到usr/java 目錄下

解壓java安裝包

tar -zxvf jdk1.8.0_181

3、配置環境變量

安裝完成後需要配置一下環境變量,編輯/etc/profile文件:

vim /etc/profile

在文件尾部添加如下配置:

export JAVA_HOME=/usr/java/jdk1.8.0_131/
    export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar 
    export PATH=$PATH:$JAVA_HOME/bin

最後一步就是通過source命令重新加載/etc/profile文件,使得修改後的內容在當前shell窗口有效:

source /etc/profile

4、測試

查看當前jdk版本

jdk安裝完成!

四、安裝與配置hadoop

1、安裝hadoop

將下載好的hadoop安裝包拷入到  /usr/hadoop 文件夾中

cd 到/usr/java/ 目錄下

tar -zxvf hadoop-2.8.4.tar.gz

解壓完成

2、配置hadoop(修改五個配置文件)

進入到hadoop的配置文件目錄中

/usr/hadoop/hadoop-2.8.4/etc/hadoop

2.1 配置 hadoop-env.sh

vi  hadoop-env.sh

將JAVA_HOME修改爲jdk安裝路徑

2.2  配置core-site.xml

vi core-site.xml

 # 在<configuration>中添加配置

<configuration>

<!-- 指定HADOOP所使用的文件系統schema(URI),HDFS的老大(NameNode)的地址 -->

<property>

       <name>fs.defaultFS</name>

       <value>hdfs://hadoop:9000</value>

</property>

<!-- 指定hadoop運行時產生臨時文件的存儲目錄 -->

<property>

       <name>hadoop.tmp.dir</name>

       <value>/usr/java/jdk1.8.0_181/tmp</value>

</property>

</configuration>

2.3 配置hdfs-site.xml

vi hdfs-site.xml

<configuration>

<!-- 指定HDFS副本的數量 -->

<property>

          <name>dfs.replication</name>

          <value>1</value>

</property>

</configuration>

2.4  配置  mapred-site.xml

將 mapred-site.xml.template複製一份並重命名爲 mapred-site.xml

mv mapred-site.xml.template  mapred-site.xml

vi   mapred-site.xml

# 配置mapred-site.xml <configuration>

<!-- 指定mr運行在yarn上 -->

<property>

          <name>mapreduce.framework.name</name>

          <value>yarn</value>

</property>

</configuration>

2.5  配置yarn-site.xml

vi  yarn-site.xml

<configuration>

<!-- 指定YARN的老大(ResourceManager)的地址 -->

 <property>

      <name>yarn.resourcemanager.hostname</name>

       <value>hadoop</value>

</property>

<!-- reducer獲取數據的方式 -->

<property>

          <name>yarn.nodemanager.aux-services</name>

          <value>mapreduce_shuffle</value>

</property>

</configuration>

保存退出,配置完成!

3、格式化hdfs

cd到bin目錄下

./hdfs namenode -format

看見這一行提示即表示格式化成功

4、啓動並測試hdfs

cd 到sbin目錄下

啓動  start-all.sh

start-all.sh

用jps指令查看當前啓動的進程

看見下面幾個即表示啓動成功

在瀏覽器地址欄中輸入 192.168.91.124:50070(IP地址可能不一樣,端口是一樣的)

登錄成功!

 

 

 

 

 

 

 

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章