Ubuntu 16.04安装Hadoop及Spark

来源:互联网 发布:光伏电站数据采集器 编辑:程序博客网 时间:2024/05/23 21:55

安装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/jvmsudo mv jdk1.8.0_91 jdk
  • 添加环境变量

    sudo vim /etc/profile# 添加如下配置export JAVA_HOME=/usr/lib/jvm/jdkexport CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$CLASSPATHexport 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/localsudo mv scala-2.11.8 scala
  • 添加环境变量

    sudo vim /etc/profile# 在最后添加下面内容export SCALA_HOME=/usr/local/scalaexport 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/localsudo mv hadoop-2.7.2 hadoop
  • 修改权限

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

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

    hadoop version

Hadoop伪分布式配置

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

    cd /usr/local/hadoopvim ./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/hadoopvim ./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/hadoopvim ./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 Jps5636 DataNode5493 NameNode5814 SecondaryNameNode
  • 通过浏览器查看

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

配置YARN

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

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

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

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

    #!/bin/bash# 停止历史服务器mr-jobhistory-daemon.sh stop historyserver# 停止yarnstop-yarn.sh# 停止hadoopstop-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/localsudo mv spark-2.0.0-bin-hadoop2.7 spark
  • 添加环境变量

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

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

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

    cd /usr/loca/sparkvim ./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以及yarnstart-dfs.shstart-yarn.sh# 启动历史服务器mr-jobhistory-daemon.sh start historyserver# 启动Spark/usr/local/spark/sbin/start-all.sh

    停止Hadoop以及Spark

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

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

0 0