[ClusterLabs] CephFS virtual IP
kgaillot at redhat.com
Tue Mar 6 10:05:43 EST 2018
On Tue, 2018-03-06 at 10:11 +0100, Oscar Segarra wrote:
> I'd like to recover this post in order to know if there is any way to
> achieve this kind of simple HA system.
> Thanks a lot.
> 2017-08-28 4:10 GMT+02:00 Oscar Segarra <oscar.segarra at gmail.com>:
> > Hi,
> > In Ceph, by design there is no single point of failure I terms of
> > server roles, nevertheless, from the client point of view, it might
> > exist.
> > In my environment:
> > Mon1: 192.168.100.101:6789
> > Mon2: 192.168.100.102:6789
> > Mon3: 192.168.100.103:6789
> > Client: 192.168.100.104
> > I have created a line in /etc/festa referencing Mon but, of course,
> > if Mon1 fails, the mount point gets stuck.
> > I'd like to create a vip assigned to any host with tcp port 6789 UP
> > and, in the client, mount the CephFS using that VIP.
> > Is there any way to achieve this?
> > Thanks a lot in advance!
The IP itself would be a standard floating IP address using the
ocf:heartbeat:IPaddr2 resource agent. "Clusters from Scratch" has an
example, though I'm sure you're familiar with that:
The interesting part is making sure that port 6789 is responding. The
usual design in these cases is to put the service that provides that
port under cluster control; its monitor action would ensure the port is
responding, and a standard colocation constraint would ensure the IP
can only run when the service is up.
If for whatever reason, you can't put the service under cluster
control, I see two approaches: (1) write a dummy agent whose monitor
action checks the port, and colocate the IP with that; or (2) have a
script check the port and set a node attribute appropriately, and use a
rule-based location constraint for the IP (this approach would be
useful mainly if you already have some script doing a check).
Ken Gaillot <kgaillot at redhat.com>
More information about the Users