docker on spark

  1. 从docker 仓库 pull 镜像
    docker pull sequenceiq/spark:1.4.0
    这里写图片描述
    这里写图片描述
  2. 构建 docker 镜像
    docker build –rm -t sequenceiq/spark:1.4.0 .
    -t 选项是你要构建的sequenceiq/spark image的tag,就比如ubuntu:13.10同样 –rm 选项是告诉Docker在构建完成后删除临时的Container,Dockerfile的每一行指令都会建立一个临时的Container,通常你是不须要这些临时生成的Container的node

  3. 运行镜像docker

    • if using boot2docker make sure your VM has more than 2GB memory
    • in your /etc/hosts file add $(boot2docker ip) as host ‘sandbox’ to make it easier to access your sandbox UI
    • open yarn UI ports when running container

docker run -it -p 8088:8088 -p 8042:8042 -h sandbox sequenceiq/spark:1.4.0 bash
or
docker run -d -h sandbox sequenceiq/spark:1.4.0 -d
这里写图片描述apache

  • 若是要进行交互式操做(例如Shell脚本),那咱们必须使用-i -t参数同容器进行数据交互。可是当经过管道同容器进行交互时,就不须要使用-t参数
  • -h来设定hostname
  • 若是使用-p或者-P,那么容器会开放部分端口到主机,只要对方能够链接到主机,就能够链接到容器内部。当使用-P时,Docker会在主机中随机从49153 和65535之间查找一个未被占用的端口绑定到容器。你可使用docker port来查找这个随机绑定端口。ubuntu

  • 若是在docker run后面追加-d=true或者-d,那么容器将会运行在后台模式。此时全部I/O数据只能经过网络资源或者共享卷组来进行交互。由于容器再也不监听你执行docker run的这个终端命令行窗口。但你能够经过执行docker attach来从新附着到该容器的回话中。须要注意的是,容器运行在后台模式下,是不能使用–rm选项的。ruby

  • -p 8088:8088 这个端口是resourcemanager 或者 集群 ,-p 8042:8042 这个端口是 nodemanager端口 bash

    1. 版本
      Hadoop 2.6.0 and Apache Spark v1.4.0 on Centos markdown

    2. 测试
      There are two deploy modes that can be used to launch Spark applications on YARN.网络

      • YARN-client mode
In yarn-cluster mode, the Spark driver runs inside an application master process which is managed by YARN on the cluster, and the client can go away after initiating the application.

Estimating Pi (yarn-cluster mode):

# execute the the following command which should write the "Pi is roughly 3.1418" into the logs
# note you must specify --files argument in cluster mode to enable metrics
spark-submit \
--class org.apache.spark.examples.SparkPi \
--files $SPARK_HOME/conf/metrics.properties \
--master yarn-cluster \
--driver-memory 1g \
--executor-memory 1g \
--executor-cores 1 \
$SPARK_HOME/lib/spark-examples-1.4.0-hadoop2.6.0.jar
  • YARN-cluster mode
# execute the the following command which should print the "Pi is roughly 3.1418" to the screen
spark-submit \
--class org.apache.spark.examples.SparkPi \ --master yarn-client \ --driver-memory 1g \ --executor-memory 1g \ --executor-cores 1 \ $SPARK_HOME/lib/spark-examples-1.4.0-hadoop2.6.0.jar

版权声明:本文为博主原创文章,未经博主容许不得转载。app

相关文章
相关标签/搜索