[ 
https://issues.apache.org/jira/browse/MESOS-3372?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14733314#comment-14733314
 ] 

Klaus Ma commented on MESOS-3372:
---------------------------------

[~cheuschober], I means you can get those attributes in your framework when 
launching tasks. For example, in {{resourceOffers}} of framework:

{code}
...
  virtual void resourceOffers(SchedulerDriver* driver,
                              const vector<Offer>& offers)
  {
    foreach (const Offer& offer, offers) {
      foreach (const Attribute& attr, offer.attributes) {
        ... // Get target attributes here, e.g. RACK_ID, CPU_TYPE
      }
      ... // Map task & attribute here for your purpose.
      driver->launchTask(...);
    }  
  }
...
{code}

If it can not address your question, please let me know :).

> Allow mesos agent attributes to be tokenized in taskInfo
> --------------------------------------------------------
>
>                 Key: MESOS-3372
>                 URL: https://issues.apache.org/jira/browse/MESOS-3372
>             Project: Mesos
>          Issue Type: Improvement
>            Reporter: Chad Heuschober
>
> Some applications workloads would benefit from having access to the 
> statically defined slave attributes. By processing `taskInfo` on the slave 
> such tokens, as defined in `taskInfo` could be replaced with the appropriate 
> values to achieve such objectives as rack locality.
> Example:
> Before token replacement:
> {code}
> {
>   "discovery": {
>     "environment": "RACK_@MESOS.AGENT.ATTRS.RACK_ID@"
>   }
> }
> {code}
> After token replacement:
> {code}
> {
>   "discovery": {
>     "environment": "RACK_DC131R57"
>   }
> }
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to