#用centos6的源yum安装
--prefix
选项configure
以告诉它在哪里安装。例如,通过 --prefix=/home/me/mesos
。默认情况下,前缀是/usr/local
。#wget http:
//ftp
.gnu.org
/gnu/gcc/gcc-4
.8.0
/gcc-4
.8.0.
tar
.bz2
#tar
-jxvf gcc-4.8.0.
tar
.bz2
#cd
gcc-4.8.0
#.
/contrib/download_prerequisites
#cd
..
#mkdir
gcc-build-4.8.0
#cd
gcc-build-4.8.0
#..
/gcc-4
.8.0
/configure
--
enable
-checking=release --
enable
-languages=c,c++ --disable-multilib
# j 后面的是核心数,编译速度会比较快
#make
-j4
#sudo
make
install
#ls
/usr/local/bin
|
grep
gcc
#update-alternatives --
install
/usr/bin/gcc
gcc
/usr/local/bin/i686-pc-linux-gnu-gcc
40
#gcc -
v
cp
/usr/local/lib64/libstdc
++.so.6.0.18
/usr/lib64/
rm
-f libstdc++.so.6
ln
-s libstdc++.so.6.0.18 libstdc++.so.6
在客户端模式下,直接在客户机上启动Spark Mesos框架并等待驱动程序输出。
驱动程序需要一些配置spark-env.sh
才能与Mesos正确交互:
spark-env.sh
设置一些环境变量:也设置spark.executor.uri
为<URL of spark-2.2.0.tar.gz>
。export MESOS_NATIVE_JAVA_LIBRARY=<path to libmesos.so>
。这个路径通常 <prefix>/lib/libmesos.so
是前缀/usr/local
默认的地方。请参阅上面的Mesos安装说明。在Mac OS X上,库被调用libmesos.dylib
而不是 libmesos.so
。export SPARK_EXECUTOR_URI=<URL of spark-2.2.0.tar.gz uploaded above>
。Mesos上的Spark还支持集群模式,驱动程序在集群中启动,客户端可以从Mesos Web UI中找到驱动程序的结果。
要使用集群模式,您必须MesosClusterDispatcher
通过sbin/start-mesos-dispatcher.sh
脚本启动集群,传入Mesos主URL(例如:mesos:// host:5050)。这将启动MesosClusterDispatcher
在主机上运行的守护进程。
如果你喜欢MesosClusterDispatcher
与马拉松运行,你需要运行MesosClusterDispatcher
在前台(即:)bin/spark-class org.apache.spark.deploy.mesos.MesosClusterDispatcher
。请注意,MesosClusterDispatcher
尚不支持HA的多个实例。
该MesosClusterDispatcher
还支持写入恢复状态到动物园管理员。这将允许MesosClusterDispatcher
能够在重新启动时恢复所有提交和正在运行的容器。为了启用这种恢复模式,您可以通过配置spark.deploy.recoveryMode
和相关的spark.deploy.zookeeper。*配置来设置spark-env中的SPARK_DAEMON_JAVA_OPTS。有关这些配置的更多信息,请参阅配置文档。
从客户端,您可以通过运行spark-submit
并指定主URL MesosClusterDispatcher
(例如:mesos:// dispatcher:7077)的URL来向Mesos集群提交作业。您可以在Spark集群Web UI上查看驱动程序状态。
例如:
./bin/spark-submit --class org.apache.spark.examples.SparkPi --master mesos://207.184.161.138:7077 --deploy-mode cluster --supervise --executor-memory 20G --total-executor-cores 100 http://path/to/examples.jar 1000
请注意,传递给spark-submit的jar或python文件应该是Mesos从站可访问的URI,因为Spark驱动程序不会自动上传本地jar。
Spark可以在两种模式下运行Mesos:“粗粒度”(默认)和“细粒度”(不推荐)。
在“粗粒度”模式下,每个Spark执行器都作为一个Mesos任务运行。Spark执行程序根据以下配置变量进行大小调整:
spark.executor.memory
spark.executor.cores
spark.cores.max
/spark.executor.cores
有关详细信息和默认值,请参阅Spark Configuration页面。
联系客服