|
本帖最后由 feel 于 2015-10-13 00:46 编辑
在做数据分析的时候,我们开发的程序经常需要调试,而我们的spark 集群环境在公司内网服务器,及生产环境。调试及其不方便。为此写下这篇文章方便开发者。我自己的机器是mac ,当然你可以可以用linux 系统,windows 还是算了。
基本的环境:java .scala. idea
java ,scala 环境的配置相信每个开发者都会。不会的自行google
打开本机远程登入配置
spark 环境搭建
1. 下载 spark
- macbook:~ feel$ wget -c http://apache.dataguru.cn/spark/spark-1.5.1/spark-1.5.1-bin-hadoop2.6.tgz
复制代码 2. 解压
- macbook:~ feel$ tar -zxf spark-1.5.1-bin-hadoop2.6.tgz
复制代码 3.配置spark全局环境变量
- export SPARK_HOME=/Users/feel/opt/spark
- export PATH=.:$SPARK_HOME/bin/:$PATH
复制代码 4.配置spark 单机运行环境
配置spark-env.sh
- macbook:conf feel$ cat spark-env.sh
- #!/usr/bin/env bash
- export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.7.0_79.jdk/Contents/Home
- export SCALA_HOME=/Users/feel/opt/scala
- export SPARK_HOME=/Users/feel/opt/spark
- export SPARK_MASTER_IP=localhost
- export SPARK_MASTER_PORT=7077
- export SPARK_WORKER_CORES=2
- export SPARK_WORKER_MEMORY=2g
- export SPARK_WORKER_INSTANCES=1
- export SPARK_LOG_DIR=${SPARK_HOME}/log
- export SPARK_WORKER_DIR=${SPARK_HOME}/log/run/work
- export SPARK_LOCAL_DIRS=${SPARK_HOME}/localdirs
- export SPARK_CONF_DIR=${SPARK_HOME}/conf
- export SPARK_PID_DIR=${SPARK_HOME}/log
复制代码 5.配置本机无密钥登入
6.最后启动
- macbook:spark feel$ sbin/start-all.sh
- starting org.apache.spark.deploy.master.Master, logging to /Users/feel/opt/spark/log/spark-feel-org.apache.spark.deploy.master.Master-1-macbook.out
- localhost: starting org.apache.spark.deploy.worker.Worker, logging to /Users/feel/opt/spark/log/spark-feel-org.apache.spark.deploy.worker.Worker-1-macbook.out
复制代码 idea 开发环境
建立scala 工程项目
log4j. 这里无语了。不能贴代码,报不良信息
spark 测试代码
object sparktest {
def main(args: Array[String]) {
val sparkConf = new SparkConf(). //
setAppName("WeaterheaterStreaming"). //
setMaster("local"). //
set("spark.scheduler.mode", "FAIR"). //
set("spark.default.parallelism","16") //
val sc = new SparkContext(sparkConf) // new context
val rdd = sc.parallelize(List(1,2,3,4,5))
rdd.foreach(println _)
sc.stop()
}
可以查看运行结果;
至此我们的开发和调试环境就基本完工了。
是不是想也动手也试试。非常抱歉的是,写过很多。都提交不了。最后把能删的都删了 。(非法字符,文字限制等等) 。。。。。。。
|
|