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

Billie Rinaldi commented on SLIDER-851:
---------------------------------------

They should be independent.  With the current patches, config inheritance is 
only for the appConfig.json, while unique component names are requested in the 
resources.json.  Config inheritance isn't necessary when you are specifying 
unique names (see example below), but you're not prohibited from using both.

appConfig with config inheritance before resolution:
{noformat}
{
  "global": {
    "global.property": "global.value"
  },
  "components": {
    "A": {
      "a.property": "a.value"
    },
    "B": {
      "conf.group": "A",
      "b.property": "b.value"
    }
  }
}
{noformat}

appConfig with config inheritance after resolution:
{noformat}
{
  "global": {
    "global.property": "global.value"
  },
  "components": {
    "A": {
      "global.property": "global.value"
      "a.property": "a.value"
    },
    "B": {
      "conf.group": "A",
      "global.property": "global.value"
      "a.property": "a.value"
      "b.property": "b.value"
    }
  }
}
{noformat}

resources with unique names:
{noformat}
{
  "schema": "http://example.org/specification/v2.0.0";,
  "metadata": {},
  "global": {},
  "components": {
    "slider-appmaster": {
    },
    "A": {
      "unique.names": "true",
      "yarn.role.priority": "1",
      "yarn.component.instances": 3,
      "yarn.memory": "512",
      "yarn.vcores": "2"
    }
  }
}
{noformat}

In the patch I'm working on for SLIDER-1100, the above resources.json that 
requests 3 instances of component A with unique names will create components 
A1, A2, and A3, all of which will share the same configuration as component A 
-- except for their priorities, which will be unique, and their component 
names, which are available as the COMPONENT_NAME substitution variable.  It's 
possible unique component names would be sufficient to address the original 
kafka broker issue if I also add a COMPONENT_ID variable that is set to either 
the number at the end of the component name or the component priority (a quick 
search showed me that the kafka broker id needs to be an integer, so the 
component name isn't sufficient).  Even though unique names may solve the kafka 
issue, I was thinking that general config inheritance could still be helpful in 
some cases, which is why I separated these topics out into two separate tickets.

> Support instance level configuration 
> -------------------------------------
>
>                 Key: SLIDER-851
>                 URL: https://issues.apache.org/jira/browse/SLIDER-851
>             Project: Slider
>          Issue Type: New Feature
>            Reporter: Siyuan Hua
>         Attachments: SLIDER-851.1.patch, SLIDER-851.2.patch
>
>
> Use case, in kafka, component "broker" would have multiple instances running 
> with some different configuration (for example, unique brokerid)
> There is no need to define different components for just different 
> configurations



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

Reply via email to