How to enable the 'fancy striping' in Ceph

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



 Hi,

I want to create a block image using the rbd cli and followng the rule:  stripe-unit *  stripe-count = 2^order,
Take for example:
rbd create --pool rbd --size 20480 --order 21 --image-format 2 --stripe-unit 1048576 --stripe-count 2 image1

But when I try to map to a block device then raise a message: rbd: add failed: (22) Invalid argument
check the linux kernel(Linux nodeclient 3.11.0-12-generic #19-Ubuntu SMP Wed Oct 9 16:20:46 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux) log
dmesg | grep rbd
 rbd: image image1: unsupported stripe unit (got 1048576 want 2097152)
I guess the rbd kernel does not support the 'fancy striping', after I read the kernel code rbd.c
----------------------------------------------------------------------------------------------------------------------
if (stripe_unit != obj_size) {
        rbd_warn(rbd_dev, "unsupported stripe unit "
                "(got %llu want %llu)",
                stripe_unit, obj_size);
        return -EINVAL;
    }
    stripe_count = ceph_decode_64(&p);
    if (stripe_count != 1) {
        rbd_warn(rbd_dev, "unsupported stripe count "
                "(got %llu want 1)", stripe_count);
        return -EINVAL;
    }
-----------------------------------------------------------------------------------------------------------------

So how to enable/test the 'fancy striping' features, please help!

Best Regards,
Jian LI
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ceph.com/pipermail/ceph-users-ceph.com/attachments/20140512/0ee957ad/attachment.htm>


[Index of Archives]     [Information on CEPH]     [Linux Filesystem Development]     [Ceph Development]     [Ceph Large]     [Ceph Dev]     [Linux USB Development]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [xfs]


  Powered by Linux