Hi all,
Exciting to hear discussions about this. You mention that you need to provide the slave ID while making a reservation. Does this preclude the use case where "I want to reserve X CPU + RAM across the entire cluster for R"? Maybe I've misunderstood. I think the ticket for this use case is MESOS-1791. -- Tom Arnfeld Developer // DueDil (+44) 7525940046 25 Christopher Street, London, EC2A 2BS On Sat, Feb 21, 2015 at 1:38 AM, Jie Yu <yujie....@gmail.com> wrote: > Hi, > BenM, BenH, MPark and I had a sync today discussing reservations > (dynamic+static) in Mesos. It was a very productive meeting and here are > some notes I took from the meeting. I think all of us are on the same page > now and are happy with the current design. > - Jie > -------- > 1) we still keep the static reservation, but we don't introduce a new > reservation type for that. If role = R and reservation is none, then it's > statically reserved (cannot be released by anyone). > 2) /reserve and /unreserve endpoints. > Specify the role, slaveid (or hostname, or both, and we validate), > resources when reserving resources. It only takes resources from static * > resources. The operator can reserve both OP and FW reservations. > When hit the reserve endpoint, we use the offered resources and invoke the > offer rescind mechanism. > Question: should we release dynamic reservations when a framework is > shutting down? Multiple frameworks might share the same role! > 3) reservation id > We might want to have a reservation id (the id can be the framework id as > well). The goal is to distinguish who reserved this resources if two > frameworks are under the same role. > 4) introduce principal for reservation > The idea is that we need to track who reserved a resource so that we can > decide who can unreserve it. The principal and ACLs can help us setup those > rules for deciding who can unreserve what. > 5) protobuf > message Resources { > ... > message Reservation { > optional string principal; > optional string reservation_id; // introduce it later maybe > } > ... > optional string role [ Default = "*" ]; > optional Reservation reservation; > }