安装Hadoop及Spark(Ubuntu 16.04)

安装JDK

  • 下载jdk(以jdk-8u91-linux-x64.tar.gz为例)

  • 新建文件夹

    sudo mkdir /usr/lib/jvm

  • 解压下载的jdk文件并移动到新建的文件夹下

    sudo tar -xzvf jdk-8u91-linux-x64.tar.gz -C /usr/lib/jvm

  • 进入jvm文件夹并重命名解压出来的文件夹

    cd /usr/lib/jvm
    sudo mv jdk1.8.0_91 jdk
  • 添加环境变量

    sudo vim /etc/profile
    # 添加如下配置
    export JAVA_HOME=/usr/lib/jvm/jdk
    export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$CLASSPATH
    export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
  • 使配置生效

    source /etc/profile

  • 测试

    java -version

安装Scala

  • 类似于jdk的安装

  • 下载scala(以scala-2.11.8.tgz为例)

  • 解压下载的scala文件

    sudo tar -xzvf scala-2.11.8.tgz -C /usr/local

  • 重命名

    cd /usr/local
    sudo mv scala-2.11.8 scala
  • 添加环境变量

    sudo vim /etc/profile
    # 在最后添加下面内容
    export SCALA_HOME=/usr/local/scala
    export PATH=$SCALA_HOME/bin:$PATH
  • 使配置生效

    source /etc/profile

  • 测试

    scala -version

安装Hadoop

Spark默认使用HDFS充当持久化层,所以需要安装Hadoop,当然也可以不安装

参考

安装

  • 安装ssh

    sudo apt install openssh-server

  • 配置ssh无密登陆

    ssh-keygen -t rsa	# 一直回车
    cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
  • 测试ssh无密登陆

    ssh localhost # 如果不提示输入密码则配置成功

  • 下载Hadoop(以hadoop-2.7.2.tar.gz为例)

  • 解压

    sudo tar -xzvf hadoop-2.7.2.tar.gz -C /usr/local

  • 重命名

    cd /usr/local
    sudo mv hadoop-2.7.2 hadoop
  • 修改权限

    cd /usr/local
    sudo chown -R yourusername:yourusername hadoop
  • 配置环境变量

    sudo vim /etc/profile
    # 在最后添加下面代码
    export HADOOP_HOME=/usr/local/hadoop
    export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
  • 测试

    hadoop version

Hadoop伪分布式配置

  • 修改配置文件core-site.xml

    cd /usr/local/hadoop
    vim ./etc/hadoop/core-site.xml
    # 修改为如下
    <configuration>
    <property>
    <name>hadoop.tmp.dir</name>
    <value>file:/usr/local/hadoop/tmp</value>
    <description>Abase for other temporary directories.</description>
    </property>
    <property>
    <name>fs.defaultFS</name>
    <value>hdfs://localhost:9000</value>
    </property>
    </configuration>
  • 修改配置文件hdfs-site.xml

    cd /usr/local/hadoop
    vim ./etc/hadoop/hdfs-site/xml
    # 修改为如下
    <configuration>
    <property>
    <name>dfs.replication</name>
    <value>1</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>
  • 修改配置文件hadoop-env.sh

    cd /usr/local/hadoop
    vim ./etc/hadoop/hadoop-env.sh
    # 将 export JAVA_HOME=${JAVA_HOME} 更改为:
    export JAVA_HOME=/usr/lib/jvm/jdk
  • 执行NameNode格式化

    hdfs namenode -format

  • 运行

    start-dfs.sh

  • 测试

    jps

    有如下几个进程

    5939 Jps
    5636 DataNode
    5493 NameNode
    5814 SecondaryNameNode
  • 通过浏览器查看

    在浏览器中输入一下地址:localhost:50070

配置YARN

  • 修改配置文件mapred-site.xml

    cd /usr/local/hadoop
    cp ./etc/hadoop/mapred-site.xml.template ./etc/hadoop/mapred-site.xml
    vim ./etc/hadoop/mapred-site.xml
    # 修改为如下配置
    <configuration>
    <property>
    <name>mapreduce.framework.name</name>
    <value>yarn</value>
    </property>
    </configuration>
  • 修改配置文件yarn-site.xml

    cd /usr/local/hadoop
    vim ./etc/hadoop/yarn-site.xml
    # 修改为以下配置
    <configuration>
    <property>
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
    </property>
    </configuration>
  • 编写启动脚本

    #!/bin/bash
    # 启动hadoop
    start-dfs.sh
    # 启动yarn
    start-yarn.sh
    # 启动历史服务器,以便在Web中查看任务运行情况
    mr-jobhistory-daemon.sh start historyserver
  • 编写停止脚本

    #!/bin/bash
    # 停止历史服务器
    mr-jobhistory-daemon.sh stop historyserver
    # 停止yarn
    stop-yarn.sh
    # 停止hadoop
    stop-dfs.sh
  • 通过 Web 界面查看任务的运行情况

    浏览器中输入地址:localhost:8088

安装Spark

  • 下载spark(以spark-2.0.0-bin-hadoop2.7.tgz为例)

  • 解压下载的spark文件

    sudo tar -zxf spark-2.0.0-bin-hadoop2.7.tgz -C /usr/local

  • 重命名

    cd /usr/local
    sudo mv spark-2.0.0-bin-hadoop2.7 spark
  • 添加环境变量

    sudo vim /etc/profile
    # 在最后添加下面内容
    export SPARK_HOME=/usr/local/spark
    export PATH=$SPARK_HOME/bin:$SPARK_HOME/sbin:$PATH
  • 修改一下权限

    cd /usr/local
    sudo chown -R yourusername:yourusername ./spark
  • 拷贝配置文件

    cd /usr/local/spark
    cp ./conf/spark-env.sh.template ./conf/spark-env.sh
  • 修改配置文件

    cd /usr/loca/spark
    vim ./conf/spark-env.sh
    # 添加下面一行
    export SPARK_DIST_CLASSPATH=$(/usr/local/hadoop/bin/hadoop classpath)
    export JAVA_HOME=/usr/lib/jvm/jdk
  • 运行简单示例

    /usr/local/spark/bin/run-example SparkPi 2>&1 | grep "Pi is roughly"

  • 启动Spark

    /usr/local/spark/sbin/start-all.sh

  • 编写脚本

    启动Hadoop以及Spark

    #!/bin/bash
    # 启动Hadoop以及yarn
    start-dfs.sh
    start-yarn.sh
    # 启动历史服务器
    mr-jobhistory-daemon.sh start historyserver
    # 启动Spark
    /usr/local/spark/sbin/start-all.sh

    停止Hadoop以及Spark

    #!/bin/bash
    # 停止Spark
    stop-dfs.sh
    stop-yarn.sh
    # 停止历史服务器
    mr-jobhistory-daemon.sh stop historyserver
    # 停止Hadoop以及yarn
    /usr/local/hadoop/sbin/stop-all.sh
  • 通过WEB页面查看

    浏览器中输入地址:localhost:8080

安装Hadoop及Spark(Ubuntu 16.04)的更多相关文章

  1. MySQL5.7的安装(CentOS 7 & Ubuntu 16.04)

    CentOS 通过 yum 安装MySQL5.7 Yum Repository 下载地址:https://dev.mysql.com/downloads/repo/yum/ 选择相应的版本进行下载:R ...

  2. Ubuntu 16.04 + CUDA 8.0 + cuDNN v5.1 + TensorFlow(GPU support)安装配置详解

    随着图像识别和深度学习领域的迅猛发展,GPU时代即将来临.由于GPU处理深度学习算法的高效性,使得配置一台搭载有GPU的服务器变得尤为必要. 本文主要介绍在Ubuntu 16.04环境下如何配置Ten ...

  3. Ubuntu 16.04安装QQ国际版图文详细教程

            因工作需要,我安装了Ubuntu 16.04,但是工作上的很多事情需要QQ联系,然而在Ubuntu上的WebQQ很是不好用,于是在网上搜索了好多个Linux版本的QQ,然而不是功能不全 ...

  4. 在 Ubuntu 16.04 上安装 LEMP 环境之图文向导

    导读 LEMP 是个缩写,代表一组软件包(注解 ① L:Linux OS,E:Nginx 网络服务器,M:MySQL/MariaDB 数据库和 P:PHP 服务端动态编程语言),它被用来搭建动态的网络 ...

  5. Ubuntu 16.04 LTS安装好需要设置的15件事(喜欢新版本)

    看到这篇文章说明你已经从老版本升级到 Ubuntu 16.04 或进行了全新安装,在安装好 Ubuntu 16.04 LTS 之后建议大家先做如下 15 件事.无论你是刚加入 Ubuntu 行列的新用 ...

  6. Ubuntu 16.04 LTS安装 TeamViewer

    Ubuntu 16.04 LTS安装 TeamViewer     64位Ubuntu 16.04系统需要添加32位架构支持,命令如下. sudo dpkg --add-architecture i3 ...

  7. Linux Ubuntu 16.04 初次安装使用总结zzz

    装了两天的ubuntu系统终于算是勉强能用了,来来回回装了有三四次,期间出了各种各样的毛病.但是还是被我的Google大法给治好了.为了装这个系统,算是耗了两天的时间,啥事情都没干,干耗在这上面了.所 ...

  8. 在XPS13 上安装Ubuntu 16.04

    1 准备系统安装U盘 使用常见的光盘工具软件ultraISO. (1)首先使用UltraISO打开Ubuntu-16.04.4-desktop-amd64.iso安装映像. (2)在菜单栏中,选择&q ...

  9. Ubuntu 16.04 LTS安装好之后需要做的15件事

    看到这篇文章说明你已经从老版本升级到 Ubuntu 16.04 或进行了全新安装,在安装好 Ubuntu 16.04 LTS 之后建议大家先做如下 15 件事.无论你是刚加入 Ubuntu 行列的新用 ...

随机推荐

  1. cnn 文章

    http://www.cnblogs.com/fengfenggirl/p/cnn_implement.html http://www.2cto.com/kf/201603/493553.html h ...

  2. iOS利用通知(NSNotification)进行传值

    通知 是在跳转控制器之间常用的传值代理方式,除了代理模式,通知更方便.便捷,一个简单的Demo实现通知的跳转传值. iOS通知传值的使用 输入所要发送的信息 ,同时将label的值通过button方法 ...

  3. ajax常用写法

    $.ajax( url,{ type:"post", data:{},}) .done(function() { alert("success"); }) .f ...

  4. LPC1788 nand驱动

    Lpc 1788自带有emc接口用于驱动nandflash,norflash,sdram设备,对于nandflash驱动因为配置简单,时序也简单 首先,针对nandflash而言应当在系统中有三个地址 ...

  5. S3C2440触摸屏驱动详解

    2440的触摸屏转换接口搭载在ADC接口之上,使用上比ADC接口多了一些花样,首先,触摸屏接口有几种转换模式 1. 普通转换模式 单转换模式是最合适的通用ADC转换.此模式可以通过设置ADCCON(A ...

  6. &简单使用记录

    最近阅读juce代码发现有很多&的用法,例如:(array.size() & 1 == 0) 的判断,仔细分析了下和1做与 操作是为了判断低位是否为0或者1,直观的说就是判断左值的奇偶 ...

  7. 【转】HTTP响应报文与工作原理详解

    超文本传输协议(Hypertext Transfer Protocol,简称HTTP)是应用层协议.HTTP 是一种请求/响应式的协议,即一个客户端与服务器建立连接后,向服务器发送一个请求;服务器接到 ...

  8. pageX,clientX,screenX,offsetX区别

    pageX/pageY:鼠标相对于整个页面的X/Y坐标.注意,整个页面的意思就是你整个网页的全部,比如说网页很宽很长,宽2000px,高3000px,那pageX,pageY的最大值就是它们了.特别说 ...

  9. REST API设计规范

    完全面向资源,API以复数形式表示 路径(Endpoint) http://example.com/libraries //列出所有图书馆 http://example.com/books //列出所 ...

  10. T4模板使用

    本例使用的数据库是Northwind 1.新建tt文本模板customer.tt 2. 修改customer.tt内容为 <#@ template debug="false" ...