说明:marathon-lb介入后,独占了一个从节点,所以我又添加了一个从节点slave03,不过不添加也不会影响最后的结果
主节点master:10.122.163.241
从节点slave01: 10.122.163.247
从节点slave02: 10.122.163.245
从节点slave03: 10.122.163.246
1、Create Application(创建之前要保证从节点上已经存在对应的docker镜像)
image.png创建app有两种方式,一种是根据以上界面直接创建,另一种是右上角通过JSON MODE创建,任一种方式创建完另一种方式会自动生成
image.png根据界面直接创建:
image.pngimage.png
image.png
image.png
image.png
JSON MODE创建:
大部分值与界面一一对应,个别值可以直接指定
image.png完整json:
{
"id": "/user-edge-service",
"cmd": null,
"cpus": 0.2,
"mem": 128,
"disk": 0,
"instances": 1,
"acceptedResourceRoles": [
"*"
],
"container": {
"type": "DOCKER",
"docker": {
"forcePullImage": false,
"image": "user-edge-service",
"parameters": [],
"privileged": false
},
"volumes": [
{
"containerPath": "/usr/local/useredge/logs",
"hostPath": "/opt/user-edge-service",
"mode": "RW"
}
],
"portMappings": [
{
"containerPort": 8082,
"hostPort": 0,
"labels": {},
"protocol": "tcp",
"servicePort": 10004
}
]
},
"dependencies": [
"/user-thrift-service"
],
"labels": {
"HAPROXY_GROUP": "external",
"HAPROXY_0_VHOST": "useredge.marathon.mesos",
"HAPROXY_DEPLOYMENT_ALT_PORT": "10002"
},
"networks": [
{
"mode": "container/bridge"
}
],
"portDefinitions": []
}
2、访问程序运行结果
application状态达到running时,可以访问程序运行结果
image.png2.1 通过application运行所在的slave虚拟机及自动分配的端口访问:
image.png image.png2.2通过marathon-lb负载后的地址和端口访问,即lb所在的slave虚机ip + servicePort访问
Marathon-lb ip:
image.png image.png image.png image.png
网友评论