Thanks for reading my questions!

I want to run MySQL on Ceph using KRBD because KRBD is faster than librbd. And 
I know KRBD is a kernel module and we can use KRBD to mount the RBD device on 
the operating systems.

It is easy to use command line tool to mount the RBD device on the operating 
system. It there any other ways to use RBD module , such as changing MySQL IO 
interface by using krbd interface?

I saw krbd.h and I found there was a little function interfaces blew to use. 
Whereas librdb offers us many interfaces such as create, clone a RBD device.

And I want to Verify my hypothesis blew:

1. Librbd provides a richer interfaces than krbd, and some functions cannot be 
implemented through krdb

2. Applications can only use krbd via the command line tool instead of code 
interfaces.

Thank you very much!!!

//interfaces in krbd.h
int krbd_create_from_context(rados_config_t cct, struct krbd_ctx **pctx);
void krbd_destroy(struct krbd_ctx *ctx);

int krbd_map(struct krbd_ctx *ctx, const char *pool, const char *image,
             const char *snap, const char *options, char **pdevnode);
int krbd_is_mapped(struct krbd_ctx *ctx, const char *pool, const char *image,
                   const char *snap, char **pdevnode);

int krbd_unmap(struct krbd_ctx *ctx, const char *devnode,
               const char *options);
int krbd_unmap_by_spec(struct krbd_ctx *ctx, const char *pool,
                       const char *image, const char *snap,
                       const char *options);




------
Jack Lee











_______________________________________________
ceph-users mailing list
ceph-users@lists.ceph.com
http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com

Reply via email to