栏目分类:
子分类:
返回
终身学习网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
终身学习网 > IT > 软件开发 > 后端开发 > Java

搭建Hadoop集群——易出现问题及解决办法

Java 更新时间:发布时间: 百科书网 趣学号
一.学习目标
  • 了解虚拟机的安装与克隆
  • 熟悉Linux系统的网络配置和SSH的配置
  • 掌握Hadoop集群的搭建和配置
  • 掌握Hadoop集群的测试
  • 熟悉Hadoop集群的初体验的操作
二.搭建 1.创建虚拟机 1.1 下载安装VMware Workstation

下载安装VMware Workstation (为了解决版本不兼容的问题,建议安装版本高一点)

1.2创建虚拟机并虚拟机启动初始化并克隆 1.3Linux 系统网络配置

进入编辑
点击虚拟网络编辑器
选择NAT模式,点击下方 更改设置

此时应该出现桥接模式
若未出现 点击左下方 还原默认配置

更改 NAT设置和DHCP设置
进入PC电脑网络配置和Internet设置中,找到以太网,显示Vmnet1和Vmnet8网卡

若没有显示Vmnet1和Vmnet8网卡
出现此问题是因为:注册表的问题

解决办法:

  • 首先把你之前安装的VMware虚拟机卸载,清理得一干二净;
  • 原因是虚拟机安装的时候,无法写入注册表,我们可以下载一个cclear软件进行清理
    https://www.ccleaner.com/ccleaner/download/standard
  • 重新安装 VMware Workstation
  • 出现Vmnet1和Vmnet8网卡

配置网络参数
配置效果验证(reboot重启系统 ,先通过ifconfig指令查看IP配置是否生效,输入百度网址)
提示:PC端电脑可以正常上网

1.4 SSH服务配置
  • 下载并安装,注册SecureCRT

点击Patch找到安装目录下的SecureCRT.exe并打开,此时会提示Patch成功,自动跳转到安装目录下的LicenseHelper.exe,再次选择并打开,两次成功后注册机先不关闭。此时打开安装的SecureCRT,会弹出License Wizard,可以不输入

  • 然后选择点击Enter License Manually
    输入注册机中填写的Name和Company,点击下一步。

    (只放部分截图,可以自行搜索安装方法)

最后更改配置文件夹位置,建议与SecureCRT安装文件夹在同一级文件夹下。并且不设置密码。出现以下窗口算是成功了。

2.连接服务器
在上面出现的成功窗口中,输入Hostname(服务器IP),Username(服务器登录用户名),其他内容默认。此外如果需要新增连接,通过菜单File–>Quick Connect也可以进到同样窗口

  • SSH免密登录配置
2. Hadoop集群搭建 2.1 jdk安装
  • 下载并安装JDK

  • 采用第三方软件(FileZilla Client)上传jdk

    (安装可自行搜索)
    点击站点,连接,上传jdk

  • 对jdk进行解压


    然后用mv命令对其重命名

  • 配置JDK环境变量
    打开profile文件

Vi /etc/profile

添加以下配置:(注意路径)

2.2 Hadoop安装

(1)下载hadoop-2.7.4.tar.gz
(2)上传 hadoop-2.7.4.tar.gz(利用FileZilla Client)
(3)解压

  • 配置Hadoop
  • 执行 source /etc/profile
2.3 Hadoop集群设置

1、配置Hadoop集群主节点
(1)修改hadoop-env.sh文件

2)修改core-site.xml文件

  fs.defaultFS
  hdfs://node1.itcast.cn:9820
  配置NameNode的URL

(3)修改hdfs-site.xml文件

  dfs.namenode.name.dir
  /export/server/hadoop-3.1.4/data/namenode
  NameNode存储名称空间和事务日志的本地文件系统上的路径


  dfs.datanode.data.dir
  /export/server/hadoop-3.1.4/data/datanode
  DataNode存储名称空间和事务日志的本地文件系统上的路径

(4)修改yarn-site.xml文件
 
  yarn.nodemanager.aux-services
  mapreduce_shuffle 


  yarn.scheduler.minimum-allocation-mb
  512
  为每个容器请求分配的最小内存限制资源管理器(512M)


  yarn.scheduler.maximum-allocation-mb
  4096
  为每个容器请求分配的最大内存限制资源管理器(4G)


  yarn.nodemanager.vmem-pmem-ratio
  4
  虚拟内存比例,默认为2.1,此处设置为4倍

(5)修改mapred-site.xml文件

  mapreduce.framework.name
  yarn
  执行MapReduce的方式:yarn/local


  yarn.app.mapreduce.am.env
  HADOOP_MAPRED_HOME=${HADOOP_HOME}


  mapreduce.map.env
  HADOOP_MAPRED_HOME=${HADOOP_HOME}


  mapreduce.reduce.env
  HADOOP_MAPRED_HOME=${HADOOP_HOME}



(5)修改slaves文件
2.将集群主节点的配置文件分发到其他子节点

2.3 Hadoop集群测试
  • 格式化文件系统

hdfs namenode -format

注意格式化文件只能格式一次,若多次格式化,会出现Datanode启动不起‘
解决办法:
clusterID不匹配导致的问题

解决方法有两种:
方案一: 保留现有数据
用NameNode节点的~/dfs/name/current/VERSION 中的namenode的clusterID替换所有datanode节点机器中~/dfs/data/current/VERSION中的clusterID。
重启启动hadoop:start-all.sh
这种方式不影响现有的数据,避免了重新的格式化。
方案二: 重新格式化
1、执行./stop-all.sh关闭集群
2、删除存放hdfs数据块的文件夹(hadoop/tmp/),然后重建该文件夹
3、删除hadoop下的日志文件logs
4、执行hadoop namenode -format格式化hadoop
重启hadoop集群

  • 启动和关闭Hadoop集群

start-dfs.sh
start-yarn.sh

若出现某个节点缺少的问题
1.回到配置文件检查是否乒拼写错误
若出现没有NodeManager 或 启动后自动结束
在yarn-site.xml文件中添加参数


    yarn.nodemanager.resource.memory-mb
      1024
    
    
  yarn.nodemanager.resource.cpu-vcores
      1
     

  • 通过UI查看Hadoop运行状态

  • 初体验

在/export/data/目录中创建a.txt文件,并写入数据
cd /export/data/
touch a.txt
echo "hello" > a.txt 

#将a.txt上传到HDFS的根目录
hadoop fs -put a.txt  /

查看文件是否创建成功.

转载请注明:文章转载自 www.051e.com
本文地址:http://www.051e.com/it/274810.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 ©2023-2025 051e.com

ICP备案号:京ICP备12030808号