CentOS 7.0下面安装并配置Spark
安装环境:
虚拟机:VMware® Workstation 8.0.1(网络桥接)
OS:CentOS 7
JDK版本:jdk-7u79-linux-x64.tar
Scala版本:scala-2.11.7
Spark版本:spark-1.4.0-bin-hadoop2.4
用户:hadoop安装Centos时创建的,属于管理员组
第一步:配置SSH
使用hadoop登录系统,在终端运行:
yum install openssh-server
如果提示:
则是因为yum服务被占用,需要强制解锁:
rm -rf /var/run/yum.pid
终端就会联网下载安装包并自行进行安装。安装完成后输入下面指令验证22端口是否打开:
netstat -nat
确定22端口是打开的,然后检查SSH安装正确否,输入
ssh localhost
输入当前用户名和密码按回车确认,说明安装成功,同时ssh登陆需要密码。
这里重点说明一下:
Ssh配置实际上就是配置无密码访问,使用身份凭据代替密码验证,访问时只需要提供一个身份凭据即可,不需要输入密码。那么意思也就是说,每一个用户都有一个独一无二的凭据,要访问谁,就将这个凭据交给谁(即复制到人家的目录下即可)
接下来,在终端输入命令进入Hadoop账户目录:
cd /home/hadoop
再次输入:
ssh-keygen -t rsa
然后一路回车
然后我们再次进入.ssh文件夹,然后将id_rsa.pub追加到authorized_keys文件,命令如下:
cd .ssh
顺便查看下本目录下都有什么文件。Id_rsa是属于该账户的私钥,id_rsa.pub是属于该账户的公钥,就是要交出去的。
这里需要多说一句,如果一个主服务器有多个账户要配置无密码访问怎么办?
主服务器下面应该有一个叫authorized_keys 的文件,谁需要配置无密码访问,就把你的公钥追加在这个文件里即可。
cp id_rsa.pub authorized_keys
再次测试无密码登录
ssh localhost
最好是多打开几次终端,测试ssh登录,也可以重启服务测试:
service sshd restart 重启服务
service sshd start 启动服务
service sshd stop 停止服务
netstat -antp | grep sshd 查看是否启动22端口
任何时候遇到权限拒绝在命令前加上sudo 即可,如下就被拒绝了:
chkconfig sshd on设置开机启动
chkconfig sshd off 禁止SSH开机启动
第二步:配置Java、Scala、Saprk
咱们一次性将需要的软件全部复制到/home/data目录下备用。需要注销使用root登录,其他用户权限不够。
Root用户可以直接在UI下面操作,顺便解压好。
然后切换回hadoop用户(*重要)
配置Java路径:
sudo gedit /etc/profile
在最后一行回车加上:
#JAVA VARIABLES START
export JAVA_HOME=/home/data/jdk1.7.0_79
export PATH=$PATH:$JAVA_HOME/bin
#JAVA VARIABLES END
然后刷新系统配置,检查Java安装情况:
source /etc/profile
java -version
看到这个说明Java环境安装成功。
接下来配置Scala环境:
sudo gedit /etc/profile
在最后一行加上:
#SCALA VARIABLES START
export SCALA_HOME=/home/data/scala-2.11.7
export PATH=$PATH:$SCALA_HOME/bin
#SCALA VARIABLES END
然后刷新系统配置,检查Java安装情况:
source /etc/profile
scala -version
看到下图说明成功:
接下来配置Spark环境:
sudo gedit /etc/profile
在最后一行加上:
#SPARK VARIABLES START
export SPARK_HOME=/home/data/spark-1.4.0-bin-hadoop2.4
export PATH=$PATH:$SPARK_HOME/bin
#SPARK VARIABLES END
配置完成的profile文件应该如下图:
然后刷新系统配置:
source /etc/profile
进入spark的conf目录:
备份文件:
sudo mv spark-env.sh.template spark-env.sh
然后编辑新建的文件:
sudo gedit spark-env.sh
在文件最下面加入:
export SCALA_HOME=/home/data/scala-2.11.7
export JAVA_HOME=/home/data/jdk1.7.0_79
export SPARK_MASTER_IP=localhost
export SPARK_WORKER_MEMORY=1024m
export master=spark://localhost 7070
最后还应该编辑该目录下的slaves中机器名,因为我机器名就叫localhost,所以就不编辑了。
第三步:运行Spark
启动Spark集群。
进入sbin目录:
然后在浏览器中访问:localhost:8080
从页面上可以看到一个Worker节点的信息。
我们进入spark的bin目录,使用“spark-shell”控制台:
应该无错出现下面界面:
测试下:
通过访问"http://localhost:4040",进入spark-shell web控制台页面:
输入:
hello world
hello hadoop
pls say hello
然后在Scala命令行输入读取程序:
val readFile = sc.textFile("file:///home/file/test1.txt")
再执行:
readFile.collect
查看spark-shell web控制台:
CentOS 7.0下面安装并配置Spark的更多相关文章
- 怎样在 CentOS 7.0 上安装和配置 VNC 服务器
这是一个关于怎样在你的 CentOS 7 上安装配置 VNC 服务的教程.当然这个教程也适合 RHEL 7 .在这个教程里,我们将学习什么是 VNC 以及怎样在 CentOS 7 上安装配置 VNC ...
- 怎样在CentOS 7.0上安装和配置VNC服务器
VNC轻松连接远程Linux桌面 http://jingyan.baidu.com/article/6c67b1d6f1bac92786bb1e6d.html 这是一个关于怎样在你的 CentOS 7 ...
- CentOS 7.0 上安装和配置 VNC 服务器
作为一个系统管理员,大多数时间是通过网络管理服务器的.在管理服务器的过程中很少会用到图形界面,多数情况下我们只是用 SSH 来完成我们的管理任务.在这篇文章里,我们将配置 VNC 来提供一个连接我们 ...
- CentOS 7.0编译安装Nginx1.6.0+MySQL5.6.19+PHP5.5.14
准备篇: CentOS 7.0系统安装配置图解教程 http://www.osyunwei.com/archives/7829.html 一.配置防火墙,开启80端口.3306端口 CentOS 7. ...
- centos 7.0 编译安装php 7.0.3
php下载页面 http://cn2.php.net/downloads.php 7.0.3多地区下载页面 http://cn2.php.net/get/php-7.0.3.tar.gz/from/a ...
- CentOS 6.0下面安装JDK7
下载地址:http://www.oracle.com/technetwork/java/javase/downloads/java-se-jdk-7-download-432154.html 1. 安 ...
- CentOS 6.0 图文安装教程
CentOS 6.0下载地址:wget http://ftp.riken.jp/Linux/centos/6.0/isos/i386/CentOS-6.0-i386-bin-DVD.iso 下边就是安 ...
- 在CentOS 6.3中安装与配置JDK-7
在CentOS 6.3中安装与配置JDK-7 来源:互联网 作者:佚名 时间:02-07 16:28:33 [大 中 小] 在CentOS-6.3中安装与配置JDK-7,有需要的朋友可以参考下 安装说 ...
- CentOS 7.0编译安装Nginx1.6.0+MySQL5.6.19+PHP5.5.14方法分享
一.配置防火墙,开启80端口.3306端口 CentOS 7.0默认使用的是firewall作为防火墙,这里改为iptables防火墙. 1.关闭firewall: systemctl stop fi ...
随机推荐
- 餐厅到店点餐系统app燃尽图
队友: 郭志豪:http://www.cnblogs.com/gzh13692021053/ 杨子健:http://www.cnblogs.com/yzj666/ 刘森松:http://www.cnb ...
- Making raycast ignore multiple layers
I know how to make the raycast ignore a layer but I want it to ignore layers 9 and 10 but collide wi ...
- jQuery回调、递延对象总结(一)jQuery.Callbacks详解
前言: 作为参数传递给另一个函数执行的函数我们称为回调函数,那么该回调又是否是异步的呢,何谓异步,如:作为事件处理器,或作为参数传递给 (setTimeout,setInterval)这样的异步函数, ...
- windows8 开发教程 教你制作 多点触控Helper可将任意容器内任意对象进行多点缩放
http://blog.csdn.net/wangrenzhu2011/article/details/7732907 (转) 实现方法: 对Manipulation进行抽象化 使不同容器可共用多点缩 ...
- cocos2d ARCH_OPTIMAL_PARTICLE_SYSTEM这个未定义的问题
在新版本的cocos2d中ARCH_OPTIMAL_PARTICLE_SYSTEM已经被移除由 CCParticleSystemQuad取代 CCParticleSystem *test = [ARC ...
- TYVJ P1056 能量项链 Label:环状区间DP
做题记录:2016-08-16 20:05:27 背景 NOIP2006 提高组 第一道 描述 在Mars星球上,每个Mars人都随身佩带着一串能量项链.在项链上有N颗能量珠.能量珠是一颗有头 ...
- 关于Reapter多重嵌套的详细补充
<asp:Repeater ID ="rptfour" runat ="server" OnItemDataBound="two_Bind&qu ...
- Qt中QUdpSocket序列化问题
写了一个小的Qt网络程序,很简单,发送的网络消息除了字符串还有一个结构体.很简单的想到用memcpy()函数来将数据序列化为BYTE数组从而实现网络传输. 序列化是Java中一个概念,C中并没有,C+ ...
- #ifdef __cplusplus extern "C" { #endif //一段代码 #ifdef __cplusplus } #endif
这样的代码到底是什么意思呢?首先,__cplusplus是cpp中的自定义宏,那么定义了这个宏的话表示这是一段cpp的代码,也就是说,上面的代码的含义是:如果这是一段cpp的代码,那么加入" ...
- CentOS源列表
vi /etc/yum.repos.d/CentOS-Base.repo CentOS 5: # CentOS-Base.repo # # The mirror system uses the con ...