Установка группы марафон в виде пакета DCOS

Мы пытаемся создать свой собственный пакет DCOS для установки нашего приложения, мы создали свою вселенную и разместили ее в S3, мы создали все необходимые файлы для пакета DCOS (config.json, package.json, marathon.json.mustache) и индекс создан правильно, называется Atest.

Наш marathon.json — это дескриптор марафона для группы приложений:

{
    "id" : "/{{Atest.id}}",
    "groups":
    [
        {
            "id": "{{Atest.apps-id}}",
            "apps" :
            [
                {
                    "id" : "{{Atest.app-master-id}}",
                  .......
                },
                {
                    "id" : "{{Atest.app-slave-id}}",
                  .......
                },
            ]
         }
     ]
}

Когда мы развертываем приложение через marathon api, оно работает нормально, но когда мы пытаемся запустить пакет DCOS для установки Atest, оно терпит неудачу, если я заменяю json только для главного приложения, оно устанавливается без проблем.

Итак, пользовательский пакет установки пакета DCOS может устанавливать только марафонские приложения? Или есть способ установить группу марафона в виде пакета DCOS?


person acalderon    schedule 22.06.2016    source источник


Ответы (1)


Да, dcos package install custom-package может установить только приложение Marathon. DCOS не поддерживает прием json группы марафона.

Marathon поддерживает запуск нескольких приложений из одного и того же json, он переходит в конечную точку /v2/groups из REST API. (https://mesosphere.github.io/marathon/docs/rest-api.html#post-v2-groups).

Однако Cosmos (менеджер пакетов DC/OS — https://github.com/dcos/cosmos/) не принимает тот же запрос, поскольку принимает запрос только для конечной точки /v2/apps (https://github.com/dcos/cosmos/blob/master/cosmos-server/src/main/scala/com/mesosphere/cosmos/MarathonClient.scala#L20), который запускает одно приложение.

person Abhijeet Jadhav    schedule 14.11.2016