[ 
https://issues.apache.org/jira/browse/AMBARI-23852?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jonathan Hurley updated AMBARI-23852:
-------------------------------------
    Description: 
During an upgrade it might be necessary to add a component automatically. For 
example, if a component is being replaced between stacks, then Ambari needs to 
remove the original component and add the new one.

This is a new situation which we've never had before. AMBARI-23553 was created 
to automatically remove services/components during an upgrade which didn't 
appear in the new stack. However, to replace a service component is something 
that involves more thought.

Perhaps we need an action that's similar to this:

{code}
<group xsi:type="cluster" name="ADD_YARN_TIMELINE_READER" title="Replace ATS 
with Timeline Reader">
  <execute-stage title="Replace ATS with Timeline Reader">
    <task xsi:type="add_component" service="YARN" component="TIMELINE_READER" 
host-service="YARN" host-component="APP_TIMELINE_SERVER">
      <summary>Add Timeline Reader to the cluster</summary>
    </task>
  </execute-stage>
</group>
{code}

  was:
During an upgrade it might be necessary to add a component automatically. For 
example, if a component is being replaced between stacks, then Ambari needs to 
remove the original component and add the new one.

This is a new situation which we've never had before. AMBARI-23553 was created 
to automatically remove services/components during an upgrade which didn't 
appear in the new stack. However, to replace a service component is something 
that involves more thought.

Perhaps we need an action that's similar to this:
{code}
<group xsi:type="cluster" name="ADD_YARN_TIMELINE_READER" title="Replace ATS 
with Timeline Reader">
  <execute-stage title="Replace ATS with Timeline Reader">
    <task xsi:type="server_action" 
class="org.apache.ambari.server.serveraction.upgrades.AddNewComponentForExistingService">
      <summary>Add Timeline Reader to the cluster</summary>
      <parameter name="service">YARN</parameter>
      <parameter name="component">TIMELINE_READER</parameter>
      <parameter name="host-service">YARN</parameter>
      <parameter name="host-component"> APP_TIMELINE_SERVER </parameter>
    </task>
  </execute-stage>
</group>
{code}

I suppose we could also have a new type of task that does this as well:

{code}
<group xsi:type="cluster" name="ADD_YARN_TIMELINE_READER" title="Replace ATS 
with Timeline Reader">
  <execute-stage title="Replace ATS with Timeline Reader">
    <task xsi:type="add_component" service="YARN" component="TIMELINE_READER" 
host-service="YARN" host-component="APP_TIMELINE_SERVER">
      <summary>Add Timeline Reader to the cluster</summary>
    </task>
  </execute-stage>
</group>
{code}


> Provide a Framework For Adding A Component During Upgrade
> ---------------------------------------------------------
>
>                 Key: AMBARI-23852
>                 URL: https://issues.apache.org/jira/browse/AMBARI-23852
>             Project: Ambari
>          Issue Type: Task
>          Components: ambari-server
>    Affects Versions: 2.7.0
>            Reporter: Jonathan Hurley
>            Assignee: Jonathan Hurley
>            Priority: Critical
>             Fix For: 2.7.0
>
>
> During an upgrade it might be necessary to add a component automatically. For 
> example, if a component is being replaced between stacks, then Ambari needs 
> to remove the original component and add the new one.
> This is a new situation which we've never had before. AMBARI-23553 was 
> created to automatically remove services/components during an upgrade which 
> didn't appear in the new stack. However, to replace a service component is 
> something that involves more thought.
> Perhaps we need an action that's similar to this:
> {code}
> <group xsi:type="cluster" name="ADD_YARN_TIMELINE_READER" title="Replace ATS 
> with Timeline Reader">
>   <execute-stage title="Replace ATS with Timeline Reader">
>     <task xsi:type="add_component" service="YARN" component="TIMELINE_READER" 
> host-service="YARN" host-component="APP_TIMELINE_SERVER">
>       <summary>Add Timeline Reader to the cluster</summary>
>     </task>
>   </execute-stage>
> </group>
> {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to