Hide Forgot
Description of problem: A recommended practice is to use DNS to resolve the list of monitors by setting up a single name with A records for each monitor. This way the ceph.conf files simply say mon_host = monitors.mycluster.foo.com and there is no need to update the list of IPs on all hosts when monitors are added or removed from the cluster. This doesn't work with Cinder because (I am told) the driver generates a list of monitor IPs from the cluster and uses this to populate the libvirt XML for the RBD attachment. Instead, we should either (1) pass through our own mon_host config value directly, or (2) have an option to do so. Version-Release number of selected component (if applicable): All versions. How reproducible: 100% Steps to Reproduce: 1. Set up DNS records for the mons 2. Set mon_host to the DNS record in ceph.conf's everywhere 3. Create a VM using RBD Actual results: The VM's XML will have the IP list explicitly enumerated in its config, Expected results: The VM's XML should use the DNS name record. Additional info:
The assessment is accurate, I'm not yet sure if a nova patch will also be required in addition to cinder (I'll try to not require one).
SRV lookup support was added in 11: https://docs.ceph.com/docs/mimic/rados/configuration/mon-lookup-dns/