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

John Speidel commented on AMBARI-4467:
--------------------------------------

Hi Eric, thanks for the timely feedback.
I am not sure that I understand your concerns.
>From AMBARI-1783, it defines host component mappings as such:
{code}
"hostComponentMapping" : [
  {
    "hosts" : [
      {
        "predicate" : "name=masterhosts1"
      }
    ],
    "components" : [
      "NAMENODE",
      "JOBTRACKER",
      ...
    ]
  }
{code}

In a host component mapping in AMBARI-1783 , a set of components is mapped to a 
set of hosts.  
This is also what is defined in this jira via a host group except that there 
are no predicates.
When a cluster is created, the request body will specify the blueprint name and 
a set of hosts for each node group at a minimum.
{code}
"blueprint" : "my-blueprint",
"host-groups" :[
    { 
      "name" : "foo",      
      "hosts" : [         
        { 
          "FQDN" : "host1.domain1.com", 
          "ip" : "192.168.1.1" 
        },
        { 
          "FQDN" : "host2.domain1.com", 
          "ip" : "192.168.1.2" 
        }
      ]
    }
  ]
{code}
Each component in a host group, and their respective configurations will be 
deployed on each host specified for the group.  Each host may only be mapped to 
a single host group.
Please be more specific about your concerns with this approach and expand on 
your comment "This is more difficult to manage for orchestrating cross node 
components/service".




> Create new /blueprints REST endpoint
> ------------------------------------
>
>                 Key: AMBARI-4467
>                 URL: https://issues.apache.org/jira/browse/AMBARI-4467
>             Project: Ambari
>          Issue Type: New Feature
>            Reporter: John Speidel
>            Assignee: John Speidel
>              Labels: api-addition, blueprints
>             Fix For: 1.5.0
>
>
> Create a new /blueprints REST endpoint. This endpoint represents an 'abstract 
> blueprint' or 'template' and doesn't contain cluster specific details such 
> specific host information.
> This initial jira will be limited to basic blueprint information and will not 
> contain configuration elements.  These additional elements will be added in 
> subsequent patches.
> Available operations are get, create and delete.  Update is not supported 
> because blueprints are immutable.
> Example of a simple blueprint resource:
> {code}
> {
>   "href" : "http://172.18.193.10:8080/api/v1/blueprints/bp1";,
>   "host_groups" : [
>     {
>       "name" : "foo",
>       "components" : [
>         {
>           "name" : "component2"
>         },
>         {
>           "name" : "component1"
>         },
>         {
>           "name" : "component4"
>         },
>         {
>           "name" : "component3"
>         }
>       ],
>       "cardinality" : "2"
>     },
>     {
>       "name" : "bar",
>       "components" : [
>         {
>           "name" : "component5"
>         }
>       ],
>       "cardinality" : "1"
>     }
>   ],
>   "Blueprints" : {
>     "blueprint_name" : "bp1",
>     "stack_name" : "HDP",
>     "stack_version" : "1.3.3"
>   }
> }
> {code}



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Reply via email to