marathon启动容器参数疑问
"upgradeStrategy": {}
"minimumHealthCapacity": 0.5,
"maximumOverCapacity": 0.5
在书上看到这个参数
minimumHealthCapacity": 0.5,这个表示如果A 有10个instance,发布过程如下:
停止5个旧instance
启动5个新的instacnce
等待5个新的instance健康检查通过
停止剩余的5个instance
启动5个新的instance
书上是这么描述的,我很奇怪,发布版本的过程不应是通过marathon的api,停掉所有容器,在post新容器的json文件给marathon,然后启动容器吗?这个参数改怎么使用呢?求教
2 个回复
徐磊 - BlackOps@Qunar
赞同来自: ɡōōd洋
写在你marathon任务的json文件里,这个参数其实是rolling restart的控制参数,这个值是0-1之间,表示百分比的,可能书里没说明这块让你有疑问。
minimumHealthCapacity=0
:表示先kill掉旧的实例,然后再启动新的
minimumHealthCapacity=1
:先启动一批新实例,旧实例也保留,等新实例running了以后再kill旧的
0-1之间,就是表示一个比例了,如果你有10个实例,这个值你写成0.1,就相当于每一次rolling,只有一个实例在变,写0.5,就是和你例子里的一样了。
更详细的描述:https://mesosphere.github.io/m ... .html
ɡōōd洋
赞同来自:
比如说marathon跑了个tomcat版本是1,,1个instance,我现在要升级到版本2,你能描述一下升级过程吗,要求不影响线上使用,谢谢