On Wed, Aug 06, 2014 at 04:17:24PM +0800, Li Tianqing wrote:
> how to use python-guestfs to access rbd device? The function i found is 
> g.add_drive_opts, but i dono know how it receive ceph's configuration. 

> I found this link
> http://rwmj.wordpress.com/2013/03/12/accessing-ceph-rbd-sheepdog-etc-using-libguestfs/

Ignore this link, it's very old and describes a hack which is no
longer needed.  Libguestfs now properly supports accessing many remote
drives, without needing hacks.

> Is that the only way i should use to access ceph rbd? Can we use
> python-guestfs to get the same effect?

Yes, you can use python-guestfs to access rbd.

You need to do something like the code below.

My Ceph server is switched off at the moment and I'm about to go to a
conference, so I didn't have time to test this, but something like
this should work.

Make sure you have a recent version of libguestfs.  At least >= 1.26.

----------------------------------------------------------------------

import guestfs

g = guestfs.GuestFS (python_return_dict=True)

g.set_verbose (1)
g.set_trace (1)

g.add_drive_opts ("pool/image",
                 format="raw",
                 readonly=1,
                 protocol="rbd",
                 server=[ "192.168.0.10:1234", "192.168.0.11:1235" ],
#                username="rbd_user_name",
#                secret="base64_encoded_password",
                 )

g.launch ()

# etc.

----------------------------------------------------------------------

Rich.

-- 
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
Read my programming and virtualization blog: http://rwmj.wordpress.com
virt-builder quickly builds VMs from scratch
http://libguestfs.org/virt-builder.1.html

_______________________________________________
Libguestfs mailing list
[email protected]
https://www.redhat.com/mailman/listinfo/libguestfs

Reply via email to