1
0
mirror of https://github.com/ceph/ceph synced 2025-04-01 23:02:17 +00:00

doc/governance: add proposed structure

This is Sage's summary of the Ceph leadership team discussions around
this topic. Still many details to be worked out, this is just one
concrete proposal as a basis for further discussion.

Signed-off-by: Josh Durgin <jdurgin@redhat.com>
This commit is contained in:
Josh Durgin 2021-10-15 11:36:07 -04:00
parent fc01eeb7f4
commit 6dbe0424f9

116
doc/governance/index.rst Normal file
View File

@ -0,0 +1,116 @@
Ceph Governance
---------------
Key principles
==============
* Decision-making is consensus-driven by those who show up.
* Leadership roles are defined primary by responsibility, not prestige or seniority.
* It is normal and healthy for these roles to be passed on to others
* The role of developers is ultimately to serve the users.
Bodies
------
Ceph Executive Council
======================
* [3 or 5] people
* selected by steering committee during leadership summit
* candidates self-nominate or are nominated by other members
* discussion of how roles/responsibilities may be delegated
* propose 1 or more council sets
* ranked-choice vote by steering committee
* 1 year term (i.e., a release cycle) (or staggered longer terms?)
Responsibilities
^^^^^^^^^^^^^^^^
* arbiter in cases where decisions cannot be reached by consensus
* distribute key responsibilities amongst themselves or others
* ensure things get done
Ceph Steering Committee
=======================
Membership
^^^^^^^^^^
* senior developers, users, community members
* Target size: low 10s
* Existing CLT members are grandfathered in
* Members can be nominated and added/removed by existing members (2/3 majority)
* Term is normally 2 years, at which point they can be re-added or rotate out
* Membership reflected by a github group (should be on website, docs, email list too)
Responsibilities
^^^^^^^^^^^^^^^^
* Select executive council
* Amend governance model
Team Leads
==========
Responsibilities
^^^^^^^^^^^^^^^^
* manage a component team in Ceph (e.g., RADOS, RGW, RBD, CephFS, Orchestrator, ...)
* Ensure PRs are reviewed and merged
* Run standups
* Bug triage, scrubs
* etc.
Selected by the executive council, generally based on recommendation by team members and outgoing lead
Encourage periodic rotation of lead responsibility among team members
Meetings
========
Leadership weekly
^^^^^^^^^^^^^^^^^
* weekly, virtual
* Component leads + executive council + any council or community members who choose to attend
* Tactical: this is where the work gets done (executive council wrangles developers, discuss tactial issues of the day)
* Open meeting: anyone can join and raise discussion items
Leadership summit
^^^^^^^^^^^^^^^^^
* Yearly (coinciding with release, Cephalocon / dev summit)
* virtual + in-person
* Council + leads + steering committed + anyone else (open meeting)
* This is where strategic priorities, decisions are discussed, how next council nominations are formed
CDM
^^^
* monthy, virtual
User Meetup(s)
^^^^^^^^^^^^^^
* council + leads + users + interested parties
* monthly, virtual
Standups
^^^^^^^^
* daily, virtual
Community Sync
^^^^^^^^^^^^^^
* weekly or bi-weekly
* who
* community manager
* community lead (usually a council rep)
* community ambassadors
* interested parties