mirror of
https://github.com/ceph/ceph
synced 2024-12-25 04:43:17 +00:00
4dfacf8031
Signed-off-by: Wido den Hollander <wido@42on.com>
47 lines
1.7 KiB
ReStructuredText
47 lines
1.7 KiB
ReStructuredText
===============================
|
|
Looking op Monitors through DNS
|
|
===============================
|
|
|
|
Since version 11.0.0 RADOS supports looking up Monitors through DNS.
|
|
|
|
This way daemons and clients do not require a *mon host* configuration directive in their ceph.conf configuration file.
|
|
|
|
Using DNS SRV TCP records clients are able to look up the monitors.
|
|
|
|
This allows for less configuration on clients and monitors. Using a DNS update clients and daemons can be made aware of changes in the monitor topology.
|
|
|
|
By default clients and daemons will look for the TCP service called *ceph-mon* which is configured by the *mon_dns_srv_name* configuration directive.
|
|
|
|
Example
|
|
-------
|
|
When the DNS search domain is set to *example.com* a DNS zone file might contain the following elements.
|
|
|
|
First, create records for the Monitors, either IPv4 (A) or IPv6 (AAAA).
|
|
|
|
::
|
|
|
|
mon1.example.com. AAAA 2001:db8::100
|
|
mon2.example.com. AAAA 2001:db8::200
|
|
mon3.example.com. AAAA 2001:db8::300
|
|
|
|
::
|
|
|
|
mon1.example.com. A 192.168.0.1
|
|
mon2.example.com. A 192.168.0.2
|
|
mon3.example.com. A 192.168.0.3
|
|
|
|
|
|
With those records now existing we can create the SRV TCP records with the name *ceph-mon* pointing to the three Monitors.
|
|
|
|
::
|
|
|
|
_ceph-mon._tcp.example.com. 60 IN SRV 10 60 6789 mon1.example.com.
|
|
_ceph-mon._tcp.example.com. 60 IN SRV 10 60 6789 mon2.example.com.
|
|
_ceph-mon._tcp.example.com. 60 IN SRV 10 60 6789 mon3.example.com.
|
|
|
|
In this case the Monitors are running on port *6789*.
|
|
|
|
The current implementation in clients and daemons does *not* honor nor respect the weight or priority set in SRV records.
|
|
|
|
All records returned will be treated equally in a Round Robin fashion.
|