Beispiel #1
0
 def _do_remove_nodes(self, count):
     nodes = self.cloud_groups.nodes
     if count > len(nodes) - 1:
         self.state = self.S_RUNNING
         self.logger.info('Cannot delete so many workers')
         return HttpErrorResponse('ERROR: Cannot delete so many workers')
     else:
         for i in range(0, count):
             node = self.cloud_groups.remove_node()
             self.logger.info('graceful leave on %s', node)
             res = client.graceful_leave(node.ip, 5555)
             self.logger.info('graceful leave: %s', res)
             self.controller.delete_nodes([node])
         self.state = self.S_RUNNING
         return HttpJsonResponse()
Beispiel #2
0
 def _do_remove_nodes(self, count):
     if count > len(self.nodes) - 1:
         self.state = self.S_RUNNING
         return HttpErrorResponse('ERROR: Cannot delete so many workers')
     if count == len(self.nodes):
         self.logger.info('killing the nodes')
         for i in range(0, count):
             self.controller.delete_nodes([self.nodes.pop(1)])
         self.state = self.S_RUNNING
         return HttpJsonResponse()
     else:
         for i in range(0, count):
             node = self.nodes.pop(1)
             self.logger.info('graceful leave on %s', node)
             res = client.graceful_leave(node.ip, 5555)
             self.logger.info('graceful leave: %s', res)
             self.controller.delete_nodes([node])
         self.state = self.S_RUNNING
         return HttpJsonResponse()