Я пытаюсь настроить Apache Ignite на DC/OS (1.8.7) марафон, используя официальные документы в http://apacheignite.gridgain.org/docs/mesos-deployment, но не хватает некоторых хаков Он не смог заставить его работать после документов. Одна из основных причин заключается в том, что cmdApache Ignite on на марафоне DC/OS (или любом другом приложении java)
"cmd": "java -jar ignite-mesos-1.8.0.jar"
через ошибку "sh: java: command not found". Это означало бы, что java не находится на пути, но на хостах марафона я проверял, что Java фактически доступен на пути для моего обычного пользователя.
Я подозреваю, что каким-то образом java нужно добавить к пути к контейнеру mesos, который пытается запустить cmd, но мне не удалось найти документацию о том, как установить путь или переменные среды по умолчанию (ignite- mesos создает задачи, требующие установки JAVA_HOME, которые также отсутствуют в задачах) в создаваемых контейнерах. Для справки мой файл marathon.json ниже ...
{
"id": "/ignition",
"cmd": "java -jar ignite-mesos-1.8.0.jar",
"args": null,
"user": null,
"env": {
"IGNITE_MEMORY_PER_NODE": "2048",
"IGNITE_NODE_COUNT": "3",
"IGNITE_VERSION": "1.8.0",
"MESOS_MASTER_URL": "zk://master.mesos:2181/mesos",
"IGNITE_RUN_CPU_PER_NODE": "0.1"
},
"instances": 0,
"cpus": 0.25,
"mem": 2048,
"disk": 0,
"gpus": 0,
"executor": null,
"constraints": null,
"fetch": [
{
"uri": "http://SERVER_HERE/ignite-mesos-1.8.0.jar"
}
],
"storeUrls": null,
"backoffSeconds": 1,
"backoffFactor": 1.15,
"maxLaunchDelaySeconds": 3600,
"container": null,
"healthChecks": null,
"readinessChecks": null,
"dependencies": null,
"upgradeStrategy": {
"minimumHealthCapacity": 1,
"maximumOverCapacity": 1
},
"labels": {
"HAPROXY_GROUP": "external"
},
"acceptedResourceRoles": null,
"ipAddress": null,
"residency": null,
"secrets": null,
"taskKillGracePeriodSeconds": null,
"portDefinitions": [
{
"protocol": "tcp",
"port": 10108
}
],
"requirePorts": false
}
Попробуйте (или оба) добавить 'PATH' в' env' или использовать полный путь к исполняемому файлу 'java'. –
Также переменная '$ JAVA_HOME \ bin' должна быть зачислена в' PATH' –
Я проверил, и java находится на пути, а также установлен JAVA_HOME (в корневой учетной записи, которая, как я полагаю, является марафоном) –