安装环境:
虚拟机: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的更多相关文章

  1. 怎样在 CentOS 7.0 上安装和配置 VNC 服务器

    这是一个关于怎样在你的 CentOS 7 上安装配置 VNC 服务的教程.当然这个教程也适合 RHEL 7 .在这个教程里,我们将学习什么是 VNC 以及怎样在 CentOS 7 上安装配置 VNC ...

  2. 怎样在CentOS 7.0上安装和配置VNC服务器

    VNC轻松连接远程Linux桌面 http://jingyan.baidu.com/article/6c67b1d6f1bac92786bb1e6d.html 这是一个关于怎样在你的 CentOS 7 ...

  3. CentOS 7.0 上安装和配置 VNC 服务器

    作为一个系统管理员,大多数时间是通过网络管理服务器的.在管理服务器的过程中很少会用到图形界面,多数情况下我们只是用 SSH 来完成我们的管理任务.在这篇文章里,我们将配置 VNC 来提供一个连接我们 ...

  4. 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. ...

  5. 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 ...

  6. CentOS 6.0下面安装JDK7

    下载地址:http://www.oracle.com/technetwork/java/javase/downloads/java-se-jdk-7-download-432154.html 1. 安 ...

  7. CentOS 6.0 图文安装教程

    CentOS 6.0下载地址:wget http://ftp.riken.jp/Linux/centos/6.0/isos/i386/CentOS-6.0-i386-bin-DVD.iso 下边就是安 ...

  8. 在CentOS 6.3中安装与配置JDK-7

    在CentOS 6.3中安装与配置JDK-7 来源:互联网 作者:佚名 时间:02-07 16:28:33 [大 中 小] 在CentOS-6.3中安装与配置JDK-7,有需要的朋友可以参考下 安装说 ...

  9. CentOS 7.0编译安装Nginx1.6.0+MySQL5.6.19+PHP5.5.14方法分享

    一.配置防火墙,开启80端口.3306端口 CentOS 7.0默认使用的是firewall作为防火墙,这里改为iptables防火墙. 1.关闭firewall: systemctl stop fi ...

随机推荐

  1. 餐厅到店点餐系统app燃尽图

    队友: 郭志豪:http://www.cnblogs.com/gzh13692021053/ 杨子健:http://www.cnblogs.com/yzj666/ 刘森松:http://www.cnb ...

  2. 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 ...

  3. jQuery回调、递延对象总结(一)jQuery.Callbacks详解

    前言: 作为参数传递给另一个函数执行的函数我们称为回调函数,那么该回调又是否是异步的呢,何谓异步,如:作为事件处理器,或作为参数传递给 (setTimeout,setInterval)这样的异步函数, ...

  4. windows8 开发教程 教你制作 多点触控Helper可将任意容器内任意对象进行多点缩放

    http://blog.csdn.net/wangrenzhu2011/article/details/7732907 (转) 实现方法: 对Manipulation进行抽象化 使不同容器可共用多点缩 ...

  5. cocos2d ARCH_OPTIMAL_PARTICLE_SYSTEM这个未定义的问题

    在新版本的cocos2d中ARCH_OPTIMAL_PARTICLE_SYSTEM已经被移除由 CCParticleSystemQuad取代 CCParticleSystem *test = [ARC ...

  6. TYVJ P1056 能量项链 Label:环状区间DP

    做题记录:2016-08-16 20:05:27 背景 NOIP2006 提高组 第一道 描述     在Mars星球上,每个Mars人都随身佩带着一串能量项链.在项链上有N颗能量珠.能量珠是一颗有头 ...

  7. 关于Reapter多重嵌套的详细补充

    <asp:Repeater ID ="rptfour" runat ="server" OnItemDataBound="two_Bind&qu ...

  8. Qt中QUdpSocket序列化问题

    写了一个小的Qt网络程序,很简单,发送的网络消息除了字符串还有一个结构体.很简单的想到用memcpy()函数来将数据序列化为BYTE数组从而实现网络传输. 序列化是Java中一个概念,C中并没有,C+ ...

  9. #ifdef __cplusplus extern "C" { #endif //一段代码 #ifdef __cplusplus } #endif

    这样的代码到底是什么意思呢?首先,__cplusplus是cpp中的自定义宏,那么定义了这个宏的话表示这是一段cpp的代码,也就是说,上面的代码的含义是:如果这是一段cpp的代码,那么加入" ...

  10. CentOS源列表

    vi /etc/yum.repos.d/CentOS-Base.repo CentOS 5: # CentOS-Base.repo # # The mirror system uses the con ...