Hadoop 僞分佈式搭建(超詳細)

虛擬機準備階段操作

本文是基於CentOS 7 系統搭建
相關資源下載
鏈接:https://pan.baidu.com/s/1FW228OfyURxEgnXW0qqpmA 密碼:18uc

安全設置

防火牆相關指令

# 查看防火牆狀態
firewall-cmd --state

# 停止防火牆
[root@localhost ~]# systemctl stop firewalld.service

# 禁止防火牆開機自啓
[root@localhost ~]# systemctl disable firewalld.service 

關閉關閉selinux

[root@localhost ~]# vi /etc/selinux/config

SELINUX=enforcing改爲 SELINUX=disabled

IP設置

查看機器IP

[root@localhost ~]# ifconfig

在這裏插入圖片描述

修改主機名

[root@localhost ~]# vi /etc/hostname 

在這裏插入圖片描述

修改IP及主機名映射

[root@localhost ~]# vi /etc/hosts

在這裏插入圖片描述

SSH免密登陸

[root@localhost ~]# ssh-keygen -t rsa # 生產密鑰
# 連續三次回車


# 將密鑰發送給需要登陸本機的機器,這裏只有一臺機器 所以發給自己
[root@localhost ~]# ssh-copy-id root@CentOS

# 測試ssh
[root@localhost ~]# ssh root@CentOS

Hadoop僞分佈式搭建

  • 創建 install文件夾
[root@localhost ~]# mkdir /opt/install/

JDK配置

這裏選用JDK8

解壓

[root@localhost ~]# tar -zxvf jdk-8u144-linux-x64.tar.gz -C /opt/install/

配置環境變量

[root@localhost jdk1.8.0_144]# vi /etc/profile
# 加入配置 加入位置如下圖所示
export JAVA_HOME=/opt/install/jdk1.8.0_144
export PATH=$PATH:$JAVA_HOME/bin

# 保存後刷新環境變量
[root@localhost jdk1.8.0_144]# source /etc/profile

在這裏插入圖片描述

# 刷新完 執行命令驗證JDK是否安裝成功
[root@localhost jdk1.8.0_144]# java -version

成功界面
在這裏插入圖片描述

Hadoop配置

解壓文件

[root@localhost ~]# tar -zxvf hadoop-2.9.2.tar.gz -C /opt/install/

修改配置文件

[root@localhost ~]# cd /opt/install/hadoop-2.9.2/etc/hadoop
  • hadoop-env.sh
export JAVA_HOME=/opt/install/jdk1.8.0_144

在這裏插入圖片描述

  • core-site.xml
	   <!--  用於設置namenode並且作爲Java程序的訪問入口  -->
       <property>
            <name>fs.defaultFS</name>
            <value>hdfs://CentOS:8020</value>
       </property>
       <!--  存儲NameNode持久化的數據,DataNode塊數據  -->
       <!--  手工創建$HADOOP_HOME/data/tmp  -->
       <property>
             <name>hadoop.tmp.dir</name>
             <value>/opt/install/hadoop-2.9.2/data/tmp</value>
       </property>

在這裏插入圖片描述

  • hdfs-site.xml
 <!--  設置副本數量 默認是3 可自行根據需求更改  -->
        <property>		
            <name>dfs.replication</name>
            <value>3</value>
        </property>
<!--  權限,可省略  -->
         <property>
             <name>dfs.permissions.enabled</name>
             <value>false</value>
          </property>
          <property>
              <name>dfs.namenode.http.address</name>
              <value>CentOS:50070</value>
           </property>

在這裏插入圖片描述

  • mapred-site.xml
    首先拷貝一個mapred-site.xml
[root@localhost hadoop]# cp mapred-site.xml.template mapred-site.xml
<!--  yarn 與 MapReduce相關  -->
       <property>	 	        		
            <name>mapreduce.framework.name</name>
            <value>yarn</value>
       </property>

在這裏插入圖片描述

  • yarn-site.xml
 <property>
          <name>yarn.nodemanager.aux-services</name>
          <value>mapreduce_shuffle</value>
  </property>

在這裏插入圖片描述

  • slaves
    這裏配置DataNode的主機名 僞分佈式情況下這裏NameNode也充當DataNode
CentOS

在這裏插入圖片描述

配置Hadoop環境變量

[root@localhost hadoop-2.9.2]# vim /etc/profile
# 加入
export HADOOP_HOME=/opt/install/hadoop-2.9.2
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

在這裏插入圖片描述

# 刷新環境變量
[root@localhost hadoop-2.9.2]# source /etc/profile

驗證環境變量是否配置成功

[root@localhost hadoop-2.9.2]# hadoop version

在這裏插入圖片描述

格式化NameNode

目的作用:格式化hdfs系統,並且生成存儲數據塊的目錄

[root@localhost hadoop-2.9.2]# hadoop namenode -format 

格式化成功後如圖顯示
在這裏插入圖片描述

Hadoop起停命令

   start-all.sh
   stop-all.sh

啓動成後 jps查看進程
在這裏插入圖片描述

查看WebUI界面

http://CentOS:50070 訪問 hdfs
http://CentOS:8088 訪問 yarn
在這裏插入圖片描述
在這裏插入圖片描述

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