[ https://issues.apache.org/jira/browse/AMBARI-18011?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Ajit Kumar updated AMBARI-18011: -------------------------------- Attachment: rb50450.patch > Add api for bulk delete host component > -------------------------------------- > > Key: AMBARI-18011 > URL: https://issues.apache.org/jira/browse/AMBARI-18011 > Project: Ambari > Issue Type: Task > Components: ambari-server > Affects Versions: 2.5.0 > Reporter: Ajit Kumar > Assignee: Ajit Kumar > Fix For: 2.5.0 > > Attachments: rb50450.patch > > > This api takes in query and instead of failing fast on the first error, puts > the best effort to delete all requested hosts. Response should be json object > which has deleted keys and keys which failed to delete with exception. > Sample API calls: > Delete all host components on a set of hosts: > {code} > Request: > curl -i -uadmin:admin -H 'X-Requested-By: ambari' -X DELETE > http://c6401.ambari.apache.org:8080/api/v1/clusters/c1/host_components -d > '{"RequestInfo":{"query":"HostRoles/host_name.in(c6401.ambari.apache.org,c6402.ambari.apache.org)"}}' > Response > { > "deleteResult" : [ > { > "deleted" : { > "key" : "c6401.ambari.apache.org/HIVE_METASTORE" > } > }, > { > "deleted" : { > "key" : "c6402.ambari.apache.org/MYSQL_SERVER" > } > }, > { > "error" : { > "key" : "c6402.ambari.apache.org/RESOURCEMANAGER", > "code" : 500, > "message" : "org.apache.ambari.server.AmbariException: Host Component > cannot be removed, clusterName=c1, serviceName=YARN, > componentName=RESOURCEMANAGER, hostname=c6402.ambari.apache.org, request={ > clusterName=c1, serviceName=YARN, componentName=RESOURCEMANAGER, > hostname=c6402.ambari.apache.org, desiredState=null, state=null, > desiredStackId=null, staleConfig=null, adminState=null}" > } > } > ] > } > {code} > Delete selected host components on a set of host > {code} > Request: > curl -i -uadmin:admin -H 'X-Requested-By: ambari' -X DELETE > http://c6401.ambari.apache.org:8080/api/v1/clusters/c1/host_components -d > '{"RequestInfo":{"query":"HostRoles/host_name.in(c6401.ambari.apache.org,c6402.ambari.apache.org)&HostRoles/component_name.in(NODEMANAGER)"}}' > Response: > { > "deleteResult" : [ > { > "deleted" : { > "key" : "c6401.ambari.apache.org/NODEMANAGER" > } > }, > { > "error" : { > "key" : "c6402.ambari.apache.org/NODEMANAGER", > "code" : 500, > "message" : "org.apache.ambari.server.AmbariException: Host Component > cannot be removed, clusterName=c1, serviceName=YARN, > componentName=NODEMANAGER, hostname=c6402.ambari.apache.org, request={ > clusterName=c1, serviceName=YARN, componentName=NODEMANAGER, > hostname=c6402.ambari.apache.org, desiredState=null, state=null, > desiredStackId=null, staleConfig=null, adminState=null}" > } > } > ] > } > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)