安装环境:
虚拟机: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. HDU2296 Ring(AC自动机+DP)

    题目是给几个带有价值的单词.而一个字符串的价值是 各单词在它里面出现次数*单词价值 的和,问长度不超过n的最大价值的字符串是什么? 依然是入门的AC自动机+DP题..不一样的是这题要输出具体方案,加个 ...

  2. BZOJ3787 : Gty的文艺妹子序列

    将序列分成$\sqrt{n}$块,预处理出每两块之间的逆序对数,以及ap[i]表示前i块内数字出现次数的树状数组 预处理:$O(n\sqrt{n}\log n)$ 修改时,ap[i]可以在$O(\sq ...

  3. 中国大数据六大技术变迁记(CSDN)

    大会召开前期,特别梳理了历届大会亮点以记录中国大数据技术领域发展历程,并立足当下生态圈现状对即将召开的BDTC 2014进行展望: 追本溯源,悉大数据六大技术变迁 伴随着大数据技术大会的发展,我们亲历 ...

  4. python 获取类的属性

    如果不清楚一个对象是否拥有某个属性,可以使用内置函数hasattr 访问一个对象的属性的方法是通过特别属性__dict__,它是一个映射,将属性名称映射到属性值 为了调试方便,可以添加下面这个函数 d ...

  5. BZOJ3238: [Ahoi2013]差异 (后缀自动机)

    Description Input 一行,一个字符串S Output 一行,一个整数,表示所求值 Sample Input cacao Sample Output 54 HINT 2<=N< ...

  6. 原生js记住密码

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  7. C# 从数据库中删除,插入,修改 索引选中条目

    一.删除 1. ) { var currentSelectIndex = usrListView.SelectedIndex; var item = usrView[currentSelectInde ...

  8. AngularJS系列:表单全解(表单验证,radio必选,三级联动,check绑定,form提交验证)

    一.查看$scope -->寻找Form控制变量的位置 Form控制变量 格式:form的name属性.input的name属性.$... formName.inputField.$pristi ...

  9. ASP.NET\ASP.NET MVC表单提交遇到的问题结论

    同步提交的两种基本方式 1,用type=“submit”按钮.form没有必要runat=“server” <form method="post" action=" ...

  10. 将JsonObject转换成HashMap

    1.工具类: Utils.class: (1)简单的键值对map public class Utils { public static String getRaw(Context context, i ...