最详细云服务器Centos7下搭建Hadoop伪分布式集群(防各种坑)

  • 前言:搭建期间各种踩坑,本教程基本上能解决Hadoop伪分布式集群搭建以及Hadoop-eclipse-plugin插件使用的各种坑
  • 欢迎带原文链接进行转载:https://www.jianshu.com/p/59fe6cdba293

搭建环境

  • 系统:Centos7.5
  • Hadoop版本:Hadoop-2.8.5
  • JDK版本:jkd1.8
  • Eclipse版本:Version: 2018-09 (4.9.0)
  • Hadoop-eclipse-plugin插件版本:2.8.5
  • 插件额外需要的文件:hadoopbin_for_hadoop2.8.5.zip
  • 所有资源下载链接:https://download.csdn.net/download/qq_40702317/10780754

一:关闭系统防火墙以及开放安全组端口(云服务器必须)

  • 1.关闭防火墙
Centos6下:

service iptables stop;#立即关闭防火墙,但是重启后失效。
service iptables start;#立即开启防火墙,但是重启后失效。
chkconfig iptables on;#开启防火墙,重启后生效
chkconfig iptables off;#关闭防火墙,重启后生效

Centos7下:

systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动

  • 2.开放安全组,网上教程非常多
贴心小提示:

用云服务器搭建的话,很容易遭到黑客攻击,利用Hadoop的漏洞攻击服务器,让我们的服务器给他们挖矿,建议配置安全组时,仅允许自己的ip进行访问,当然在搭建Hadoop集群时,就需要单独配置给每台服务器公网ip访问的权限

二:配置主机名

Centos6下:

vim /etc/sysconfig/network 修改文件内容
source /etc/sysconfig/network 使修改生效

  • 修改内容如下:
    NETWORKING=yes
    HOSTNAME=hadoop01
Centos7下:

vim /etc/hostname
修改内容为主机名,修改后重启系统(可以等下面讲解的配置全部修改完成之后进行重启)

三:修改hosts

vim /etc/hosts
以云服务器为例
增加内容为:本机私网ip 主机名

  • 特别注意:如果是本机映射,只能填本机私网ip,如果是其他云服务器,则填写其他云服务器的公网ip地址加主机名,不然无法启动namenode

四:配置免密登录

ssh-keygen
ssh-copy-id [user]@[host]

五:安装jdk以及Hadoop

tar -xf hadoop-2.8.5.tar.gz -C /home/software
tar -xf jdk-8u181-linux-x64.tar.gz -C /home/software

六:配置环境变量

vim /etc/profile

  • 增加内容:
    export JAVA_HOME=/home/software/jdk1.8.0_181
    export HADOOP_HOME=/home/software/hadoop-2.8.5
    export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
  • source /etc/profile 使配置生效

七:配置Hadoop

  • ①.进入配置文件目录
    cd /home/software/hadoop-2.8.5/etc/hadoop
  • ②.修改Hadoop启动所需的jdk环境目录
    vim hadoop-env.sh
    修改内容为:export JAVA_HOME=/home/software/jdk1.8.0_181
  • ③vim core-site.xml 修改内容如下

  
    
    fs.defaultFS 
    hdfs://miracle01:9000
   
   
     
   
     hadoop.tmp.dir
      /home/software/hadoop-2.8.5/tmp
  

欢迎带原文链接进行转载:https://www.jianshu.com/p/59fe6cdba293

④vim hdfs-site.xml 修改内容如下


   
              dfs.replication
              1
  
  
          dfs.client.use.datanode.hostname
          true
  
  
          dfs.datanode.use.datanode.hostname
          true
  
  
      dfs.permissions
      false
  

欢迎带原文链接进行转载:https://www.jianshu.com/p/59fe6cdba293

⑤vim mapred-site.xml 修改内容如下

  • 注意:在/etc/hadoop的目录下,只有一个mapred-site.xml.template文件,复制一个
    cp mapred-site.xml.template mapred-site.xml

        
             
             mapreduce.framework.name
             yarn
      

欢迎带原文链接进行转载:https://www.jianshu.com/p/59fe6cdba293

⑥vim yarn-site.xml 修改内容如下


         
             
             yarn.resourcemanager.hostname
             miracle01
         
         
             
             yarn.nodemanager.aux-services
             mapreduce_shuffle
         

欢迎带原文链接进行转载:https://www.jianshu.com/p/59fe6cdba293

⑦vim slaves 配置主从节点,因为是伪分布式,只需要配置当前主机名

miracle01

⑧reboot 重启

⑨hadoop namenode -format 格式化namenode存储路径


本文链接:https://www.jianshu.com/p/59fe6cdba293

⑩start-all.sh 启动Hadoop

  • 1.查看是否启动成功


    最详细云服务器Centos7下搭建Hadoop伪分布式集群(防各种坑)_第1张图片
    本文链接:https://www.jianshu.com/p/59fe6cdba293
  • 2.如果启动失败,查看Hadoop安装目录下的logs目录中的报错信息,根据报错信息排错
  • 3.如果启动成功,浏览器访问,出现如下界面代表成功
    访问地址 : 云服务器公网ip:50070端口


    最详细云服务器Centos7下搭建Hadoop伪分布式集群(防各种坑)_第2张图片
    本文链接:https://www.jianshu.com/p/59fe6cdba293

七:使用Hadoop-eclipse-plugin插件

  • 1.下载Hadoop-eclipse-plugin.jar,把jar包放到Eclipse安装目录下的plugins下,然后重启Eclipse

  • 2.解压Hadoop-2.8.5.tar.gz到本机电脑

本人目录:D:\Java\eclipsejee201809\Needs\hadoop-2.8.5

  • 3.配置本机电脑的环境变量:

HADOOP_USER_NAME=root
HADOOP_HOME=D:\Java\eclipsejee201809\Needs\hadoop-2.8.5
PATH=%HADOOP_HOME%\bin

  • 4.云服务修改hdfs存储文件的权限

hadoop fs -chmod 777 /

  • 5.开启Eclipse,配置插件,详细看图
最详细云服务器Centos7下搭建Hadoop伪分布式集群(防各种坑)_第3张图片
第一步:本文链接:https://www.jianshu.com/p/59fe6cdba293

最详细云服务器Centos7下搭建Hadoop伪分布式集群(防各种坑)_第4张图片
第二步:本文链接:https://www.jianshu.com/p/59fe6cdba293

最详细云服务器Centos7下搭建Hadoop伪分布式集群(防各种坑)_第5张图片
第三步:本文链接:https://www.jianshu.com/p/59fe6cdba293

最详细云服务器Centos7下搭建Hadoop伪分布式集群(防各种坑)_第6张图片
第四步:本文链接:https://www.jianshu.com/p/59fe6cdba293

最详细云服务器Centos7下搭建Hadoop伪分布式集群(防各种坑)_第7张图片
第五步:本文链接:https://www.jianshu.com/p/59fe6cdba293

最详细云服务器Centos7下搭建Hadoop伪分布式集群(防各种坑)_第8张图片
第六步:本文链接:https://www.jianshu.com/p/59fe6cdba293
  • 6.导入插件额外需要的文件,解压hadoopbin_for_hadoop2.8.5.zip,导入到本机Hadoop根目录的bin目录下,有的电脑还需要把hadoop.dll放到系统盘下的C:\Windows\System32目录下
最详细云服务器Centos7下搭建Hadoop伪分布式集群(防各种坑)_第9张图片
插件所需文件
  • 7.修改本机电脑的hosts文件

云服务器公网ip 云主机名
188.131.147.117 miracle01

  • 巨坑解释:因为我们拿数据时,先请求到namenode中,namenode返回的是datanode的地址,但是datanode注册的地址是服务器的私网ip,我们本身电脑是无法访问私网ip的,就算是返回的是注册时使用的是主机名,在我们电脑里也没有进行映射,所以我们需要在自己电脑的hosts文件下进行映射
  • 8.如果提示权限问题

在云服务器执行命令:hadoop fs -chmod 777 /

  • 9.连接成功后就可以用插件进行操作了
最详细云服务器Centos7下搭建Hadoop伪分布式集群(防各种坑)_第10张图片
本文链接:https://www.jianshu.com/p/59fe6cdba293

你可能感兴趣的:(最详细云服务器Centos7下搭建Hadoop伪分布式集群(防各种坑))