Project

General

Profile

Actions

Feature #2038

closed

mon: can't currently do commands/get status when not in quorum

Added by Greg Farnum about 12 years ago. Updated about 12 years ago.

Status:
Rejected
Priority:
Normal
Assignee:
-
Category:
Monitor
Target version:
-
% Done:

0%

Source:
Tags:
Backport:
Reviewed:
Affected Versions:
Pull request ID:

Description

For obvious reasons, the MonClient has to authenticate with a monitor before talking to it. Right now this is accomplished by having it send an MAuth as the initial message when trying to establish a connection.

In discussions with Sage today I noticed that that meant that if the monitor is out of quorum, the client can't connect — MAuths are routed through the AuthMonitor PaxosService, which won't accept messages if its lease has run out. This prevents doing things like administrators checking out the current state.

So should the AuthMon be special-cased to allow local-only connections without holding a valid lease? Should this just be swallowed? Should the MonClient be hacked to not require sending MAuth when running certain commands, and those commands whitelisted for everybody on the monitor?

Actions #1

Updated by Sage Weil about 12 years ago

  • Target version changed from v0.42 to v0.43
Actions #2

Updated by Sage Weil about 12 years ago

  • Status changed from New to Rejected

I think it's fine to fail (or actually, block/wait on) authentication if we are out of quorum. The client will retry on it's own, and we will proceed if we finish the election quickly enough.

For mon_status, I wired this up to the admin socket (along with quorum_status), which is a better way to talk to an individual daemon anyway.

Actions #3

Updated by Sage Weil about 12 years ago

  • Target version deleted (v0.43)
Actions

Also available in: Atom PDF