ambari-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sumit Mohanty (JIRA)" <>
Subject [jira] [Commented] (AMBARI-3731) Add support for custom action execution
Date Thu, 14 Nov 2013 06:29:22 GMT


Sumit Mohanty commented on AMBARI-3731:

public Stage getAction(String actionId);
This should be renamed to getStage or getStageByActionId
if (!requestEntity.getIsCommand())
Is there a possibility for neither action nor command (in future), can this be simplified
to: request.isAction()
Line refactored out.
Is there a case for checking if a Service belongs to the cluster and not just the stack?
This is done when execution is scheduled. If the service does not belong to the stack then
no hosts are identified as a target which is an error.
Duplicate definition in
Removed one.
Changes need to be replicated to other DDL scripts at ambari-server/src/main/resources
For MySQL, Oracle and Pgsql remote.
Modified the upgrade script. Opened a JIRA for Oracle changes. MySQL is quite outdated and
so is PgSQL remote.
at, we already have 'String role' field that stores component name.
Maybe it's better to rename it instead of adding new 'String componentName' field
Role is being used as the name of the custom action or commands. We may need to revisit the
structure after agent side changes are finalized for service pluggability.

> Add support for custom action execution
> ---------------------------------------
>                 Key: AMBARI-3731
>                 URL:
>             Project: Ambari
>          Issue Type: Sub-task
>          Components: controller
>    Affects Versions: 1.4.2
>            Reporter: Sumit Mohanty
>            Assignee: Sumit Mohanty
>             Fix For: 1.4.2
>         Attachments: AMBARI-3731-II.patch, AMBARI-3731.patch
> An action is executed on demand.  Actions can also be executed as a part of some other
operation being executed by Ambari. For example, ‘Verify Kerberos Setting’ can be executed
while setting up the secured cluster or at a later point when the admin has a need to verify
the setting while debugging some issue.
> Once an action is requested by posting the request to the cluster specific actions collection,
the executor can monitor the status to know when the action has finished execution. The links
specific to the hosts can be monitored for progress on specific hosts.
> Ambari Server may execute the action on all hosts in parallel. 
> A custom action execution request consists of:
> * ActionName: This is a reference to the action being executed
> * Inputs: The inputs provided by the action executor to the action
> * TargetHosts: The set of hosts where the action should be executed
> *API support for Custom Action Execution*
> An action is scheduled by posting a request resource.
> {code}
> curl -u admin:admin -X POST -d'{"RequestInfo":{"context":"Execute an action", "action"
: "a1", "service_name" : "HDFS", "component_name":"DATANODE", "hosts":"h1"}}' http://localhost:8080/api/v1/clusters/c1/requests
> {code}
> Sub-tasks:
> * API support to post action execution
> * API support to read executed actions
> * DB changes to hold action execution requests

This message was sent by Atlassian JIRA

View raw message