您的位置:首页 > 编程语言 > Java开发

hadoop分布式环境搭建(vmware14+hadoop2.9.0(包含yarn)+Ubuntu16.04LTS+jdk1.8.0_161)

2018-02-12 17:14 459 查看
      博主最近在vmware workstation14+hadoop2.9.0+Ubuntu16.04LTS环境下搭建了一个master(一个namenode)两个slave(即两个datanode)的分布式hadoop环境,下面将本次博主搭建的过程及步骤按照和各位博友分享,由于博主未保存搭建时各步骤的截图,因此将使用前辈们各步骤截图或者无截图,望各位前辈见谅。
        进行配置之前,需要在ubuntu中安装vim插件编辑文件,相比于vi和gedit工具,该工具更容易操作,也能避免乱码等一系列不必要的问题。
        安装命令:sudo apt-get install vim
        


       (一)第一步:新建三台虚拟机,并进行相应的网络配置(静态IP,hostname文件配置,hosts文件配置,关闭防火墙或者开启相应端口)
       (1)利用vmware workstation14新建三个虚拟机(网络模式选择桥接模式)
        


        并根据实体机所在的网络环境,在虚拟机中设置静态IP,博主搭建的网络环境如下(各位博友根据自己网络环境进行相应变化):
       master节点:192.168.1.200
       slave1节点:192.168.1.201
       slave2节点:192.168.1.202
       以上配置可以从界面进行操作,以master为例。
       


       (2)修改hostname文件,需要root权限,命令:su root,输入密码,然后进入root,然后vim etc/hostname,master节点机器,改为master,于此相同,slave1和slave2节点也分别改为slave1和slave2
       (3)修改hosts文件,将下列内容添加进hosts文件(三个节点均需要配置此步骤,需要root权限,进入root参考上条,以master为例)
         192.168.1.200   master
         192.168.1.201   slave1
         192.168.1.202   slave2
         


       (4)关闭防火墙或者打开使用端口(三个节点均需要配置此步骤,博主使用的是关闭防火墙,简单粗暴)
        进入root用户,关闭防火墙命令为:ufw disable
        运行命令后,提示防火墙服务不会在开机时启动即可
        


       (5)测试
        master节点:ping slave1   看是否ping通
                             ping slave2   看是否ping通
        slave1 节点:ping master  看是否ping通
                             ping slave2   看是否ping通
        slave2 节点:ping master  看是否ping通
                             ping slave1   看是否ping通
        如以上测试通过,则第一步配置成功
       (二)第二步,三台虚拟机分别新建相同的用户(如果新建的三台虚拟机有相同的用户,我觉得此步骤可以省略,以master为例)
        (1)新建名为hadoop用户组
         


        (2)添加一个用户mwq,并添加进hadoop用户组,并制定用户目录
         


         (3)设置mwq用户密码,连续输入两次
          


         (4)设置mwq用户权限,赋予admin权限
          


          以下步骤切
b607
换到mwq用户进行
       (三)第三步,机器未安装ssh时需安装ssh服务,并在三台虚拟机之间开启ssh免密的登录
        (1)三台机器均需安装ssh服务(以master节点为例)
         


        (2)虚拟机自身免密登录自身(三台虚拟机均需要此步骤设置),以master节点为例,输入ssh-keygen -t rsa -P "",敲回车两次,直到出现以下界面
         


         进入.ssh文件夹
         


        用cat id_rsa.pub >> authorized_keys 命令生成免密登录authorized_keys,实现免密登录
         


         效果如下:
         


         第一次需要输入yes,以后就不需要了
        (3)配置master到slave1和slave2的免密登录(该操作在slave1和slave2上操作)
         首先将master中生成的id_rsa.pub复制到已安装ssh服务的slave1和slave2中的.ssh文件夹
         然后利用cat   id_rsa.pub >> authorized_keys实现master登录到slave1和slave2的免密登录
        (四)安装java jdk环境(本文使用jdk1.8.0_161,三台虚拟机均需要此操作)
        (1)首先去oracle官网,下载jdk8,默认文件保存到/home/mwq/Downloads
        (2)我的解压目录为/usr/lib下的jvm文件夹,而且jvm文件夹不存在,需要在root权限下创建,如下图所示
         


         进入jvm文件夹
         


         复制Downloads文件夹下的jdk到jvm并解压
         


         切换到mwq用户并配置环境变量,编辑/.bashrc文件
         


         在文件末尾输入以下内容
         


         使配置文件生效
          


         查看是否配置成功
         

  
        另外的slave1和slave2节点也可按照以上步骤配置      
        (五)下载并配置hadoop(三台主机均需相同配置)
         在以下地址http://mirrors.hust.edu.cn/apache/hadoop/common/hadoop-2.9.0/hadoop-2.9.0.tar.gz下载hadoop-2.9.0,千万别下成hadoop-2.9.0-src.tar.gz
           博主在/home/mwq中新建hadoop文件夹,并将hadoop-2.9.0解压到hadoop下面(三台主机存放hadoop-2.9.0文件的位置相同)
           修改/home/mwq/hadoop/hadoop-2.9.0/etc/hadoop/hadoop-env.sh文件
           


           修改/home/mwq/hadoop/hadoop-2.9.0/etc/hadoop/core-site.xml文件

           


           修改/home/mwq/hadoop/hadoop-2.9.0/etc/hadoop/hdfs-site.xml文件
           


           修改/home/mwq/hadoop/hadoop-2.9.0/etc/hadoop/mapred-site.xml.template文件
           


           修改/home/mwq/hadoop/hadoop-2.9.0/etc/hadoop/slaves文件
           

        
           修改/etc/profile文件,加入以下内容
           


          运行结果:
         

          
       (六)格式化,只需在master节点
         hadoop namenode -format,测试通过后可以配置yarn和mapreduce
       (七)配置yarn,主要修改yarn-env.sh,yarn-site.xml和mapred-sitexml,master节点修改好之后,复制到slave1和salve2节点即可
         yarn-env.sh 添加jdk目录
        


       mapred-site.xml在刚才配置的基础上,增加以下未有的内容
       


       yarn-site.xml增加以下配置
       


        (七)启动hadoop服务
         start-all.sh
       

        
       
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐