【问题标题】:Using the Marathon REST API to update a configuration使用 Marathon REST API 更新配置
【发布时间】:2017-04-24 06:25:35
【问题描述】:

使用 cURL 我想通过传递 json 文件来修改组的实例数以更新配置。我的组的设置方式如下所示:

'marathon > applications > topApp'
'marathon > applications > topApp > group1'
'marathon > applications > topApp > group2'
'marathon > applications > topApp > group3 , etc'

我只想更新 group2 并且不知道如何指定它。我正在考虑使用我从马拉松休息 api 文档https://mesosphere.github.io/marathon/docs/rest-api.html#example-5

获得的“PUT /v2/groups/{groupId}”

有没有人这样做并且可以提供帮助?有没有更好的办法?这是我第一次这样做。谢谢!

【问题讨论】:

    标签: marathon


    【解决方案1】:

    你可以curl -XPUT localhost:8080/v2/groups/path/to/group/group2 -d @group2.json,其中group2.json的内容包含实例计数的变化。

    如果您只想更改单个应用程序的实例数,您也可以执行以下操作(可能包含引用问题):

    curl -XPUT localhost:8080/v2/apps/path/to/app/app123 -d '{"instances":20}'

    【讨论】:

    • PUT 应替换为PATCH 或至少添加查询参数partialUpdate=true,因为PUT 的当前默认部分更新将被更改。见docs
    • 没错,谢谢 Janisz!对于应用程序端点,如果您想运行我的示例,您可能需要使用 PATCH。对于组,不支持 HTTP PATCH。
    • 感谢 unterstein 的评论。我很感激。我会处理并回复。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-11-20
    • 1970-01-01
    • 1970-01-01
    • 2017-05-06
    • 2015-04-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多