private void stopGlusterServices(VDS vds) { if (vds.getVdsGroupSupportsGlusterService()) { // Stop glusterd service first boolean succeeded = resourceManagerProvider .get() .runVdsCommand( VDSCommandType.ManageGlusterService, new GlusterServiceVDSParameters(vds.getId(), Arrays.asList("glusterd"), "stop")) .getSucceeded(); if (succeeded) { // Stop other gluster related processes on the node succeeded = resourceManagerProvider .get() .runVdsCommand( VDSCommandType.StopGlusterProcesses, new VdsIdVDSCommandParametersBase(vds.getId())) .getSucceeded(); // Mark the bricks as DOWN on this node if (succeeded) { List<GlusterBrickEntity> bricks = glusterBrickDao.getGlusterVolumeBricksByServerId(vds.getId()); for (GlusterBrickEntity brick : bricks) { brick.setStatus(GlusterStatus.DOWN); } glusterBrickDao.updateBrickStatuses(bricks); } } if (!succeeded) { log.error( "Failed to stop gluster services while moving the host '{}' to maintenance", vds.getName()); } } }