2016-06-08 9 views
1

Существует много чего я не понимаю, как Spark, Spark Jobserver и DC/OS от Mesosphere. Но мне очень нравится проект Jobserver, а также очень нравится нашему кластеру DC/OS, и мне бы очень хотелось, чтобы они работали вместе.Как запустить Spark Jobserver на DC/OS в Mesosphere

Выбрасывание контейнера Докера в файл марафона, like this example, не работает. Я подумал, что, возможно, это все из-за того, что я не знал, к чему обратиться SPARK_MASTER url (чего я до сих пор не знаю, какая-либо помощь там была бы очень признательна), но потом я попытался удалить это из файла марафона, который должен все еще запускаться проект в локальном режиме, и это также не работает. Это заставляет меня понять, что, не зная, как подключить этот сервер заданий к моему диспетчеру DCOS, я также просто не знаю, почему этот контейнер Docker потерпит неудачу в кластере, но не на моей локальной машине, даже если он не передан аргументы.

Мои журналы не показывают много, и контейнер выходит Docker со статусом 137 после следующих в стандартный вывод:

LOG_DIR empty; logging will go to /tmp/job-server 

, который, когда я бегу вещи на месте, последний журнал, прежде чем она продолжает запустите log4j в мой stdout и скажите мне, что сервер jobs запущен. Я вижу следующее STDERR:

app/server_start.sh: line 54: 15 Killed     $SPARK_HOME/bin/spark-submit --class $MAIN --driver-memory $JOBSERVER_MEMORY --conf "spark.executor.extraJavaOptions=$LOGGING_OPTS" --driver-java-options "$GC_OPTS $JAVA_OPTS $LOGGING_OPTS $CONFIG_OVERRIDES" [email protected] $appdir/spark-job-server.jar $conffile 

Который только кажется, предполагает, что server_start.sh работает от свечи jobserver грузчика, и этот сценарий почему-то умирает?

Я разделся мой файл марафонскую весь путь вниз к этому, который до сих пор дает мне те же ошибки:

{ 
    "id": "/jobserver", 
    "cpus": 0.5, 
    "mem": 100, 
    "ports": [0], 
    "instances": 1, 
    "container": { 
    "type": "DOCKER", 
    "docker": { 
     "image": "velvia/spark-jobserver:0.6.2.mesos-0.28.1.spark-1.6.1" 
    } 
    } 
} 

Любая помощь будет принята с благодарностью.

ответ

3

Следующие работали для меня когда-нибудь, когда я это пробовал.

{ 
    "id": "/spark.jobserver", 
    "cmd": null, 
    "cpus": 2, 
    "mem": 2048, 
    "disk": 50, 
    "instances": 1, 
    "container": { 
    "type": "DOCKER", 
    "volumes": [], 
    "docker": { 
     "image": "velvia/spark-jobserver:0.6.2.mesos-0.28.1.spark-1.6.1", 
     "network": "BRIDGE", 
     "portMappings": [ 
     { 
      "containerPort": 8090, 
      "hostPort": 0, 
      "servicePort": 10001, 
      "protocol": "tcp", 
      "labels": {} 
     } 
     ], 
     "privileged": false, 
     "parameters": [], 
     "forcePullImage": false 
    } 
    }, 
    "env": { 
    "SPARK_MASTER": "mesos://zk://10.29.83.3:2181,10.29.83.4:2181/mesos" 
    }, 
    "portDefinitions": [ 
    { 
     "port": 10001, 
     "protocol": "tcp", 
     "labels": {} 
    } 
    ] 
} 
+0

Это работало для вас? – noorul

+0

Да! Спасибо! –

+0

Итак, то, что сработало для меня здесь, было на самом деле просто запущено с большим количеством процессоров/памяти, чем было предложено в документации dockser.md в документации Jobserver. Но, оказывается, SPARK_MASTER на самом деле не работает для меня вообще. И я все еще не могу найти тот, который работает. Я должен быть в состоянии подключиться к диспетчеру Spark Mesos, который запускается приложением Spark через марафон, нет? Кажется, это не работает. –

 Смежные вопросы

  • Нет связанных вопросов^_^