有没有办法让马拉松中运行的应用程序实例数量?我在马拉松中运行了一个包含2个实例的基本python webapp。我想编写一个脚本,以便在mesos-slave的负载增加或减少时自动增加或减少实例数。为此我需要初始化没有实例运行的应用程序。有人可以帮忙吗?
答案 0 :(得分:3)
Marathon REST API是您的朋友。看看here和here。在伪python中,您想要的脚本可能如下所示:
def scaleTo(instances, force=False):
marathon = 'http://localhost:8080'
url = '{}/v2/apps/<your-app-id>'.format(marathon)
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
params = {'force': 'true' if force else 'false'}
payload = {'instances': instances}
r = requests.put(url, headers=headers, params=params, json=payload, verify=False)
r.raise_for_status()
答案 1 :(得分:0)
我认为您对Marathon上的自动缩放应用感兴趣。看看Ted Petrou存储库。这些脚本可能很有用,尽管这些脚本仅适用于PoC。