二、安装Spark集群
来源:互联网 发布:php cli模式 编辑:程序博客网 时间:2024/05/17 04:53
【一个很疑惑的问题】 为什么我们一直在反复做一个操作:就是scp拷贝过来拷贝过去?【答案】这是为了将文件或目录的权限修改成hadoop所属组。
一. 下载Spark安装包并传给mster机器,使权限是hadoop
①在slave1机器上下载Spark(进入官网下载更快)
②解压安装包
tar -zxvf spark-1.6.3-bin-hadoop2.6.tgz -C /data
③把slave1机器上的解压后的spark拷贝到master机器上
先进入/data目录下,打开终端,不用修改用户再:scp -r spark-1.6.3-bin-hadoop2.6/ hadoop@master:/data/
④删除slave1机器上的spark-1.6.3-bin-hadoop2.6
sudo rm -r /data/spark-1.6.3-bin-hadoop2.6
到现在为止, slave1机器上的spark-1.6.3-bin-hadoop2.6安装包已经被删除; 只在master机器上有spark-1.6.3-bin-hadoop2.6安装包,且权限是hadoop。可以进行下面的Spark配置了!
==========
二 .配置 spark(涉及到的配置文件有以下几个:)
在master机器上,新建下面文件:
先su hadoopsudo mkdir /data/spark_datasudo chmod -R 777 /data/spark_datasudo mkdir /data/spark_data/spark_workssudo chmod -R 777 /data/spark_data/spark_workssudo mkdir /data/spark_data/historysudo chmod -R 777 /data/spark_data/historysudo mkdir /data/spark_data/history/event-logsudo chmod -R 777 /data/spark_data/history/event-logsudo mkdir /data/spark_data/history/spark-eventssudo chmod -R 777 /data/spark_data/history/spark-events再把在master创建好的上面的文件拷贝给slave机器:在 master 机器上:先切换到hadoop用户su hadoopscp -r /data/spark_data hadoop@slave1:/datascp -r /data/spark_data hadoop@slave2:/data此时,在slave机器上就产生了/data/spark_data目录,查看权限是hadoop删除上面再master机器上创建的目录(在master机器上执行) sudo rm -r /data/spark_data从slave1机器上复制一份给master(在slave1机器上执行) scp -r /data/spark_data hadoop@master:/data
1. ${SPARK_HOME}/conf/spark-env.sh2. ${SPARK_HOME}/conf/slaves3. ${SPARK_HOME}/conf/spark-defaults.conf 这三个文件都是由原始的 template 文件复制过来的,比如:先进入conf目录下,打开终端,再:su hadoop cp spark-env.sh.template spark-env.sh cp slaves.template slaves cp spark-env.sh.template spark-env.shsudo chmod -R 777 ../*
配置文件 1:sudo gedit spark-env.sh
【重点注意】SPARK_MASTER_IP=192.168.1.10一定要修改成自己的master地址注意:需要在本地创建/data/spark_data/spark_works 目录JAVA_HOME=/data/jdk1.8.0_111SCALA_HOME=/data/scala-2.11.8SPARK_MASTER_IP=192.168.1.10HADOOP_CONF_DIR=/data/hadoop-2.6.5/etc/hadoop# shuffled以及 RDD的数据存放目录SPARK_LOCAL_DIRS=/data/spark_data# worker端进程的工作目录SPARK_WORKER_DIR=/data/spark_data/spark_works
配置文件 2:sudo gedit slaves
去掉最后一行的localhost后,在最后一行加上下面内容masterslave1slave2
配置文件 3:sudo gedit spark-defaults.conf
注意:需要在本地创建/data/spark_data/history/event-log、/data/spark_data/history/spark-eventsspark.master spark://master:7077spark.serializer org.apache.spark.serializer.KryoSerializerspark.eventLog.enabled truespark.eventLog.dir file:///data/spark_data/history/event-logspark.history.fs.logDirectory file:///data/spark_data/history/spark-eventsspark.eventLog.compress true
===
三 . 复制到其他节点
在 master 上: 1. scp -r /data/spark* hadoop@slave1:/data 2. scp -r /data/spark* hadoop@slave2:/data 发现在 slave1 和slave2 上的/data目录下有spark-1.6.3-bin-hadoop2.6的目录,查看权限是hadoop组。 spark*实际上也把创建的目录/data/spark_data全部拷贝过去了。
四 . 设置环境变量
在master机器上: su hadoop sudo gedit ~/.bashrc 将以下内容加入到~/.bashrc 文件中,export SPARK_HOME=/data/spark-1.6.3-bin-hadoop2.6export PATH=$SPARK_HOME/bin:$SPARK_HOME/sbin:$PATH然后执行以下命令: source ~/.bashrc再把master机器上的~/.bashrc文件拷贝到slave机器上:(在hadoop用户下)su hadoop #切换到hadoop用户scp -r ~/.bashrc hadoop@slave1:~/scp -r ~/.bashrc hadoop@slave2:~/
=======================================
=======================================
5. 启动验证
在master机器上
1)启动 master start-master.sh下图说明在 master 节点上成功启动 Master 进程:
在master机器上
2)启动 slave start-slaves.sh jps
在slave机器上
执行jps
上面的图片说明在每台机器上都成功启动了 Worker 进程。
3)访问 WebUI
在 master、slave1 和 slave2 这三台中任意一台机器上的浏览器中输入:http://master:8080/,看到如下图片,就说明我们的 spark 集群安装成功了。
===
趟过的坑
配置 core-site.xml 和 hdfs-site.xml 文件时所指定的本地目录一定要自己创建,否则在执行 玩格式化 hdfs 后,启动 hdfs 会丢失进程。
阅读全文
0 0
- 二、安装Spark集群
- Hadoop集群安装spark集群
- Spark集群安装
- spark集群安装
- Spark集群安装
- spark HA集群安装
- Spark standalone集群安装
- Spark集群安装
- 安装spark集群
- Spark集群安装
- Spark集群安装部署
- Spark集群安装笔记
- Spark集群安装部署
- spark集群安装
- Spark集群安装指导
- spark集群安装
- spark集群安装
- Spark集群安装
- 九度oj-1431:sort.hash应用
- 老师给的jdbc连接的例子,封装之后
- Git(四)如何将更改的项目同步到github
- jQuery调试学习总结
- C++ Primer Notes(6)
- 二、安装Spark集群
- 56.合并间隔
- 算法——字符串匹配之KMP——看不懂算我输
- coderforces-#428三道水题
- 生成全排列
- 索引法和指针法访问数组
- 重新开博
- 网易内推笔试编程题2
- 关于Tomcat性能方面的优化