9下Hadoop伪分布式环境搭建,centos单机安装Hadoop

2019-12-23 03:49栏目:网络系统
TAG:

搭建伪分布式环境,只需要一台Linux服务器,一般开发测试使用

集群安装:

环境:CentOS6.9+jdk+Hadoop

在单机上模拟分布式环境

Hadoop2.6单机安装

1.下载hadoop的tar包,这里以hadoop2.6.5版本为例,下载地址

HDFS:主节点 NameNode

一,安装环境 
硬件:虚拟机 
操作系统:Centos 6.4 64位 
IP:10.51.121.10 
主机名:datanode-4 
安装用户:root

2.修改linux虚拟机的主机名为hadoop01.zjl.com
# vi /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=hadoop01.zjl.com

            从节点 DataNode   SecondaryNameNode

二,安装JDK 
安装JDK1.6或者以上版本。这里安装jdk1.6.0_45。 
下载地址: 
1,下载jdk1.6.0_45-linux-x64.gz,解压到/usr/lib/jdk1.6.0_45。 
2,在/root/.bash_profile中添加如下配置:

3.配置主机名和IP地址的映射
# vi /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.0.131 hadoop01.zjl.com hadoop01

yarn: 主节点 ResourceManager  

export JAVA_HOME=/usr/lib/jdk1.6.0_45
export PATH=$JAVA_HOME/bin:$PATH
3,使环境变量生效,#source ~/.bash_profile 
4,安装验证# java -version 
java version “1.6.0_45” 
Java(TM) SE Runtime Environment (build 1.6.0_45-b06) 
Java HotSpot(TM) 64-Bit Server VM (build 20.45-b01, mixed mode)

4.重启虚拟机,是步骤2、3的配置生效
# reboot

           从节点 NodeManager

三,配置SSH无密码登陆

 5.在物理机的hosts文件中配置192.168.0.131 hadoop01.zjl.com hadoop01,我的物理机是win10 64位操作系统,hosts文件的位置是C:WindowsSystem32driversetchosts

 

$ ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
$ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
澳门新葡亰平台游戏,验证ssh,# ssh localhost 
不需要输入密码即可登录。

 6.(1)执行# rpm -qa|grep java,发现虚拟机中没装过jdk,如果装过可以用# rpm -e --nodeps来卸载
(2)jdk安装包没有执行权限
# ll jdk-8u131-linux-x64.tar.gz
-rw-rw-r--. 1 hadoop hadoop 185540433 May 20 22:57 /opt/softwares/jdk-8u131-linux-x64.tar.gz
(3)给安装包授予执行权限
$ chmod u+x jdk-8u131-linux-x64.tar.gz
(4)解压安装
$ tar -zxvf jdk-8u131-linux-x64.tar.gz -C /opt/modules/

tools和training是自定义目录

四,安装Hadoop2.6
1,下载Hadoop2.6

下载地址:

7.配置环境变量
# vi /etc/profile
# set java environment
export JAVA_HOME=/opt/modules/jdk1.8.0_131
export PATH=$PATH:$JAVA_HOME/bin
使环境变量的 配置生效
# source /etc/profile
jdk配置没问题了
# java -version
java version "1.8.0_131"
Java(TM) SE Runtime Environment (build 1.8.0_131-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.131-b11, mixed mode)
8.解压hadoop安装包
$ tar -zxvf hadoop-2.6.5.tar.gz -C /opt/modules/

工具:SecureCRT6.5.0

2,解压安装 
1),复制 hadoop-2.6.5.tar.gz 到/root/hadoop目录下, 
然后#tar -xzvf hadoop-2.6.5.tar.gz解压,解压后目录为:/root/hadoop/hadoop-2.6.5
2),在/root /hadoop/目录下,建立tmp、hdfs/name、hdfs/data目录,执行如下命令 
#mkdir /root/hadoop/tmp 
#mkdir /root/hadoop/hdfs 
#mkdir /root/hadoop/hdfs/data 
#mkdir /root/hadoop/hdfs/name

9.在etc/hadoop/hadoop-env.sh文件中设置JAVA_HOME
export JAVA_HOME=/opt/modules/jdk1.8.0_131

  1. 将Hadoop包上传到Linux服务器上,如~/tools目录下澳门新葡亰平台游戏 1

     

  2. 解压该压缩包到~/training目录下              澳门新葡亰平台游戏 2

     

  3. 在~/.bash_profile里设置环境变量,增加红色框内容。 vi ~/.bash_profile,按 【i】 进入编辑模式,按【esc】退出编辑模式,输入冒号:wq回车保存
     澳门新葡亰平台游戏 3

     

  4. 澳门新葡亰平台官网,执行source ~/.bash_profile  使环境变量生效

  5. 配置jdk路径,找到Hadoop的配置文件hadoop-env.sh,vi  /root/training/hadoop-2.7.3/etc/hadoop/hadoop-env.sh回车,加入红色部分,JAVA_HOME就是jdk的路径澳门新葡亰平台游戏 4

     

  6. 接着配置hdfs-site.xml,加入红色框内容

    <!--配置数据块的冗余度-->
    <property>
    <name>dfs.replication</name>
    <value>1</value>
    </property>

    澳门新葡亰平台游戏 5

     

  7. 配置core-site.xml,加入如下内容

    <!--配置NameNode地址-->
    <property>
    <name>fs.defaultFS</name>
    <value>hdfs://本机IP:9000</value>
    </property>

    <!--配置数据在Linux上保存的位置-->
    <property>
    <name>hadoop.tmp.dir</name>
    <value>/root/training/hadoop-2.7.3/tmp</value>
    </property>

    澳门新葡亰平台游戏 6

     

  8. 配置mapred-site.xml,添加如下

    <!--MR运行的框架-->
    <property>
    <name>mapreduce.framework.name</name>
    <value>yarn</value>
    </property>                                           澳门新葡亰平台游戏 7

     

  9. 配置yarn-site.xml,添加如下

    <!--yarn的主节点 RM-->
    <property>
    <name>yarn.resouremanager.hostname</name>
    <value>IP地址</value>
    </property>

    <!--NodeManager运行MR程序方式-->
    <property>
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
    </property>                                 澳门新葡亰平台游戏 8

     

  10. 启动start-all.sh,表示启动所有服务,但发现要输入四次密码澳门新葡亰平台游戏 9

     

  11. 停止所有服务,执行stop-all.sh,也要输入四次密码,从启动到停止服务,一共输入8次密码。如果启动多台服务器,那岂不是很多密码澳门新葡亰平台游戏 10

    伪分布式环境到此就搭建配置完成。基于输入多次密码,可以配置免密登录,下一节将会讲解

3),设置环境变量,#vi ~/.bash_profile

10.默认情况下,Hadoop配置为以非分布式模式运行,作为单个Java进程,
本地模式:mapreduce程序运行在本地,只需启动JVM
以下示例复制未打包的conf目录以用作输入,然后查找并显示给定正则表达式的每个匹配项。输出被写入给定的输出目录。
$ mkdir input
$ cp etc/hadoop/*.xml input
$ bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.6.5.jar grep input output 'dfs[a-z.]+'
$ cat output/*
依次执行上述命令后如果没有报错,且cat output/*命令的结果为1 dfsadmin,则说明mapreduce程序运行成功

# set hadoop path
export HADOOP_HOME=/root /hadoop/hadoop-2.6.5
export PATH=$PATH:$HADOOP_HOME/bin
4),使环境变量生效,$source ~/.bash_profile

11.hadoop xml配置
etc/hadoop/core-site.xml:
<configuration>
<property>
<name>fs.defaultFS</name>
<!-- 如果没有配置,默认会从本地文件系统读取数据,步骤11就是读取本地文件系统的数据 -->
<value>hdfs://hadoop01.zjl.com:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/opt/modules/hadoop-2.6.5/data/tmp</value>
</property>
</configuration>
[hadoop@hadoop01 hadoop-2.6.5]$ mkdir -p data/tmp
etc/hadoop/hdfs-site.xml:
<configuration>
 <property>
 <name>dfs.replication</name>
 <value>1</value>
 </property>
</configuration>

3,Hadoop配置 
进入$HADOOP_HOME/etc/hadoop目录,配置 hadoop-env.sh等。涉及的配置文件如下: 

12.执行
(1)格式化文件系统:
[hadoop@hadoop01 hadoop-2.6.5]$ bin/hdfs namenode -format
(2)启动NameNode守护进程和DataNode守护进程:
[hadoop@hadoop01 hadoop-2.6.5]$ sbin/start-dfs.sh
(3)执行jps命令查询java守护进程,若出现NameNode,DataNode,SecondaryNameNode,则启动成功
[hadoop@hadoop01 hadoop-2.6.5]$ jps
5296 Jps
4902 NameNode
5016 DataNode
5178 SecondaryNameNode
(4)在浏览器地址栏输入

 

澳门新葡亰平台游戏 11

hadoop-2.6.5/etc/hadoop/hadoop-env.sh 

13.单节点上的YARN的配置
(1)在etc/hadoop/yarn-env.sh文件中配置export JAVA_HOME=/opt/modules/jdk1.8.0_131
(2)
etc/hadoop/yarn-site.xml:
<configuration>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>hadoop01.zjl.com</value>
</property>
 <property>
 <name>yarn.nodemanager.aux-services</name>
 <value>mapreduce_shuffle</value>
 </property>
</configuration>

hadoop-2.6.5/etc/hadoop/yarn-env.sh 

(3)将etc/hadoop/slaves文件中的localhost换成主机名hadoop01.zjl.com
(4)启动ResourceManager守护程序和NodeManager守护程序:
[hadoop@hadoop01 hadoop-2.6.5]$ sbin/start-yarn.sh
执行jps命令,出现了NodeManager和NameNode进程,说明yarn启动成功
[hadoop@hadoop01 hadoop-2.6.5]$ jps
6851 NodeManager
4902 NameNode
7158 Jps
5016 DataNode
5178 SecondaryNameNode
6763 ResourceManager
(5)在浏览器地址栏输入

hadoop-2.6.5/etc/hadoop/core-site.xml 

澳门新葡亰平台游戏 12

hadoop-2.6.5/etc/hadoop/hdfs-site.xml 

14.使Mapreduce能够在yarn上运行

hadoop-2.6.5/etc/hadoop/mapred-site.xml 

(1)在etc/hadoop/mapred-env.sh文件中配置export JAVA_HOME=/opt/modules/jdk1.8.0_131

hadoop-2.6.5/etc/hadoop/yarn-site.xml

(2)将etc/hadoop/mapred-site.xml.template重命名为mapred-site.xml,添加配置
<configuration>
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
</configuration>

 

Hadoop2.3-HA高可用集群环境搭建  http://www.linuxidc.com/Linux/2017-03/142155.htm

1)配置hadoop-env.sh

Hadoop项目之基于CentOS7的Cloudera 5.10.1(CDH)的安装部署  http://www.linuxidc.com/Linux/2017-04/143095.htm

# The java implementation to use.
#export JAVA_HOME=${JAVA_HOME}
export JAVA_HOME=/usr/lib/jdk1.6.0_45
2)配置yarn-env.sh

Hadoop2.7.2集群搭建详解(高可用)  http://www.linuxidc.com/Linux/2017-03/142052.htm

#export JAVA_HOME=/home/y/libexec/jdk1.6.0/
export JAVA_HOME=/usr/lib/jdk1.6.0_45
3)配置core-site.xml 
添加如下配置:

使用Ambari来部署Hadoop集群(搭建内网HDP源)  http://www.linuxidc.com/Linux/2017-03/142136.htm

<configuration>
 <property>
    <name>fs.default.name</name>
    <value>hdfs://localhost:9000</value>
    <description>HDFS的URI,文件系统://namenode标识:端口号</description>
</property>

Ubuntu 14.04下Hadoop集群安装  http://www.linuxidc.com/Linux/2017-02/140783.htm

<property>
    <name>hadoop.tmp.dir</name>
    <value>/root/hadoop/tmp</value>
    <description>namenode上本地的hadoop临时文件夹</description>
</property>
</configuration>
4),配置hdfs-site.xml 
添加如下配置

更多Hadoop相关信息见Hadoop 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=13

<configuration>
<!—hdfs-site.xml-->
<property>
    <name>dfs.name.dir</name>
    <value>/root/hadoop/hdfs/name</value>
    <description>namenode上存储hdfs名字空间元数据 </description> 
</property>

本文永久更新链接地址:http://www.linuxidc.com/Linux/2017-06/144884.htm

<property>
    <name>dfs.data.dir</name>
    <value>/root/hadoop/hdfs/data</value>
    <description>datanode上数据块的物理存储位置</description>
</property>

澳门新葡亰平台游戏 13

<property>
    <name>dfs.replication</name>
    <value>1</value>
    <description>副本个数,配置默认是3,应小于datanode机器数量</description>
</property>
</configuration>
5),配置mapred-site.xml 
添加如下配置:

<configuration>
<property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
</property>
</configuration>
6),配置yarn-site.xml 
添加如下配置:

<configuration>
<property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
</property>
<property>
        <name>yarn.resourcemanager.webapp.address</name>
        <value>${yarn.resourcemanager.hostname}:8099</value>
</property>
</configuration>
4,Hadoop启动 
1)格式化namenode

$ bin/hdfs namenode –format
2)启动NameNode 和 DataNode 守护进程

$ sbin/start-dfs.sh
3)启动ResourceManager 和 NodeManager 守护进程

$ sbin/start-yarn.sh
5,启动验证 
1)执行jps命令,有如下进程,说明Hadoop正常启动

# jps
54679 NameNode
54774 DataNode
15741 Jps
9664 Master
55214 NodeManager
55118 ResourceManager
54965 SecondaryNameNode
2)在浏览器中输入: 即可看到YARN的ResourceManager的界面。注意:默认端口是8088,这里我设置了yarn.resourcemanager.webapp.address为:${yarn.resourcemanager.hostname}:8099。 

这里写图片描述

 

版权声明:本文由澳门新葡亰平台游戏发布于网络系统,转载请注明出处:9下Hadoop伪分布式环境搭建,centos单机安装Hadoop