Hi list,
I’m currently using dynamic reservation mechanism with mesosphere/DCOS 1.7, the
opensourced version,
and something wired just happened. I tried to setup a new marathon service from
the universe repo,
and i did a slight modification, setting mesos_role to `dev`. i also turned off
mesos anthentication
mechenism.
My steps are:
First i tried to reserve 2 cpu and 1743 ram to `dev` role using http endpoint,
and it works:
# curl -i -d slaveId=e6d590b1-5f2d-4be9-93fd-2fac364584cf-S11 \
-d resources='[
{
"name": "cpus",
"type": "SCALAR",
"scalar": {
"value": 2.0
},
"role": "dev",
"reservation": {
}
},
{
"name": "mem",
"type": "SCALAR",
"scalar": {
"value": 1024.0
},
"role": "dev",
"reservation": {
}
}
]' -X POST http://10.132.46.81:5050/unreserve
Second, the slave shows following infomation:
# curl http://10.132.46.81/mesos/slaves
reserved_resources_full: {
dev: [
{
name: "cpus",
type: "SCALAR",
scalar: {
value: 2
},
role: "dev",
reservation: { }
},
{
name: "mem",
type: "SCALAR",
scalar: {
value: 1743
},
role: "dev",
reservation: { }
}
]
},
Third, i tried to run nginx using the new marathon service, which i also set
the task only accept `dev` resources,
ID: /nginx
...
Resource Roles: dev
4. on marathon ui i just see the waiting status, which means there’s no
suitable resource offer, marathon reports:
Insufficient resources for [/nginx] (need cpus=1.0, mem=128.0, disk=0.0,
ports=(1 dynamic), available in offer: [id { value:
"e6d590b1-5f2d-4be9-93fd-2fac364584cf-O7476" } framework_id { value:
"e6d590b1-5f2d-4be9-93fd-2fac364584cf-0006" } slave_id { value:
"e6d590b1-5f2d-4be9-93fd-2fac364584cf-S11" } hostname: "10.132.46.84" resources
{ name: "ports" type: RANGES ranges { range { begin: 8182 end: 32000 } } role:
"dev" reservation { } } resources { name: "cpus" type: SCALAR scalar { value:
2.0 } role: "dev" reservation { } } resources { name: "mem" type: SCALAR scalar
{ value: 1743.0 } role: "dev" reservation { } } resources { name: "ports" type:
RANGES ranges { range { begin: 1025 end: 2180 } range { begin: 2182 end: 3887 }
range { begin: 3889 end: 5049 } range { begin: 5052 end: 6326 } range { begin:
6328 end: 8079 } range { begin: 8082 end: 8180 } } role: "*" } resources {
name: "disk" type: SCALAR scalar { value: 41497.0 } role: "*" } resources {
name: "cpus" type: SCALAR scalar { value: 1.0 } role: "*" } resources { name:
"mem" type: SCALAR scalar { value: 896.0 } role: "*" } url { scheme: "http"
address { hostname: "10.132.46.84" ip: "10.132.46.84" port: 5051 } path:
"/slave(1)" }]
(mesosphere.mesos.TaskBuilder:marathon-akka.actor.default-dispatcher-19)
can anyone help me with this?
thank you.
GaoJin CAO
ChinaMobile(Suzhou) R&D
Phone:18896723732
Mail:caogaojin at cmss.chinamobile.com