[jira] [Updated] (MESOS-3042) Master/Allocator does not send InverseOffers to resources to be maintained
[ https://issues.apache.org/jira/browse/MESOS-3042?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Marco Massenzio updated MESOS-3042: --- Sprint: Mesosphere Sprint 16, Mesosphere Sprint 17, Mesosphere Sprint 18 (was: Mesosphere Sprint 16, Mesosphere Sprint 17) > Master/Allocator does not send InverseOffers to resources to be maintained > -- > > Key: MESOS-3042 > URL: https://issues.apache.org/jira/browse/MESOS-3042 > Project: Mesos > Issue Type: Task > Components: allocation, master >Reporter: Joseph Wu >Assignee: Joris Van Remoortere > Labels: mesosphere > > Offers are currently sent from master/allocator to framework via > ResourceOffersMessage's. InverseOffers, which are roughly equivalent to > negative Offers, can be sent in the same package. > In src/messages/messages.proto > {code} > message ResourceOffersMessage { > repeated Offer offers = 1; > repeated string pids = 2; > // New field with InverseOffers > repeated InverseOffer inverseOffers = 3; > } > {code} > Sent InverseOffers can be tracked in the master's local state: > i.e. In src/master/master.hpp: > {code} > struct Slave { > ... // Existing fields. > // Active InverseOffers on this slave. > // Similar pattern to the "offers" field > hashsetinverseOffers; > } > {code} > One actor (master or allocator) should populate the new InverseOffers field. > * In master (src/master/master.cpp) > ** Master::offer is where the ResourceOffersMessage and Offer object is > constructed. > ** The same method could also check for maintenance and send InverseOffers. > * In the allocator (src/master/allocator/mesos/hierarchical.hpp) > ** HierarchicalAllocatorProcess::allocate is where slave resources are > aggregated an sent off to the frameworks. > ** InverseOffers (i.e. negative resources) allocation could be calculated in > this method. > ** A change to Master::offer (i.e. the "offerCallback") may be necessary to > account for the negative resources. > Possible test(s): > * InverseOfferTest > ** Start master, slave, framework. > ** Accept resource offer, start task. > ** Set maintenance schedule to the future. > ** Check that InverseOffer(s) are sent to the framework. > ** Decline InverseOffer. > ** Check that more InverseOffer(s) are sent. > ** Accept InverseOffer. > ** Check that more InverseOffer(s) are sent. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (MESOS-3042) Master/Allocator does not send InverseOffers to resources to be maintained
[ https://issues.apache.org/jira/browse/MESOS-3042?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Marco Massenzio updated MESOS-3042: --- Sprint: Mesosphere Sprint 16, Mesosphere Sprint 17 (was: Mesosphere Sprint 16) Master/Allocator does not send InverseOffers to resources to be maintained -- Key: MESOS-3042 URL: https://issues.apache.org/jira/browse/MESOS-3042 Project: Mesos Issue Type: Task Components: allocation, master Reporter: Joseph Wu Assignee: Joris Van Remoortere Labels: mesosphere Offers are currently sent from master/allocator to framework via ResourceOffersMessage's. InverseOffers, which are roughly equivalent to negative Offers, can be sent in the same package. In src/messages/messages.proto {code} message ResourceOffersMessage { repeated Offer offers = 1; repeated string pids = 2; // New field with InverseOffers repeated InverseOffer inverseOffers = 3; } {code} Sent InverseOffers can be tracked in the master's local state: i.e. In src/master/master.hpp: {code} struct Slave { ... // Existing fields. // Active InverseOffers on this slave. // Similar pattern to the offers field hashsetInverseOffer* inverseOffers; } {code} One actor (master or allocator) should populate the new InverseOffers field. * In master (src/master/master.cpp) ** Master::offer is where the ResourceOffersMessage and Offer object is constructed. ** The same method could also check for maintenance and send InverseOffers. * In the allocator (src/master/allocator/mesos/hierarchical.hpp) ** HierarchicalAllocatorProcess::allocate is where slave resources are aggregated an sent off to the frameworks. ** InverseOffers (i.e. negative resources) allocation could be calculated in this method. ** A change to Master::offer (i.e. the offerCallback) may be necessary to account for the negative resources. Possible test(s): * InverseOfferTest ** Start master, slave, framework. ** Accept resource offer, start task. ** Set maintenance schedule to the future. ** Check that InverseOffer(s) are sent to the framework. ** Decline InverseOffer. ** Check that more InverseOffer(s) are sent. ** Accept InverseOffer. ** Check that more InverseOffer(s) are sent. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (MESOS-3042) Master/Allocator does not send InverseOffers to resources to be maintained
[ https://issues.apache.org/jira/browse/MESOS-3042?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Marco Massenzio updated MESOS-3042: --- Sprint: Mesosphere Sprint 16 Master/Allocator does not send InverseOffers to resources to be maintained -- Key: MESOS-3042 URL: https://issues.apache.org/jira/browse/MESOS-3042 Project: Mesos Issue Type: Task Components: allocation, master Reporter: Joseph Wu Assignee: Artem Harutyunyan Labels: mesosphere Offers are currently sent from master/allocator to framework via ResourceOffersMessage's. InverseOffers, which are roughly equivalent to negative Offers, can be sent in the same package. In src/messages/messages.proto {code} message ResourceOffersMessage { repeated Offer offers = 1; repeated string pids = 2; // New field with InverseOffers repeated InverseOffer inverseOffers = 3; } {code} Sent InverseOffers can be tracked in the master's local state: i.e. In src/master/master.hpp: {code} struct Slave { ... // Existing fields. // Active InverseOffers on this slave. // Similar pattern to the offers field hashsetInverseOffer* inverseOffers; } {code} One actor (master or allocator) should populate the new InverseOffers field. * In master (src/master/master.cpp) ** Master::offer is where the ResourceOffersMessage and Offer object is constructed. ** The same method could also check for maintenance and send InverseOffers. * In the allocator (src/master/allocator/mesos/hierarchical.hpp) ** HierarchicalAllocatorProcess::allocate is where slave resources are aggregated an sent off to the frameworks. ** InverseOffers (i.e. negative resources) allocation could be calculated in this method. ** A change to Master::offer (i.e. the offerCallback) may be necessary to account for the negative resources. Possible test(s): * InverseOfferTest ** Start master, slave, framework. ** Accept resource offer, start task. ** Set maintenance schedule to the future. ** Check that InverseOffer(s) are sent to the framework. ** Decline InverseOffer. ** Check that more InverseOffer(s) are sent. ** Accept InverseOffer. ** Check that more InverseOffer(s) are sent. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (MESOS-3042) Master/Allocator does not send InverseOffers to resources to be maintained
[ https://issues.apache.org/jira/browse/MESOS-3042?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Joseph Wu updated MESOS-3042: - Summary: Master/Allocator does not send InverseOffers to resources to be maintained (was: Master/Allocator should send InverseOffers to any resources to be maintained) Master/Allocator does not send InverseOffers to resources to be maintained -- Key: MESOS-3042 URL: https://issues.apache.org/jira/browse/MESOS-3042 Project: Mesos Issue Type: Task Components: allocation, master Reporter: Joseph Wu Labels: mesosphere Offers are currently sent from master/allocator to framework via ResourceOffersMessage's. InverseOffers, which are roughly equivalent to negative Offers, can be sent in the same package. In src/messages/messages.proto {code} message ResourceOffersMessage { repeated Offer offers = 1; repeated string pids = 2; // New field with InverseOffers repeated InverseOffer inverseOffers = 3; } {code} Sent InverseOffers can be tracked in the master's local state: i.e. In src/master/master.hpp: {code} struct Slave { ... // Existing fields. // Active InverseOffers on this slave. // Similar pattern to the offers field hashsetInverseOffer* inverseOffers; } {code} One actor (master or allocator) should populate the new InverseOffers field. * In master (src/master/master.cpp) ** Master::offer is where the ResourceOffersMessage and Offer object is constructed. ** The same method could also check for maintenance and send InverseOffers. * In the allocator (src/master/allocator/mesos/hierarchical.hpp) ** HierarchicalAllocatorProcess::allocate is where slave resources are aggregated an sent off to the frameworks. ** InverseOffers (i.e. negative resources) allocation could be calculated in this method. ** A change to Master::offer (i.e. the offerCallback) may be necessary to account for the negative resources. Possible test(s): * InverseOfferTest ** Start master, slave, framework. ** Accept resource offer, start task. ** Set maintenance schedule to the future. ** Check that InverseOffer(s) are sent to the framework. ** Decline InverseOffer. ** Check that more InverseOffer(s) are sent. ** Accept InverseOffer. ** Check that more InverseOffer(s) are sent. -- This message was sent by Atlassian JIRA (v6.3.4#6332)