I have a Robust Supervisor network and nodes connecting into that ring.
I loaded a service in a group on a node, but it was the wrong node. Once I unload the service via hab svc unload, however, when checking the census from a member of the Robust Network supervisors, I still see that node as “alive” in the service group (because its supervisor is still running).
Is this a bug? Shouldn’t unloading the service remove the member from the service group?
Is there a way to force eviction of a member of a group that we know to be incorrect?
Thanks to JS on Habislack, the best course of action at this time it to abandon the service group and start using a new group name.
I would like to request that the ability to remove members from groups and/or delete groups from the supervisor ring would be nice in order to keep a tidy Habitat.
Yeah this should DEFINITELY not be how this works. Do you know what version of hab/hab-sup you’re running on these nodes? Would you mind opening an issue with this information on github.com/habitat-sh/habitat?
We don't currently have support for the concept of a member leaving a service group separate from that member departing the supervisor network entirely. The current implementation communicates membership through service rumors, but there's not yet a concept of a negative service rumor. See this issue for more.
Currently, the best thing to do would be to depart that supervisor, remove its state at /hab/sup/default to force it to become a new member and restart it.