Configuring a Ceph FUSE client¶
While most clients will use the native kernel ceph client, there may be times where you want to use the FUSE client for rate limiting or if requested by the Jetstream2 team.
You will need the ceph-fuse
rpm if not already installed. You can install it with:
dnf install ceph-fuse
for Redhat-Based OSes like Rocky Linux. For Ubuntu, you can install it with:
apt-get install ceph-fuse
To mount the manila share created previously you need to edit the three files listed below :
i. /etc/ceph/ceph.conf
[global]
admin socket = /var/run/ceph/$cluster-$name-$pid.asok
client reconnect stale = true
debug client = 0/2
fuse big writes = true
mon host = 149.165.158.38:6789,149.165.158.22:6789,149.165.158.54:6789,149.165.158.70:6789,149 .165.158.86:6789
where the mon host information is provided to you as part of the manila share.
ii. /etc/fstab
Add the following:
none /mnt/ceph fuse.ceph ceph.id=$accessTo,ceph.conf=/etc/ceph/ceph.conf,ceph.client_mountpoint=$volumePath,x-systemd.device-timeout=30,x-systemd.mount-timeout=30,noatime,_netdev,rw 0 2
Replace $accessTo
with the arbitrary name you chose for the access rule in step 3 above and $volumePath
with ( /volume/_no-group/…) that is also in the share information that you created.
It should look something like this:
none /mnt/ceph fuse.ceph ceph.id=manilashare,ceph.conf=/etc/ceph/ceph.conf,ceph.client_mountpoint=/volumes/_nogroup/fe4f8ad4-2877-4e23-b5d3-46eb8476750b/ab404bac-9584-45f4-8a34-92dfc6 1fbb98,x-systemd.device-timeout=30,x-systemd.mount-timeout=30,noatime,_netdev,rw 0 2
iii. /etc/ceph/ceph.client.$accessTo
.keyring
Add the following, substituting the name you chose for the access rule and using the access key from that rule:
[client.$accessTo]
key = $accessKey
Your file should look something like this :
[client.manilashare]
key = AQAHfhZiwTf/NhAAT5ChE4tDXt3Nq1NyiURbMQ==