ClusterLabs / ClusterLabs/pcs

[booth] `pcs booth status` does not reflect where is the cluster-local booth representative running (if so)

Open
#230 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
265
Forks
122
Avg merge
13h 23m
Merged PRs (30d)
14

Description

In case you happen to run said command in case you didn't pick the
right, "currently representative" node, you get to see an unexpected
outcome:

```
# pcs booth status
> Error: unable to get status of booth daemon: Dec 10 20:40:10 virt-154 booth: [13424]: error: Cannot find myself in the configuration.
```

Well, of course, you cannot, since pcs invoked _you_ at the wrong node
(lazily, just the local one right away).

What should pcs have done instead:

1. realize whether the home node is part of the cluster with multisite
clustering configured

2. if so, it shall deduce where the local cluster representative is
currently running within cluster, and route the request over there[*]

3. if not, currentl behaviour is likely fine, expect to report
from local arbitrator POV

[*] regarding "routing the request (soliciting info), there are
2 possiblities:

* A. utilize presumed pcs intra-node communication infrastructure,
route the request to the target node using pcs-native means,
than route the response back the same way

- this is preferred to satisfy reporting from booth
`booth list` and `booth status`

* B. utilize "distributed/non-local connectivity" of booth,
allowing for `booth status` command to return non-success
and replacing the `booth list -c booth` command with
`booth list -s `

- this only deals with `booth list` side of the report,
hence A. is strongly recommended (when applied within
cluster, you want to get the same information back
regardless if where the cluster-local booth representative
is running)

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.