Project

General

Profile

Feature #5249

mon: support leader election configuration

Added by Greg Farnum over 5 years ago. Updated over 1 year ago.

Status:
Resolved
Priority:
Normal
Assignee:
Category:
Administration/Usability
Target version:
-
Start date:
06/04/2013
Due date:
% Done:

0%

Source:
Community (user)
Tags:
Backport:
Reviewed:
Affected Versions:
Component(RADOS):
MonClient
Pull request ID:

Description

Right now, monitor election is handled by selecting the monitor with the lowest IP that can reach enough peers. This works fine when all monitors are the same, but as users start setting up multi-site systems they'll want to avoid an off-site monitor being the leader (with the corresponding increase in traffic). We should support users setting a priority list or something.
A more involved follow-on might involve restricting the set of monitors that the other daemons will try and connect to.

History

#1 Updated by Kefu Chai over 2 years ago

Greg,

with the corresponding increase in traffic

we have two sorts of traffic here

  1. traffic between monitors, like paxos messages, forwarded pg stat updates, osd failure reports and their replies
  2. traffic between monitors and their clients, subscription/updates (osdmap,monmap), cluster log, and osd failure reports, pg stat updates.

the leader monitor is always involved in the first case. in the second case, it depends on the client. as MonClient picks a random monitor when it connects to the cluster. if it picks a "closer" monitor, it will gets a faster link for the second type of traffic.

but by moving the leader monitor to where the other lives does not necessarily fix both issues: some peons could still be far away from the their clients.

maybe a better approach is to enable the MonClient to have preference to the closer monitors? if we can utilize the priority and weight in SRV1 when picking random monitor in MonClient, may it will be a more flexible approach?

--
[1] https://github.com/ceph/ceph/pull/7741

#2 Updated by Kefu Chai over 1 year ago

  • Status changed from New to Verified
  • Assignee set to Kefu Chai

#3 Updated by Kefu Chai over 1 year ago

  • Project changed from Ceph to RADOS
  • Category deleted (Monitor)
  • Status changed from Verified to Need Review
  • Component(RADOS) MonClient added

#4 Updated by Kefu Chai over 1 year ago

  • Category set to Administration/Usability

#5 Updated by Kefu Chai over 1 year ago

https://github.com/ceph/ceph/pull/15964 enables the MonClient to have preference to the closer monitors.

#6 Updated by Kefu Chai over 1 year ago

  • Status changed from Need Review to Resolved

Also available in: Atom PDF