[one-users] How to use Ceph/RBD for System Datastore
Jon
three18ti at gmail.com
Tue Jul 9 21:01:27 PDT 2013
Hey Bill,
Thanks for getting back to me.
If I'm understanding you correctly, you're basically using the ssh transfer
manager to perform live migrations?
Do you then create/mount one rbd per host?
E.g.,
host1:
mount /dev/rbd/rbd/host1-one-system /var/lib/one/datastores/0
host2:
mount /dev/rbd/rbd/host2-one-system /var/lib/one/datastores/0
then use the modified ssh drivers to perform the migrations?
I would definitely be interested in learning how you accomplished that.
My other thought was to use CephFS for shared storage. This would
eliminate the need for a NFS/GlusterFS/CLVM, which is an extra layer of
complexity I would like to avoid. As I understand it though, CephFS isn't
"ready for prime-time" which gives me pause...
Thanks again,
Jon A
On Tue, Jul 9, 2013 at 7:55 PM, Campbell, Bill <
bcampbell at axcess-financial.com> wrote:
> Jon,
> I think I understand what you are trying to do, but I think it doesn't
> quite work that way. Let me try to explain (and please let me know if I
> don't explain it well enough ;-))
>
> I don't think that you can use Ceph directly as a system datastore. The
> way the Ceph datastore driver works for migrations is leveraging whatever
> transfer method you have for the system datastore to perform the migration.
> For example, if you use the 'shared' system datastore, then it will use
> that transfer manager's pre and post migration drivers. For 'ssh', the ssh
> drivers, and so on. The way the Ceph datastore is implemented is as Ceph
> Block Devices, so unfortunately there is not a way to use it as a simple
> shared volume.
>
> There are 2 potential solutions for getting live migrations working for
> your Ceph datastore VMs:
>
> - Create a shared NFS volume (or other 'sharable' filesystem, like
> GFS2, OCFS2, etc., however these are much more complicated to configure and
> usually not worth the hassle) and have the shared volume mounted to the
> same location on each hypervisor node. In a previous test deployment, we
> just exported out the /var/lib/one/vms directory to the hypervisors. At
> this point, all of the hypervisors should be able to see the deployment
> files in the same location and you should be able to perform a migration.
> - Use SSH as the transfer manager for your system datastore, and
> modify the pre and post-migrate scripts to copy the deployment files from
> the current VM host to the target VM host. This is the method we use
> currently in our deployment, as it is one less configuration step that we
> have to worry about maintaining on each node, and makes expanding our
> cluster much quicker and easier. I can share with you the pre and
> post-migrate scripts we use if you like.
>
> Let me know if the above makes sense, and of course if you need any
> additional help please don't hesitate to bug me. I'm very familiar with
> the Ceph drivers ;-)
>
> ------------------------------
> *From: *"Jon" <three18ti at gmail.com>
> *To: *"Users OpenNebula" <users at lists.opennebula.org>
> *Sent: *Tuesday, July 9, 2013 8:05:51 PM
> *Subject: *[one-users] How to use Ceph/RBD for System Datastore
>
>
> Hello All,
>
> I am using Ceph as my storage back end and would like to know how to
> configure the system datastore, such that I can live migrate vms.
>
> Following the directions, I thought I could create a datastore, format it,
> and mount it at /var/lib/one/datastores/0 , however, I discovered, that
> isn't quite how things work.
>
> >>
> http://lists.ceph.com/pipermail/ceph-users-ceph.com/2013-May/001913.html
> You can read more about that at the above link, but long story short, to
> mount a shared filesystem it has to be a "clustered" filesystem (I think
> CephFS is the "clustered filesystem", in this case).
>
> I attempted to modify my system datastore config, however, I was unable to
> change the DS_MAD parameter, and vm creation errors out telling me there's
> no /var/lib/one/remotes/tm/ceph/mkswap driver (there isn't)
>
> >> oneadmin at red6:~$ onedatastore show 0
> >> DATASTORE 0 INFORMATION
>
> >> ID : 0
> >> NAME : system
> >> USER : oneadmin
> >> GROUP : oneadmin
> >> CLUSTER : -
> >> TYPE : SYSTEM
> >> DS_MAD : -
> >> TM_MAD : ceph
> >> BASE PATH : /var/lib/one/datastores/0
> >> DISK_TYPE : FILE
> >>
> >> PERMISSIONS
>
> >> OWNER : um-
> >> GROUP : u--
> >> OTHER : ---
> >>
> >> DATASTORE TEMPLATE
>
> >> DISK_TYPE="rbd"
> >> DS_MAD="-"
> >> TM_MAD="ceph"
> >> TYPE="SYSTEM_DS"
> >>
> >> IMAGES
>
> Maybe I'm just confused. Can anyone provide some guidance on setting ceph
> up as the system datastore?
>
> Thanks,
> Jon A
>
> _______________________________________________
> Users mailing list
> Users at lists.opennebula.org
> http://lists.opennebula.org/listinfo.cgi/users-opennebula.org
>
>
> *NOTICE: Protect the information in this message in accordance with the
> company's security policies. If you received this message in error,
> immediately notify the sender and destroy all copies.*
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.opennebula.org/pipermail/users-opennebula.org/attachments/20130709/23da71e1/attachment-0002.htm>
More information about the Users
mailing list