• Blaine Gardner's avatar
    Ceph mds/file: Set up config in init container · ce803fbf
    Blaine Gardner authored
    
    
    Progress toward issue #2003.
    Includes design from design doc PR #1578
    
    Use init containers to create configuration for Ceph mgrs. There is only
    one init container in this design. The init container calls the Rook
    binary to create Ceph config files which are then shared with the mds
    daemon main container.
    
    Once this init is run, the main mds daemon is run. Leaving room to use
    the Ceph-versioned image in the future, call `ceph-mds --foreground ...`
    to run the Ceph mds.
    
    The refactor to using an init container also necessitated refactoring
    the mdses replicaset implementation to a deployment-per-pod
    implementation due to a chicken-egg problem. With a single container (in
    the before times) the Rook binary was able to call the ceph-mds daemon
    with an id generated from the pod name. Since the pod name is not known
    before runtime, and the id is one of the few params that must be
    specified to Ceph daemons on run, it is necessary to know the id
    beforehand; thus the move to a deployment architecture following the
    likes of the mon and mgr daemons.
    Signed-off-by: default avatarBlaine Gardner <blaine.gardner@suse.com>
    ce803fbf