ubuntu-hadoop+Spark集群部署踩坑记录

前言

好久没有更新博客了,主要是懒得放论文笔记。
最近比较想玩一下分布式系统,就装了一个hadoop+spark的集群(1个master、1个slaver,没有多余的主机,所以只用了两个)。
耗时快一天,简单记录一下部署过程中遇到的问题。
主要安装流程

  • 搭建与测试hadoop分布式集群环境
  • 搭建与预测spark环境

hadoop 分布式集群部署

master 192.168.1.112
slaver 192.168.1.101
安装参考教程进行逐步安装

遇到的主要问题:

    1. 主机之间ssh连接报错

ssh本机失败(ssh: connect to host localhost port 22: Connection refused)

解决方法:重新安装open-sshserver

    1. namenode节点无法启动: 原因是自己把主机host名称中带有"_",注意:主机hostname不能带有"-"或者_
    1. Hadoop集群启动后,data节点上的主机无法使用jps命令,即无法查看java进程;

The program 'jps' can be found in the following packages:

  • openjdk-7-jdk
  • openjdk-6-jdk
    Try: apt-get install <selected package>

解决方法:重新安装jdk,安装完整版本的jdk后即可相似解决方案

    1. datanode节点无法启动:no datanode
    • 原因:hafs-site.xml配置文件有语法错误,通过查看日志才发现(大家如遇各种奇怪问题,还是第一步先去看看logs日志里面的报错信息)
    • 注: hadf-site.xml指明了name和data节点的存储位置,可以明确配置一下:
hdfs-site.xml配置
<configuration>
    <property>
        <name>dfs.replication</name>
        <value>2</value>
    </property>
    <property>
      <name>dfs.namenode.name.dir</name>
      <value>file:/usr/local/hadoop/tmp/dfs/name</value>
    </property>
    <property>
      <name>dfs.datanode.data.dir</name>
      <value>file:/usr/local/hadoop/tmp/dfs/data</value>
    </property>
</configuration>
    1. hadoop 8088网页无法打开: 主要原因:没有对该端口做设置,在yarn-site.xml配置中添加如下:
  <property>
     <name>yarn.resourcemanager.webapp.address</name>
     <value>localhost:8088</value>
    </property>
8088页面
50070页面

上面显示有一个namenode,一个Live Node(datanode),说明环境初步配置完成

hadoop运行测试: wordcount示例

参考教程

wordcount运行截图

以上过程说明hadoop已经成功部署,并能使用。

Spark集群部署

参考教程
我们为了利用hadoop的HDFS系统,因此在spark平台的配置前部署hadoop集群。在上步工作完成后,spark的配置就比较简单了,按照教程进行逐步操作即可。

主要遇到的一个问题也是自己疏忽导致的,没有指定spark的集群的slaves,导致worker节点无法启动。


pyspark-spell
spark 8088页面

总结

整个配置过程中,过程相对比较简单,但特别需要主要hadoop和spark的配置文件设置,大部分问题都是由于配置文件的设置不当引起的。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。