修改目录与目录组:

sudo chown -R hadoop:hadoop spark-1.6.1-bin-hadoop2.6

sudo chown -R hadoop:hadoop jdk1.8.0_101

sudo chown -R hadoop:hadoop scala2.11.6

1./etc目录下

vi hosts

192.168.xxx.xxx data6(master节点)

192.168.xxx.xxx data2(worker节点)

192.168.xxx.xxx data3(worker节点)

2.spark/conf/目录下

vi slaves

data6

data2

data3

vi spark-env

export JAVA_HOME=/app/jdk1.7

export SPARK_MASTER_IP=data6

export SPARK_WORKER_INSTANCES=1

export SPARK_WORKER_MEMORY=30g

export SPARK_WORKER_CORES=6

export SPARK_LOG_DIR=/data/tmp

export SPARK_PID_DIR=/data/tmp

export SPARK_DAEMON_JAVA_OPTS="-Djava.io.tmpdir=/home/tmp"

export PYSPARK_PYTHON=/opt/anaconda3/bin/python3

export PYSPARK_DRIVER_PYTHON=/opt/anaconda3/bin/ipython3

export PYSPARK_DRIVER_PYTHON_OPTS="notebook --ip 0.0.0.0 --port 9999"

export PATH=$PATH:/usr/local/bin

export SPARK_CLASSPATH=/app/spark-1.6.1/lib/spark-examples-1.6.1-hadoop2.4.0.jar:/app/spark-1.6.1/lib/spark-assembly-1.6.1-hadoop2.4.0.jar:/app/spark-1.6.1/lib/spark-1.6.1-yarn-shuffle.jar:/app/spark-1.6.1/lib/nlp-lang-1.5.jar:/app/spark-1.6.1/lib/mysql-connector-java-5.1.26-bin.jar:/app/spark-1.6.1/lib/datanucleus-rdbms-3.2.9.jar:/app/spark-1.6.1/lib/datanucleus-core-3.2.10.jar:/app/spark-1.6.1/lib/datanucleus-api-jdo-3.2.6.jar:/app/spark-1.6.1/lib/ansj_seg-3.7.3-all-in-one.jar

vi hive-site.xml

<configuration>

<property>

<name>hive.metastore.uris</name>

<value>thirft://data6:9083</value>

<description>Thrift URI for the remote metastore. Used by metastore client to connect to remote metastore.</description>

</property>

<property>

<name>hive.server2.thrift.min.worker.threads</name>

<value>5</value>

<description>maximum number of Thrift worker threads</description>

</property>

<property>

<name>hive.server2.thrift.port</name>

<value>500</value>

<description>Port number of HiveSercer2 Thrift interfaace.</description>

</property>

<property>

<name>hive.server2.thrift.min.worker.threads</name>

<value>11000</value>

<description>Thrift URI for the remote metastore. Used by metastore client to connect to remote metastore.</description>

</property>

<property>

<name>hive.server2.thrift.bind.host</name>

<value>data6</value>

<description>bind host on which to run the HiveSercer2 Thrift interface</description>

</property>

<property>

<name>mapred.reduce.tasks</name>

<value>40</value>

</property>

vi log4j.properties

#Setting to quiet third party logs that are too verbose

log4j.logger.org.spark-project.jetty=WARN

log4j.logger.org.spark-project.jetty.util.component.AbstractLifeCycle=ERROR

log4j.logger.org.apache.spark.repl.SparkIMain$exprTyper=INFO

log4j.logger.org.apache.spark.repl.SparkILoop$SparkLoopInterpreter=INFO

log4j.logger.parquet=ERROR

#SPARK-9183:Setting to avoid annoying messages when looking up nonexitent UDFs in SparkSQL with Hive support

log4j.logger.org.apachce.hadoop.hive.metastore.RetryingHMSHandler=FATAL

log4j.logger.org.apachce.hadoop.hive.ql.exec.FunctionRegistry=ERROR

Spark集群搭建——SSH免密码验证登陆

机器准备

笔者有三台机器,左侧栏为ip,右侧为hostname,三台机器都有一个名为spark的用户。通过ping验证三台是可以通信的。

192.168.248.150 spark-master 192.168.248.153 ubuntu-worker 192.168.248.155 spark-worker1

根据机器信息加入到三台机器的/etc/hosts中。

配置

我们需要设置spark-master 能够免密码验证登陆ubuntu-worker、spark-worker1两台机器。

  1. 安装ssh

    sudo apt-get install openssh-server

  2. 生成秘钥

    执行命令ssh-keygen -t rsa,然后一直按回车键即可。

  3. 复制spark-master结点的id_rsa.pub文件到另外两个结点:

    scp id_rsa.pub spark@ubuntu-worker:~/.ssh/

  4. 到另外两个结点,将公钥加到用于认证的公钥文件中:

    cat id_rsa.pub >> authorized_keys

  5. 修改两个worker的authorized_keys权限为600或者644、将.ssh文件权限改为700

    chmod 700 .ssh

    chmod 600  authorized_keys

  6. 验证:

    登陆spark-master,在终端输入ssh ubuntu-worker,登陆成功则说明配置成功。

HDFS下载不成功问题

用windows上的IE来访问namenode节点的监控web页下载不了,需要修改了windows机器的C:\WINDOWS\system32\drivers\etc\hosts文件,把hadoop集群中的几台机的主机名和IP地址加进去(一般在目录下/etc/hosts),让IE能解析就OK了。

Namenode没有启动问题,进行格式化

hadoop namenode -format

再启动HDFS

spark集群配置细则总结的更多相关文章

  1. spark集群配置以及java操作spark小demo

    spark 安装 配置 使用java来操作spark spark 安装 tar -zxvf spark-2.4.0-bin-hadoop2.7.tgz rm spark-2.4.0-bin-hadoo ...

  2. HA分布式集群配置三 spark集群配置

    (一)HA下配置spark 1,spark版本型号:spark-2.1.0-bin-hadoop2.7 2,解压,修改配置环境变量 tar -zxvf spark-2.1.0-bin-hadoop2. ...

  3. 大数据技术之_19_Spark学习_01_Spark 基础解析 + Spark 概述 + Spark 集群安装 + 执行 Spark 程序

    第1章 Spark 概述1.1 什么是 Spark1.2 Spark 特点1.3 Spark 的用户和用途第2章 Spark 集群安装2.1 集群角色2.2 机器准备2.3 下载 Spark 安装包2 ...

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

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

  5. 实时计算框架:Spark集群搭建与入门案例

    一.Spark概述 1.Spark简介 Spark是专为大规模数据处理而设计的,基于内存快速通用,可扩展的集群计算引擎,实现了高效的DAG执行引擎,可以通过基于内存来高效处理数据流,运算速度相比于Ma ...

  6. Spark集群 + Akka + Kafka + Scala 开发(1) : 配置开发环境

    目标 配置一个spark standalone集群 + akka + kafka + scala的开发环境. 创建一个基于spark的scala工程,并在spark standalone的集群环境中运 ...

  7. spark集群安装配置

    spark集群安装配置 一. Spark简介 Spark是一个通用的并行计算框架,由UCBerkeley的AMP实验室开发.Spark基于map reduce 算法模式实现的分布式计算,拥有Hadoo ...

  8. 安装配置Spark集群

    首先准备3台电脑或虚拟机,分别是Master,Worker1,Worker2,安装操作系统(本文中使用CentOS7). 1.配置集群,以下步骤在Master机器上执行 1.1.关闭防火墙:syste ...

  9. Spark集群高可用HA配置

    本文中的Spark集群包含三个节点,分别是Master,Worker1,Worker2. 1.在Master机器上安装Zookeeper,本文安装在/usr/etc目录下 2.在Master机器配置Z ...

随机推荐

  1. 基于TMF SID的高可扩展性数据模型

    基于TMF SID的高可扩展性数据模型 前言 此文根据TMF SID规范撰写,欢迎大家提出建议和意见. TMF文档版权信息 Copyright © TeleManagement Forum 2013. ...

  2. 为什么要使用func.call(this)

    1.为什么要使用func.call(this) 在正常模式下,js 函数里那些你没有声明就使用的变量,其实是访问的全局对象的属性.但是在严格模式下,不允许这种语法,所有变量都必须要显示声明,所以如果你 ...

  3. Ocelot(四)- 认证与授权

    Ocelot(四)- 认证与授权 作者:markjiang7m2 原文地址:https://www.cnblogs.com/markjiang7m2/p/10932805.html 源码地址:http ...

  4. CF868F Yet Another Minimization Problem(决策单调性)

    题目描述:给定一个序列,要把它分成k个子序列.每个子序列的费用是其中相同元素的对数.求所有子序列的费用之和的最小值. 输入格式:第一行输入n(序列长度)和k(需分子序列段数).下一行有n个数,序列的每 ...

  5. 大话Spark(2)-Spark on Yarn运行模式

    Spark On Yarn 有两种运行模式: Yarn - Cluster Yarn - Client 他们的主要区别是: Cluster: Spark的Driver在App Master主进程内运行 ...

  6. 设置Input标签Date默认值为当前时间

    需求:想设置Imput标签Date默认值为当前时间,通过JavaScript实现. <html> ...... <body> <input type="date ...

  7. EcmaScript学习

    1.eval: ts: declare function eval(x: string): any; js: /** @param {*} x @return {Object} */ eval = f ...

  8. QT 简单的计算器例子

    开发工具:vs2010.qt5.1 1使用vs新建工程,Base Class 选择QDialog

  9. C++之struct

    C++的struct对C做和很多补充,里面可以放函数(构造函数和虚函数),也可以同struct和class的继承,在C++中也完全可以替代class.他们之间的主要区别: 1 calss默认是私有继承 ...

  10. UVALive 7511 L - Multiplication Table 数学模拟题,暴力

    给定一副表,问其是否合法. 思路:当全部是?的时候,是合法的. 如果不是,那么,就找到一个数字,把它拆成若干个a*b的形式,去判断其它点是否合法即可. 拆分数字的时候,只需要枚举到sqrt(n),因为 ...