[
https://issues.apache.org/jira/browse/AMBARI-8970?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Alejandro Fernandez updated AMBARI-8970:
----------------------------------------
Attachment: AMBARI-8970.patch
> Custom Actions for Namenode to execute tasks by calling a python script
> -----------------------------------------------------------------------
>
> Key: AMBARI-8970
> URL: https://issues.apache.org/jira/browse/AMBARI-8970
> Project: Ambari
> Issue Type: Technical task
> Components: ambari-server
> Affects Versions: 2.0.0
> Reporter: Alejandro Fernandez
> Assignee: Alejandro Fernandez
> Fix For: 2.0.0
>
> Attachments: AMBARI-8970.patch
>
>
> Currently, the upgrade-2.2.xml file, which contains the Upgrade Pack, defines
> the exact commands to run for the Namenode prepare and finalize steps.
> The downside of having this logic in the xml file is that it makes it
> difficult to maintain, and is not as powerful as being able to run the
> commands by using Python and its functions. Therefore, it is preferable for
> the ExecuteTask to be able to invoke a function inside a script.
> The plan is for Namenode to have functions for prepare and finalize, and for
> the upgrade pack to contain something like,
> Masters Group,
> {code}
> <service name="HDFS">
> <component name="NAMENODE">
> <pre-upgrade>
> <task xsi:type="execute" hosts="master">
> <script>scripts/namenode.py</script>
> <function>prepare_rolling_upgrade</function>
> </task>
> </pre-upgrade>
> </component>
> </service>
> {code}
> While the Cluster Group has,
> {code}
> <execute-stage service="HDFS" component="NAMENODE" title="Execute HDFS
> Finalize">
> <task xsi:type="execute" hosts="master">
> <script>scripts/namenode.py</script>
> <function>finalize_rolling_upgrade</function>
> </task>
> </execute-stage>
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)