Bug 1029384

Summary: I removed a server from "Servers" list, still it can perform all the action on GUI
Product: [JBoss] JBoss Operations Network Reporter: Jeeva Kandasamy <jkandasa>
Component: High AvailabilityAssignee: John Mazzitelli <mazz>
Status: CLOSED CURRENTRELEASE QA Contact: Mike Foley <mfoley>
Severity: urgent Docs Contact:
Priority: unspecified    
Version: JON 3.2CC: dlackey, jkremser, jshaughn, mazz, myarboro
Target Milestone: ER03   
Target Release: JON 3.3.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-12-11 13:59:51 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description Jeeva Kandasamy 2013-11-12 10:23:55 UTC
Description of problem:
On HA setup, I had Server-1 and Server-2. I logged in on Server-1 Web-GUI and removed Server-2 from "Administration-->Servers" (put it on Maintenance mode and removed it). However if I do log-in on Server-2 Web-GUI I can do all the operations on GUI.

Agents are not reporting to Server-2, all the agents are communicating with Server-1. But still via Server-2 Web-GUI I can do all the operations. Server-2 should be removed completely from HA setup when I remove it from "Administrator-->Servers". This is confusing end user.

Version-Release number of selected component (if applicable):
JBoss Operations Network
Version : 3.2.0.ER5
Build Number : 2cb2bc9:225c796
GWT Version : 2.5.0
SmartGWT Version : 3.0p

How reproducible:
always

Steps to Reproduce:
1. Create HA setup at least with two JON servers(Say, Server-1 and Server-2)
2. Remove a server from another server GUI (On Server-1 GUI remove Server-2)
3. Able to do all the actions from removed server GUI(Server-2, Which is already removed from HA setup).

Actual results:
Removed server able to access and perform actions on GUI

Expected results:
Removed server should not have any more access on GUI. Otherwise should be documented with proper justification.

Comment 1 Mike Foley 2013-11-12 14:06:42 UTC
minimally, should be doc'd ...

Comment 2 John Mazzitelli 2013-11-13 14:13:25 UTC
i am of the opinion that if the server's row from RHQ_SERVER is deleted, that server should shut itself down as soon as it detects it.  This would be a good way for someone to easily remove a server from the HA cloud and shut it down all at the same time from the GUI.

Comment 3 Stefan Negrea 2013-11-13 22:03:56 UTC
Created RFE bug 1030082 to capture the proposed enhancements from comment #2. 

For JON 3.2 the current behavior will be documented. This is not a regression since this behavior was in place prior to JON 3.0.

To reiterate the current behavior:
1. If the server entry is removed from the Admin UI, the entity for the server is removed from the database.
2. The server whose entry was removed will continue to operate.
3. Operational integrity cannot be guaranteed post removal since the server depends on the entry to determine it's current state (among other things). So full functionality is never to be expected.
4. Other server and all the agents will be unaffected. 
5. The failover list for agents will be updated to reflect this removal.
6. The server will re-create the entry on restart. So if the user makes a mistake and removes a server, a simple restart will re-create the server information in the database.
7. The current functionality was intended to be used after a server was decommissioned from an HA environment. So only use this functionality after the server is taken offline, uninstalled, never to be run again on the machine.

Comment 7 John Mazzitelli 2014-04-16 17:52:26 UTC
git commit to master: 02513a8a0c8703bdb4804e31ac0ffd7ec35a2819
git commit to release/3.2.x: 2a4a2476c5300eb63838c055f4953cbff181c07f

Comment 8 Simeon Pinder 2014-07-31 15:51:57 UTC
Moving to ON_QA as available to test with brew build of DR01: https://brewweb.devel.redhat.com//buildinfo?buildID=373993

Comment 9 Jeeva Kandasamy 2014-08-07 05:22:09 UTC
There is no option to remove the server from HA setup. 
BZ: https://bugzilla.redhat.com/show_bug.cgi?id=1127530

Version:
JBoss Operations Network
Version : 3.3.0.DR01
Build Number : 6468454:dda0a47
GWT Version : 2.5.0
SmartGWT Version : 3.0p

Comment 10 Jirka Kremser 2014-08-21 15:30:18 UTC
The bug mentioned in above comment was resolved and is waiting for verification. The buttons are back. There is currently nothing that blocks QE from verifying this bug as well -> moving to ON_QA

Comment 11 Jeeva Kandasamy 2014-09-08 13:48:37 UTC
Version:
JBoss Operations Network
Version : 3.3.0.ER02
Build Number : 4fbb183:7da54e2
GWT Version : 2.5.0
SmartGWT Version : 3.0p

If we remove a server from HA cloud, It's removed completely from HA cloud and stopped the server. However as it has all the old configuration as is, if we start the server(removed server) it's registering again in to HA cloud.
We should revert removed server configuration to uninstalled state.
Note: Remove a server from HA cloud only removes JON server, Storage and agent up and running in HA cloud.

Steps I followed:
1. Create HA cloud with Server-A, Server-B
2. Make Server-B to maintenance mode and remove Server-B from HA cloud
3. Make Server-B up from console. (./rhqctl --server start)
4. Server-B becomes available in HA cloud.

Comment 12 John Mazzitelli 2014-09-08 14:02:13 UTC
I'm not convinced we should do what comment #11 asks that we do. 

When a user asked to remove a server, it is removed from the HA server cloud as expected.

Now, if a user wants to restart that server and put it back into the cloud (perhaps the removal was by mistake?) then that's up to the user to do so.

We removed it from the HA cloud as we were told, and we added it to the HA cloud as we were told (which is what happens when you re-start the server).

Adding additional code and states to the HA state machine (like UNINSTALLED or whatever) adds unnecessary complexity IMO.

In my opinion, this new enhancement request should be rejected and this BZ put into CLOSED/FIXED state, unless an argument can be made to add additional capability to render a "removed" server crippled so it could never be re-started again and re-added to the HA cloud.

Comment 13 Jay Shaughnessy 2014-09-08 14:07:54 UTC
Mazz, +1.  This is not a use-case we should support.  In general removing a server from the cloud is to support the use-case where a server is uninstalled.

I think this should be closed NotABug.

Comment 14 Jeeva Kandasamy 2014-09-08 14:10:55 UTC
As the removal works correctly I'm moving this bug to verified state.