前期工作已经完成,目前通过网页上传镜像
由于在模拟环境中没有仓库,所以给master和slave两个相同的镜像,真实场景会从自有仓库中拉取
1.首先给master和slave都把docker的daemon配置好,配置文件在/etc/docker/daemon.json
[root@mesos1 ~]# cat /etc/docker/daemon.json
{
"registry-mirrors":["https://docker.mirrors.ustc.edu.cn"],
"insecure-registries":["10.188.250.8","10.172.49.246"]
}
2.使用相同的nginx镜像,docker pull nginx
即可,接下来在网页中操作
ID为任意,memory可以在mesos的slave节点查看,role为星号
我的slave只有486M的内存,所以给与的内存不能超过这个上限
镜像填写主机中存在的镜像,注意格式,网络填写host或bridge均可,host会随机分配一个端口,bridge可以自己设置
这个是桥接模式,容器暴露80端口,主机端口的0表示任意随机,协议为tcp协议
这里可以看到随机分配的端口是31029端口,访问一下试一试
可以访问,接下来做健康检测
3.
在此页面的edit这里可以更改配置
健康检测一共有http,tcp和https三种方式,我选择的是tcp方式,重启这个容器使配置生效
可以通过这个按键修改0和1以达到重启的目的
在配置中多了这些内容,这是健康检测的参数
intervalSeconds: 60s,检测的时间间隔为60s,即每60s会执行一次健康检查
gracePeriodSeconds: 300s,允许健康检查失败的时间为300s;因此这里第0s、60s、120s、180s、240s发起的健康检查均处于这300s的范畴,所以会有允许健康检查失败的5次机会
maxConsecutiveFailures:3,连续3次健康检查失败后,该应用会被视为Unhealthy状态;因此这里会有3次失败的健康检查
timeoutSeconds:20s,即每次健康检查的响应时间为20s,如果响应时间超过20s,即使该响应正常,也会被视为失败
delaySeconds: 15s,创建app后经过15s再进行健康检查,此参数只有mesos级别的健康检查有
在这里就可以查看到容器的健康状态了