一、概念介绍:
1、Sparkmagic:它是一个在Jupyter Notebook中的通过Livy服务器 Spark REST与远程Spark群集交互工作工具。Sparkmagic项目包括一组以多种语言交互运行Spark代码的框架和一些内核,可以使用这些内核将Jupyter Notebook中的代码转换在Spark环境运行。
2、Livy:它是一个基于Spark的开源REST服务,它能够通过REST的方式将代码片段或是序列化的二进制代码提交到Spark集群中去执行。它提供了以下这些基本功能:提交Scala、python或是R代码片段到远端的Spark集群上执行,提交java、Scala、Python所编写的Spark作业到远端的Spark集群上执行和提交批处理应用在集群中运行
二、基本框架
为下图所示:
vy-server.html
添加如下配置:
livy.spark.master = yarnlivy.spark.deploy-mode = clusterlivy.impersonation.enabled = falselivy.server.csrf-protection.enabled = falselivy.server.launch.kerberos.keytab=/opt/workspace/keytabs/user.keytablivy.server.launch.kerberos.principal=minerlivy.superusers=miner
修改livy-env.sh, 配置SPARK_HOME、HADOOP_CONF_DIR等环境变量
export JAVA_HOME=/opt/Bigdata/client/JDK/jdkexport HADOOP_CONF_DIR=/opt/Bigdata/client/HDFS/hadoop/etc/hadoopexport SPARK_HOME=/opt/Bigdata/client/Spark2x/sparkexport SPARK_CONF_DIR=/opt/Bigdata/client/Spark2x/spark/confexport LIVY_LOG_DIR=/opt/workspacewww.easck.com/apache-livy-0.7.0-incubating-bin/logsexport LIVY_PID_DIR=/opt/workspace/apache-livy-0.7.0-incubating-bin/pidsexport LIVY_SERVER_JAVA_OPTS="-Djava.security.krb5.conf=/opt/Bigdata/client/KrbC
cp -r ${SITE_PACKAGES}/sparkmagic/kernels/pysparkkernel ${KERNELS_FOLDER}七、在Jupyter Notebook中运行spark代码验证:
八、访问Livy查看当前session日志:












