基于VMware搭建Hadoop-2.7.5分布式集群环境

本文是主要参考了几篇博客之后才搭建成功的,目的只是记录搭建过程,主要引用文章请参考博客。这里对原文中略作改动以适应当前环境需求。
ps:什么时候能够改进一下自己的MarkDown文本编辑能力,排版能力弱爆了!!!

1.虚拟机安装Ubuntu-16.04.3

虚拟机:VMware Workstation 12
内存:2G
网络:桥接模式
系统:Ubuntu-16.04.3
节点(局域网):
    192.168.1.104    master      hadoop/namenode/resourcemanager
    192.168.1.105    slave_01   hadoop/datanode/secondnamenode
    192.168.1.106    slave_02   hadoop/datanode

2.主、从虚拟机设置及验证

sudo -su    切换到root权限。
gedit /etc/hostname    编辑对应节点虚拟机名称
gedit /etc/hosts    添加如下内容

192.168.1.104    master
192.168.1.105    slave_01
192.168.1.106    slave_02

systemctl stop firewalld.service    关闭防火墙
systemctl disable firewalld.service    禁止防火墙开机启动
ping     测试各节点虚拟机之间是否联通
(ctrl+c退出PING命令)

*3.安装vim编辑器

感觉系统自带的vi并不好用,可以利用apt-get install vim来安装vim编辑器,以下内容编辑默认使用vim。

4.JDK安装及环境设置

新版本的Ubuntu系统库中没有1.7及之前版本jdk。在布置阶段我才用了1.8版本jdk,并没有发生错误。不知道后续MapReduce应用开发过程中是否顺利之情,待解决。
apt-get install openjdk-1.8-jdk-headless    安装jdk环境
vim /etc/profile    添加以下环境变量

export $JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
export $JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH

:wq    保存退出编辑
source /etc/profile    使新的环境变量生效

5.安装并配置SSH

该版本系统中默认没有安装SSH Shell,所以需要手动安装一下
apt-get install openssh-server    安装ssh shell
ps -e|grep ssh    查看是否开启服务
ssh localhost    验证
ssh-keygen -t rsa    各节点虚拟机执行该命令生成密钥对
cd /root/.ssh目录
cat id_dsa.pub>>authorized_keys    导出认证文件
scp authorized_keys root@:~/.ssh/    拷贝认证文件到节点虚拟机
chmod 600 .ssh/authorized_keys    修改认证权限模式
ssh slave_01验证是否免密成功

6.安装并配置Hadoop分布式集群

1)在master主机上进入/opt目录,创建soft目录并进入。利用命令下载hadoop-2.7.5的压缩文件
wget http://mirror.bit.edu.cn/apache/hadoop/common/hadoop-2.7.5/hadoop-2.7.5.tar.gz
tar -zxvf hadoop-2.7.5.tar.gz    解压
2)创建如下目录
mkdir /dfs
mkdir /dfs/name
mkdir /dfs/data
mkdir /tmp
3)配置文件:hadoop-env.sh(/opt/soft/hadoop-2.7.5/etc/hadoop)
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
4)配置文件:yarn-env.sh
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
5)配置文件:slaves

slave_01
sleve_02

6)配置文件:core-site.xml

  
      
        fs.defaultFS  
        hdfs://master:9000  
      
      
        io.file.buffer.size  
        131072  
      
      
        hadoop.tmp.dir  
        file:/opt/soft/hadoop-2.7.5/tmp  
        Abase for other temporary directories.  
      

8)配置文件:hdfs-site.xml

  
         
                dfs.namenode.secondary.http-address  
               master:9001  
         
       
             dfs.namenode.name.dir  
             file:/opt/soft/hadoop-2.7.5/dfs/name  
         
        
              dfs.datanode.data.dir  
              file:/opt/soft/hadoop-2.7.5/dfs/data  
         
         
               dfs.replication  
               2  
          
          
                 dfs.webhdfs.enabled  
                  true  
           
  

9)配置文件:mapred-site.xml
先拷贝模板文件
cp mapred-site.xml.template mapred-site.xml

  
                                                                             
                  mapreduce.framework.name  
                  yarn  
           
           
                  mapreduce.jobhistory.address  
                  master:10020  
           
           
                  mapreduce.jobhistory.webapp.address  
                  master:19888  
           

10)配置文件:yarn-site.xml

  
          
               yarn.nodemanager.aux-services  
               mapreduce_shuffle  
          
                                                                          
        yarn.nodemanager.aux-services.mapreduce.shuffle.class  
               org.apache.hadoop.mapred.ShuffleHandler  
          
          
               yarn.resourcemanager.address  
               master:8032  
         
         
               yarn.resourcemanager.scheduler.address  
               master:8030  
         
         
            yarn.resourcemanager.resource-tracker.address  
             master:8031  
        
        
              yarn.resourcemanager.admin.address  
               master:8033  
         
         
               yarn.resourcemanager.webapp.address  
               master:8088  
         

11)将上述文件拷贝到另外两个虚拟机的相同目录当中替换原有文件
12)编辑环境变量
添加
export HADOOP_HOME=/opt/soft/hadoop-2.7.5
修改PATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$HADOOP_HOME/bin:$PATH
生效上述环境变量
13)
hdfs namenode -format    格式化namenode
start-all.sh    启动hadoop
jps    查看是否启动成功

7.提交并执行验证任务

在master虚拟机上创建数据文件存储目录
hdfs dfs -mkdir -p /user//input    这里注意

/user/

文件系统格式,否则运行错误。

hdfs dfs -put EXAMPLEFILE  /user/root/input

提交数据文件。
提交任务

hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.5.jar wordcount /user/root/input /user/root/output/result

查看结果

hdfs dfs -cat /data/output/result/part-r-00000 

至此,已完成集群环境下hadoop分布式系统搭建。

你可能感兴趣的:(基于VMware搭建Hadoop-2.7.5分布式集群环境)