ssh-keygen之后一路回车
cd .ssh 进入隐藏文件夹
touch authorized_keys 创建文件
cat id_rsa.pub > authorized_keys 将ssh文件夹中的id_rsa.pub导入到新建的文件中
chmod 600 authorized_keys 设置权限
2.接http://blog.youkuaiyun.com/u014273195/article/details/70834562中的scala项目,编写一个WordCount程序
几点注意:
1. 如果本地运行,即在IDEA中打印结果,需要在RUN --Edit configuration 中,设置vm option "-Dspark.master=local"
2. 本地运行打印的日志较多,可使用以下方法,添加“Logger.getLogger("org").setLevel(Level.ERROR)”
import org.apache.log4j.{Level, Logger}
object Example { Logger.getLogger("org").setLevel(Level.ERROR) def main(args: Array[String]) { ...... } }
3.配置jar包
点击File--Project structure--artifacts--JAR--from mudules
选择项目,类,并选择JAR包类型,选择第二个
点击OK就可以了
4.build jar包
选择build artifacts后选择build
5.启动集群
启动master ./sbin/start-master.sh
启动worker ./bin/spark-class
提交作业 ./bin/spark-submit
1) 启动master
cd spark-1.6.2-bin-hadoop2.6/ 进入文件夹
./sbin/start-master.sh 启动master
jps 查看master是否启动
2) 启动worker
spark-class命令 + worker类 + url地址(启动http://localhost:8080/端口后的地址)
./bin/spark-class org.apache.spark.deploy.worker.Worker spark://elephy-VirtualBox:7077
新建一个终端输入jps可以看到启动了一个master和一个worker
3) 提交作业
spark-submit命令 + --master + url地址 + class + jar包地址
我们的scala类名是Count,刚才build好的jar包在IdeaProjects/scalaproject1/out/artifacts/scalaproject1_jar/scalaproject1.jar,我们把这个jar包复制到主文件夹中,因此jar包地址为/home/elephy/scalaproject1.jar,于是输入以下命令
cd spark-1.6.2-bin-hadoop2.6/
./bin/spark-submit --master spark://elephy-VirtualBox:7077 --class Count /home/elephy/scalaproject1.jar
运行完成后可以在http://localhost:8080/看到提交作业的运行情况,并且在主文件夹中出现result文件夹