Installing Ceph MDS on Proxmox

sdutremble

Renowned Member
Sep 29, 2011
85
0
71
I have been trying to install a Ceph MDS on Proxmox and am having difficulties.

First: I am aware that mds is not yet supported on proxmox.
Second: I have seen in the forum that it is likely possible.
Third: I want to look into it.

So I currently have configured a cluster with 3 Proxmox 3.3 with Ceph firefly nodes. All latest updates done on the no-subscription apt.
The Proxmox LAN is 1GB 192.168.255.0/24 and the storage LAN is a 2 X GB NICs bonded together using round-robin on a separate switch at 10.10.10.0/24.
The Proxmox/ceph nodes each have 1 X SSD for the system and 4 x 1TB WD HDD Red drives for OSDs.
I have connectivity everywhere and the Ceph health is OK.
So far, I have 2 KVM using RBD with acceptable performance.

I installed ceph-deploy on all three nodes in order to install a MDS:

Code:
apt-get install ceph-deploy

Then, I tried to install one MDS:

Code:
ceph-deploy mds create pve1

I got:

Code:
root@pve1:/etc/pve/priv/ceph# ceph-deploy mds create pve1
[ceph_deploy.conf][DEBUG ] found configuration file at: /root/.cephdeploy.conf
[ceph_deploy.cli][INFO  ] Invoked (1.5.17): /usr/bin/ceph-deploy mds create pve1
[ceph_deploy][ERROR ] ConfigError: Cannot load config: [Errno 2] No such file or directory: 'ceph.conf'; has `ceph-deploy new` been run in this directory?

I changed directory to where the ceph.conf is on Proxmox:

Code:
cd /etc/pve

and now I am getting:

Code:
root@pve1:/etc/pve# ceph-deploy mds create pve1
[ceph_deploy.conf][DEBUG ] found configuration file at: /root/.cephdeploy.conf
[ceph_deploy.cli][INFO  ] Invoked (1.5.17): /usr/bin/ceph-deploy mds create pve1
[ceph_deploy.mds][DEBUG ] Deploying mds, cluster ceph hosts pve1:pve1
[ceph_deploy][ERROR ] RuntimeError: bootstrap-mds keyring not found; run 'gatherkeys'

Running gatherkeys, I then get:

Code:
root@pve1:/etc/pve# ceph-deploy gatherkeys pve1
[ceph_deploy.conf][DEBUG ] found configuration file at: /root/.cephdeploy.conf
[ceph_deploy.cli][INFO  ] Invoked (1.5.17): /usr/bin/ceph-deploy gatherkeys pve1
[ceph_deploy.gatherkeys][DEBUG ] Checking pve1 for /etc/ceph/ceph.client.admin.keyring
[pve1][DEBUG ] connected to host: pve1 
[pve1][DEBUG ] detect platform information from remote host
[pve1][DEBUG ] detect machine type
[pve1][DEBUG ] fetch remote file
[ceph_deploy.gatherkeys][DEBUG ] Got ceph.client.admin.keyring key from pve1.
[ceph_deploy.gatherkeys][DEBUG ] Checking pve1 for /var/lib/ceph/mon/ceph-{hostname}/keyring
[pve1][DEBUG ] connected to host: pve1 
[pve1][DEBUG ] detect platform information from remote host
[pve1][DEBUG ] detect machine type
[pve1][DEBUG ] fetch remote file
[ceph_deploy.gatherkeys][WARNIN] Unable to find /var/lib/ceph/mon/ceph-{hostname}/keyring on ['pve1']
[ceph_deploy.gatherkeys][DEBUG ] Checking pve1 for /var/lib/ceph/bootstrap-osd/ceph.keyring
[pve1][DEBUG ] connected to host: pve1 
[pve1][DEBUG ] detect platform information from remote host
[pve1][DEBUG ] detect machine type
[pve1][DEBUG ] fetch remote file
[ceph_deploy.gatherkeys][DEBUG ] Got ceph.bootstrap-osd.keyring key from pve1.
[ceph_deploy.gatherkeys][DEBUG ] Checking pve1 for /var/lib/ceph/bootstrap-mds/ceph.keyring
[pve1][DEBUG ] connected to host: pve1 
[pve1][DEBUG ] detect platform information from remote host
[pve1][DEBUG ] detect machine type
[pve1][DEBUG ] fetch remote file
[ceph_deploy.gatherkeys][DEBUG ] Got ceph.bootstrap-mds.keyring key from pve1.
root@pve3:/etc/pve# ceph-deploy mds create pve1
[ceph_deploy.conf][DEBUG ] found configuration file at: /root/.cephdeploy.conf
[ceph_deploy.cli][INFO  ] Invoked (1.5.17): /usr/bin/ceph-deploy mds create pve1
[ceph_deploy.mds][DEBUG ] Deploying mds, cluster ceph hosts pve1:pve1
[pve1][DEBUG ] connected to host: pve1 
[pve1][DEBUG ] detect platform information from remote host
[pve1][DEBUG ] detect machine type
[ceph_deploy.mds][INFO  ] Distro info: debian 7.6 wheezy
[ceph_deploy.mds][DEBUG ] remote host will use sysvinit
[ceph_deploy.mds][DEBUG ] deploying mds bootstrap to pve1
[pve1][DEBUG ] write cluster configuration to /etc/ceph/{cluster}.conf
[ceph_deploy.mds][ERROR ] RuntimeError: config file /etc/ceph/ceph.conf exists with different content; use --overwrite-conf to overwrite
[ceph_deploy][ERROR ] GenericError: Failed to create 1 MDSs

The link from /etc/ceph/ceph.conf -> /etc/pve/ceph.conf works but appears to cause some issue.

Can anyone shed some light on what I may be doing wrong?

This should not be this hard.

Please advise.

Serge.
 
Adding details to my own post.

I followed this: http://www.sebastien-han.fr/blog/2013/05/13/deploy-a-ceph-mds-server/

Creating things manually and still got an error saying ceph-mds was not found.

I then did:

Code:
apt-get install ceph-mds
which installed needed packages and then

Code:
root@pve1:/etc/pve# service ceph start mds.0
and the mds.0 service started.

So I am going to try mounting it.

I will report what happens.

Serge
 
Mounting with ceph-fuse works. However, you have to install ceph-fuse:

Code:
apt-get install ceph-fuse

I mounted the CephFS in a directory (/tmp/CephFS) within each node using the storage LAN and configured the storage as a shared directory within the Proxmox WebGUI.

The new CephFS storage is now available for each host.

I initiated copying files within it and found that it slowed the VMs quite a bit... Quite a bit of IO-Wait. However it is still workable while Ceph is getting stabilized.

I hope it will be much better once the Ceph Health status is OK.

I have not been able to use the kernel mount. I believe ceph support is not baked in the kernel and I can not find the ceph kernel module.

Serge
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!