安装Hadoop及Spark(Ubuntu 16.04)
安装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.xmlcd /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.xmlcd /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.shcd /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.xmlcd /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.xmlcd /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)的更多相关文章
- MySQL5.7的安装(CentOS 7 & Ubuntu 16.04)
CentOS 通过 yum 安装MySQL5.7 Yum Repository 下载地址:https://dev.mysql.com/downloads/repo/yum/ 选择相应的版本进行下载:R ...
- Ubuntu 16.04 + CUDA 8.0 + cuDNN v5.1 + TensorFlow(GPU support)安装配置详解
随着图像识别和深度学习领域的迅猛发展,GPU时代即将来临.由于GPU处理深度学习算法的高效性,使得配置一台搭载有GPU的服务器变得尤为必要. 本文主要介绍在Ubuntu 16.04环境下如何配置Ten ...
- Ubuntu 16.04安装QQ国际版图文详细教程
因工作需要,我安装了Ubuntu 16.04,但是工作上的很多事情需要QQ联系,然而在Ubuntu上的WebQQ很是不好用,于是在网上搜索了好多个Linux版本的QQ,然而不是功能不全 ...
- 在 Ubuntu 16.04 上安装 LEMP 环境之图文向导
导读 LEMP 是个缩写,代表一组软件包(注解 ① L:Linux OS,E:Nginx 网络服务器,M:MySQL/MariaDB 数据库和 P:PHP 服务端动态编程语言),它被用来搭建动态的网络 ...
- Ubuntu 16.04 LTS安装好需要设置的15件事(喜欢新版本)
看到这篇文章说明你已经从老版本升级到 Ubuntu 16.04 或进行了全新安装,在安装好 Ubuntu 16.04 LTS 之后建议大家先做如下 15 件事.无论你是刚加入 Ubuntu 行列的新用 ...
- Ubuntu 16.04 LTS安装 TeamViewer
Ubuntu 16.04 LTS安装 TeamViewer 64位Ubuntu 16.04系统需要添加32位架构支持,命令如下. sudo dpkg --add-architecture i3 ...
- Linux Ubuntu 16.04 初次安装使用总结zzz
装了两天的ubuntu系统终于算是勉强能用了,来来回回装了有三四次,期间出了各种各样的毛病.但是还是被我的Google大法给治好了.为了装这个系统,算是耗了两天的时间,啥事情都没干,干耗在这上面了.所 ...
- 在XPS13 上安装Ubuntu 16.04
1 准备系统安装U盘 使用常见的光盘工具软件ultraISO. (1)首先使用UltraISO打开Ubuntu-16.04.4-desktop-amd64.iso安装映像. (2)在菜单栏中,选择&q ...
- Ubuntu 16.04 LTS安装好之后需要做的15件事
看到这篇文章说明你已经从老版本升级到 Ubuntu 16.04 或进行了全新安装,在安装好 Ubuntu 16.04 LTS 之后建议大家先做如下 15 件事.无论你是刚加入 Ubuntu 行列的新用 ...
随机推荐
- @media max-width 与jquery宽度取值的差异
最近写了个响应式网站,有些效果通过用jq的$(window).width()来判断屏幕宽度,当屏幕宽度小于1366时一些参数发生变化.@media中也有小于1366的判断条件,但是用起来的时候发现一个 ...
- [iOS]C语言技术视频-07-函数的定义
下载地址: 链接: http://pan.baidu.com/s/1mgiWSqc 密码: 2q9k
- 搭建firefly服务端遇到的问题
1 pylinter pylinter could not automatically determined the path to "lint.py" 这个错误通过安装pylin ...
- Nutz 第一个Demo
Nut 是什么 我这就不多解释 知道是个javaweb框架 如想仔细了解请移步管网 http://nutzam.com/ 一.项目结构(直接看图 ) 需要注意的是 src和conf 都为源码包 con ...
- objective-c学习笔记2
Objective-c学习笔记 1.cocoa的对象初始化一般使用alloc和init两个方法,不适用new,其中alloc用于分配内存,init用于初始化,因为初始化方法返回的对象可能和分配的对象不 ...
- js-权威指南学习笔记9
第九章 类和模块 1.在JS中,类的实现是基于其原型继承机制的,如果两个实例都从同一个原型对象上继承了属性,我们说它们是同一个实例. 2.常见的编程约定:定义构造函数既是定义类,并且类名首字母要大写. ...
- Extjs4新特性
Extjs 4相对于之前的版本作出了重大的修正.其中包括全新的类系统.新平台的引入.API的修整和加强还有新组件的引入(如新的图表和图形组件).Extjs 4提供更快速.更稳定的用户体验,并且让开发人 ...
- java线程 — 创建和启动线程
创建和启动线程,传统有两种方式: 方式1:继承Thread类: 方式2:实现Runnable接口: 线程类(java.lang.Thread):Thread类和Thread的子类才能称之为线程类.阅读 ...
- STM32F10X SPI操作flash MX25L64读写数据(转)
源:STM32F10X SPI操作flash MX25L64读写数据 前一段时间在弄SPI,之前没接触过嵌入式外围应用,就是单片机也只接触过串口通信,且也是在学校的时候了.从离开手机硬件测试岗位后,自 ...
- Lambda 可以转换成委托或expression树
1.关于C# Lambda Expressions: 一个Lambda Expression (译为Lambda式) 就是一个包含若干表达式和语句的匿名函数.可以被用作创建委托对象或表达式树类型.所 ...