Project

General

Profile

Feature #40929

Updated by Patrick Donnelly over 4 years ago

Create a new mgr plugin that adds and removes MDSs in response to degraded file systems. The volumes plugin should monitor changes to no longer create an MDS for each volume. Instead, a MDS deployment service should regularly evaluate the state of the FSMap and look for any file system that requires more standbys. This would be indicated by FS_DEGRADED, MDS_UP_LESS_THAN_MAX, or MDS_INSUFFICIENT_STANDBY. These warnings are not in the FSMap. The same logic for checking these conditions in FSMap.cc/MDSMap.cc needs replicated in service should then deploy MDSs until the mgr plugin.

The name "mds_autoscaler" is subject to change but I've chosen it to coincide with pg_autoscaler. The end-intent may be the same: the mds_autoscaler plugin may also monitor
file system load to increase max_mds according to some ruleset. Then it would simultaneously launch more MDS to fill those ranks. To start, this ticket is simply focused on launching MDS in response to degraded file systems or file systems with insufficient standbys.

The volumes plugin should no longer create an MDS for each volume. The fix for this ticket should also remove that behavior.

Note, [1] also introduces
are all healthy. Additionally, if there are too many standbys, stop the ability to assign a new extra MDS to a particular file system. This plugin should plan to use that behavior.

[1] https://github.com/ceph/ceph/pull/32015
daemons.

Back