创建spark用户组,组ID1000

groupadd -g 1000 spark

在spark用户组下创建用户ID 2000的spark用户  获取视频中文档资料及完整视频的伙伴请加QQ群:947967114

useradd -u 2000 -g spark spark

设置密码

passwd spark

修改sudo权限

chmod u+w /etc/sudoers

vi /etc/sudoers

找到

root    ALL=(ALL)       ALL

添加

spark   ALL=(ALL)       ALL

创建一个app目录用来存放spark的软件环境(jdk、scala、spark)

mkdir /app

修改这个文件的属组和属主

chown -R spark:spark /app

创建soft

mkdir /app/soft

创建spark

mkdir /app/spark

创建/spark/work

mkdir -p /home/spark/work

改变/spark/work属组和属主

chown -R spark:spark /home/spark/work

切换用户

su root

解压JDK

cd /tmp/

tar zxvf jdk-8u192-linux-x64.tar.gz -C /app/soft/

如果没有权限首先使用chmod 777 -R /tmp修改权限

cd /app/soft/

ll -a

配置/etc/profile

sudo vi /etc/profile,所有需要的配置都添加了

JAVA_HOME=/app/soft/jdk1.8.0_192

PATH=$JAVA_HOME/bin:$PATH:$HOME/bin

export PATH

让配置生效   获取视频中文档资料及完整视频的伙伴请加QQ群:947967114

source /etc/profile

安装scala:

tar zxvf /tmp/scala-2.11.12.tgz -C /app/soft/

配置环境变量

sudo vi /etc/profile

JAVA_HOME=/app/soft/jdk1.8.0_192

SCALA_HOME=/app/soft/scala-2.11.12/

PATH=$JAVA_HOME/bin:$PATH:$HOME/bin:$SCALA_HOME/bin

export PATH

配置ssh无秘登录

ssh-keygen -t rsa

cd ~/

cd .ssh/

修改公钥的名字

master节点:mv id_rsa.pub authorized_keys_master.pub

slave1节点:mv id_rsa.pub authorized_keys_slave1.pub

slave2节点:mv id_rsa.pub authorized_keys_slave2.pub

把slave1和slave2的公钥给master

slave1节点:scp authorized_keys_slave1.pub spark@master:/home/spark/.ssh/

slave2节点:scp authorized_keys_slave2.pub spark@master:/home/spark/.ssh/

把三个节点的公钥都写在一个文件中

cat authorized_keys_master.pub >> authorized_keys

cat authorized_keys_slave1.pub  >> authorized_keys

cat authorized_keys_slave2.pub  >> authorized_keys

查看一下总的公钥文件

vi authorized_keys

把总的公钥文件authorized_keys给到slave1和slave2节点

scp authorized_keys spark@slave1:/home/spark/.ssh

scp authorized_keys spark@slave2:/home/spark/.ssh

修改authorized_keys的操作权限,三个节点都需要修改

chmod 400 authorized_keys

验证免密登录是否成功

ssh master

ssh slave1

ssh slave2

ssh master

安装spark:

tar -zxf /tmp/spark-2.1.0-bin-hadoop2.6.gz -C /app/spark/

cd /app/spark/

ls

cd spark-2.1.0-bin-hadoop2.6/

配置环境变量:

vi /etc/profile

JAVA_HOME=/app/soft/jdk1.8.0_192

SCALA_HOME=/app/soft/scala-2.11.12/

SPARK_HOME=/app/spark/spark-2.1.0-bin-hadoop2.6

PATH=$SPARK_HOME/bin:$SPARK_HOME/sbin:$JAVA_HOME/bin:$PATH:$HOME/bin:$SCALA_HOME/bin

export PATH

配置spark的核心文件:

cd spark-2.1.0-bin-hadoop2.6/

cd conf/

配置slaves

mv slaves.template slaves

vi slaves 添加三个节点

master

slave1

slave2

配置spark-env.sh

cp spark-env.sh.template spark-env.sh

vi spark-env.sh

export JAVA_HOME=/app/soft/jdk1.8.0_192

export SCALA_HOME=/app/soft/scala-2.11.12

export SPARK_MASTER_IP=master

export SPARK_MASTER_PORT=7077

export SPARK_EXECUTOR_INSTANCES=1

export SPARK_WORKER_INSTANCES=1

export SPARK_WORKER_CORES=1

export SPARK_WORKER_MEMORY=1024M

export SPARK_MASTER_WEBUI=8080

export SPARK_CONF_DIR=/app/spark/spark-2.1.0-bin-hadoop2.6/conf/

把所有的节点的app的work和soft权限都改成777:在所有的节点上执行 chmod 777 -R /app/soft 和chmod 777 -R /app/spark

scp -r /app/spark/ spark@slave1:/app/

scp -r /app/soft/ spark@slave1:/app/

到此spark集群已经搭建完成:

开启:start-all.sh获取视频中文档资料及完整视频的伙伴请加QQ群:947967114

jps可以看到如下进程:

master节点:

3617 Worker

3507 Master

4156 Jps

slave1节点:

3361 Worker

3702 Jps

slave2节点:

3319 Worker

3647 Jps

开启spark-shell验证:

spark-shell --master spark://master:7077 --executor-memory 1024m --driver-memory 1024m

启动之后会显示如下内容:

18/11/29 16:13:46 WARN ObjectStore: Failed to get database default, returning NoSuchObjectException

18/11/29 16:13:47 WARN ObjectStore: Failed to get database global_temp, returning NoSuchObjectException

Spark context Web UI available at http://192.168.0.10:4040

Spark context available as 'sc' (master = spark://master:7077, app id = app-20181129161336-0000).

Spark session available as 'spark'.

Welcome to

____              __

/ __/__  ___ _____/ /__

_\ \/ _ \/ _ `/ __/  '_/

/___/ .__/\_,_/_/ /_/\_\   version 2.1.0

/_/

Using Scala version 2.11.8 (Java HotSpot(TM) 64-Bit Server VM, Java 1.8.0_192)

Type in expressions to have them evaluated.

Type :help for more information.

scala>

就可以在>后面书写spark代码了:

g NoSuchObjectException

Spark context Web UI available at http://192.168.0.10:4040

Spark context available as 'sc' (master = spark://master:7077, app id = app-20181129161336-0000).

Spark session available as 'spark'.

Welcome to

____              __

/ __/__  ___ _____/ /__

_\ \/ _ \/ _ `/ __/  '_/

/___/ .__/\_,_/_/ /_/\_\   version 2.1.0

/_/

Using Scala version 2.11.8 (Java HotSpot(TM) 64-Bit Server VM, Java 1.8.0_192)

Type in expressions to have them evaluated.

Type :help for more information.

scala> sc.textFile("/app/spark/spark-2.1.0-bin-hadoop2.6/README.md").flatMap(_.split(" ")).map(x=>(x,1)).reduceByKey(_+_).map(x=>(x._2,x._1)).sortByKey(false).map(x=>(x._2,x._1)).take(10)

res0: Array[(String, Int)] = Array(("",71), (the,24), (to,17), (Spark,16), (for,12), (and,9), (##,8), (a,8), (can,7), (run,7))

scala>获取视频中文档资料及完整视频的伙伴请加QQ群:947967114

大数据:spark集群搭建的更多相关文章

  1. 大数据-HDFS 集群搭建的配置文件

    1.HDFS简单版集群搭建相关配置文件 1.core-site.xml文件 <property> <name>fs.defaultFS</name> <val ...

  2. 大数据 --> Kafka集群搭建

    Kafka集群搭建 下面是以三台机器搭建为例,(扩展到4台以上一样,修改下配置文件即可) 1.下载kafka http://apache.fayea.com/kafka/0.9.0.1/ ,拷贝到三台 ...

  3. 大数据 --> Hadoop集群搭建

    Hadoop集群搭建 1.修改/etc/hosts文件 在每台linux机器上,sudo vim /etc/hosts 编写hosts文件.将主机名和ip地址的映射填写进去.编辑完后,结果如下: 2. ...

  4. spark集群搭建

    文中的所有操作都是在之前的文章scala的安装及使用文章基础上建立的,重复操作已经简写: 配置中使用了master01.slave01.slave02.slave03: 一.虚拟机中操作(启动网卡)s ...

  5. hadoop+spark集群搭建入门

    忽略元数据末尾 回到原数据开始处 Hadoop+spark集群搭建 说明: 本文档主要讲述hadoop+spark的集群搭建,linux环境是centos,本文档集群搭建使用两个节点作为集群环境:一个 ...

  6. Spark集群搭建(local、standalone、yarn)

    Spark集群搭建 local本地模式 下载安装包解压即可使用,测试(2.2版本)./bin/spark-submit --class org.apache.spark.examples.SparkP ...

  7. Spark集群搭建简要

    Spark集群搭建 1 Spark编译 1.1 下载源代码 git clone git://github.com/apache/spark.git -b branch-1.6 1.2 修改pom文件 ...

  8. Spark集群搭建中的问题

    参照<Spark实战高手之路>学习的,书籍电子版在51CTO网站 资料链接 Hadoop下载[链接](http://archive.apache.org/dist/hadoop/core/ ...

  9. Spark集群搭建_Standalone

    2017年3月1日, 星期三 Spark集群搭建_Standalone Driver:    node1    Worker:  node2    Worker:  node3 1.下载安装 下载地址 ...

  10. 大数据Hadoop-Spark集群部署知识总结(一)

    大数据Hadoop-Spark集群部署知识总结 一.启动/关闭 hadoop myhadoop.sh start/stop 分步启动: 第一步:在hadoop102主机上 sbin/start-dfs ...

随机推荐

  1. 在notepad++中快速插入当前时间方法

    插件是notepad++的一大优势,而要实现此功能,也必须借助TextFX插件. 1.点击"插件"-->"Plugin Manager"-->&qu ...

  2. MySQL高可用架构之Keepalived+主从架构部署

    针对目前公司的数据库架构要做统计规划和调整,所以针对不同的业务环境要选择合适的架构就比较重要,同时作为运维人员又要考虑到维护的便捷性(不能做过多架构维护),最终停留在mha+vip/主从+vip/my ...

  3. Django 的视图层

    什么是视图: 之前我们也了解了urls路由 那么路由的主要作用是决定你下一步走哪个视图函数 ,视图就是用来存放一个个的函数的python文件,主要存储的函数就是你Django主要的流程的控制 都存放在 ...

  4. Linux动态链接库.so文件的创建与使用

    1. 介绍         使用GNU的工具我们如何在Linux下创建自己的程序函数库?一个"程序函数库"简单的说就是一个文件包含了一些编译好的代码和数据,这些编译好的代码和数据可 ...

  5. django导入/导出原始数据

    1.使用dumpdata命令导出指定app对应数据库中的数据: python manage.py dumpdata your_app --indent 4  > your_app/fixture ...

  6. Apache的配置详解

    Apache的配置由httpd.conf文件配置,因此下面的配置指令都是在httpd.conf文件中修改. 主站点的配置(基本配置) (1) 基本配置: ServerRoot "/mnt/s ...

  7. 沉淀再出发:java中线程池解析

    沉淀再出发:java中线程池解析 一.前言 在多线程执行的环境之中,如果线程执行的时间短但是启动的线程又非常多,线程运转的时间基本上浪费在了创建和销毁上面,因此有没有一种方式能够让一个线程执行完自己的 ...

  8. source insight设置问题 [问题点数:20分,结帖人leecapacity]

    http://cache.baiducontent.com/c?m=9f65cb4a8c8507ed4fece763104687270e54f7327d818c027fa3cf1fd5791d1c05 ...

  9. pip 使用国内镜像源加速

    现在做开发可是真的不容易,好像不论哪一个语言当你使用到包管理工具的时候都要进行一些网络的配置,否则速度慢如龟,无论是 maven 还是 npm 又或者是我们要说的 pip. 更换国内的源好像已经是必备 ...

  10. 为什么 Category 不能增加成员变量-nonfragile

    三.既然是 non-fragile ivars,为什么 Category 不能增加成员变量?     看过一些资料,理由并不是很让人信服.我觉得并不是做不到,只是现在没有做,现在不支持.我在 Opti ...