Re: [ceph-users] How to get Active set of OSD Map in serial order of osd index
Think of the osd numbers as names. The plugin interface doesn't even tell you which shard maps to which osd. Why would it make a difference? -Sam On Wed, Jul 27, 2016 at 12:45 AM, Syed Hussainwrote: > Fundamentally, I wanted to know what chunks are allocated in which OSDs. > This way I can preserve the array structure required for my > Erasure Code. If all the chunks are placed in randomly ordered OSDs (like in > Jerasure or ISA) then I loss that array structure required in the > Encoding/Decoding algorithm of my Plugin. > I'm trying to develop an Erasure Code plugin for RDP (or RAID-DP) kind of > code. > > Thanks, > Syed > > On Wed, Jul 27, 2016 at 4:12 AM, Samuel Just wrote: >> >> Why do you want them in serial increasing order? >> -Sam >> >> On Tue, Jul 26, 2016 at 2:43 PM, Samuel Just wrote: >>> >>> How would such a code work if there were more than 24 osds? >>> -Sam >>> >>> On Tue, Jul 26, 2016 at 2:37 PM, Syed Hussain wrote: Hi, I'm working to develop an Erasure Code plugin (variation of ISA) that have typical requirement that the active set of the Erasure Coded pool in serial order. For example, >ceph osd erasure-code-profile set reed_k16m8_isa k=16 m=8 plugin=isa > technique=reed_sol_van ruleset-failure-domain=osd >ceph osd pool create reed_k16m8_isa_pool 128 128 erasure reed_k16m8_isa >echo "ABCDEFGHIABCDEFGHIABCDEFGHIABCDEFGHIABCDEFGHIABCDEFGHI" | rados > --pool reed_k16m8_isa_pool put myobj16_8 - >ceph osd map reed_k16m8_isa_pool myobj16_8 osdmap e86 pool 'reed_k16m8_isa_pool' (1) object 'myobj16_8' -> pg 1.cf6ec86f (1.6f) -> up ([4,23,22,10,9,11,15,6,19,1,7,8,17,21,16,14,18,12,13,20,3,5,0,2], p4) acting ([4,23,22,10,9,11,15,6,19,1,7,8,17,21,16,14,18,12,13,20,3,5,0,2], p4) That means the chunks 0, 1, 2, ...23 of the erasure coding are saved int osd 4, 23, 22, 10, ...2 respectively as per the order given in the active set. Now my question is how I'll be able to get the PG map for object myobj16_8 having active set as: [0, 1, 2, ...23] so that the i-th chunk of the Erasure Coded object saves into i-th osd. Is there any option available in "ceph osd pool create" to do it? Or there may be other way available to accomplish this case. Appreciate your suggestions.. Thanks, Syed Hussain NetWorld ___ ceph-users mailing list ceph-users@lists.ceph.com http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com >>> >> > ___ ceph-users mailing list ceph-users@lists.ceph.com http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com
Re: [ceph-users] How to get Active set of OSD Map in serial order of osd index
Fundamentally, I wanted to know what chunks are allocated in which OSDs. This way I can preserve the array structure required for my Erasure Code. If all the chunks are placed in randomly ordered OSDs (like in Jerasure or ISA) then I loss that array structure required in the Encoding/Decoding algorithm of my Plugin. I'm trying to develop an Erasure Code plugin for RDP (or RAID-DP) kind of code. Thanks, Syed On Wed, Jul 27, 2016 at 4:12 AM, Samuel Justwrote: > Why do you want them in serial increasing order? > -Sam > > On Tue, Jul 26, 2016 at 2:43 PM, Samuel Just wrote: > >> How would such a code work if there were more than 24 osds? >> -Sam >> >> On Tue, Jul 26, 2016 at 2:37 PM, Syed Hussain wrote: >> >>> Hi, >>> >>> I'm working to develop an Erasure Code plugin (variation of ISA) that >>> have typical requirement that the active set of the Erasure Coded pool in >>> serial order. >>> For example, >>> >>> >>> >ceph osd erasure-code-profile set reed_k16m8_isa k=16 m=8 plugin=isa >>> technique=reed_sol_van ruleset-failure-domain=osd >>> >ceph osd pool create reed_k16m8_isa_pool 128 128 erasure reed_k16m8_isa >>> >echo "ABCDEFGHIABCDEFGHIABCDEFGHIABCDEFGHIABCDEFGHIABCDEFGHI" | rados >>> --pool reed_k16m8_isa_pool put myobj16_8 - >>> >ceph osd map reed_k16m8_isa_pool myobj16_8 >>> osdmap e86 pool 'reed_k16m8_isa_pool' (1) object 'myobj16_8' -> pg >>> 1.cf6ec86f (1.6f) -> up >>> ([4,23,22,10,9,11,15,6,19,1,7,8,17,21,16,14,18,12,13,20,3,5,0,2], p4) >>> acting ([4,23,22,10,9,11,15,6,19,1,7,8,17,21,16,14,18,12,13,20,3,5,0,2], p4) >>> >>> >>> >>> That means the chunks 0, 1, 2, ...23 of the erasure coding are saved int >>> osd 4, 23, 22, 10, ...2 respectively as per the order given in the active >>> set. >>> >>> Now my question is how I'll be able to get the PG map for object >>> myobj16_8 having active set as: [0, 1, 2, ...23] so that the i-th chunk of >>> the Erasure Coded object saves into >>> i-th osd. >>> >>> Is there any option available in "ceph osd pool create" to do it? >>> Or there may be other way available to accomplish this case. >>> >>> Appreciate your suggestions.. >>> >>> Thanks, >>> Syed Hussain >>> NetWorld >>> >>> ___ >>> ceph-users mailing list >>> ceph-users@lists.ceph.com >>> http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com >>> >>> >> > ___ ceph-users mailing list ceph-users@lists.ceph.com http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com
Re: [ceph-users] How to get Active set of OSD Map in serial order of osd index
Why do you want them in serial increasing order? -Sam On Tue, Jul 26, 2016 at 2:43 PM, Samuel Justwrote: > How would such a code work if there were more than 24 osds? > -Sam > > On Tue, Jul 26, 2016 at 2:37 PM, Syed Hussain wrote: > >> Hi, >> >> I'm working to develop an Erasure Code plugin (variation of ISA) that >> have typical requirement that the active set of the Erasure Coded pool in >> serial order. >> For example, >> >> >> >ceph osd erasure-code-profile set reed_k16m8_isa k=16 m=8 plugin=isa >> technique=reed_sol_van ruleset-failure-domain=osd >> >ceph osd pool create reed_k16m8_isa_pool 128 128 erasure reed_k16m8_isa >> >echo "ABCDEFGHIABCDEFGHIABCDEFGHIABCDEFGHIABCDEFGHIABCDEFGHI" | rados >> --pool reed_k16m8_isa_pool put myobj16_8 - >> >ceph osd map reed_k16m8_isa_pool myobj16_8 >> osdmap e86 pool 'reed_k16m8_isa_pool' (1) object 'myobj16_8' -> pg >> 1.cf6ec86f (1.6f) -> up >> ([4,23,22,10,9,11,15,6,19,1,7,8,17,21,16,14,18,12,13,20,3,5,0,2], p4) >> acting ([4,23,22,10,9,11,15,6,19,1,7,8,17,21,16,14,18,12,13,20,3,5,0,2], p4) >> >> >> >> That means the chunks 0, 1, 2, ...23 of the erasure coding are saved int >> osd 4, 23, 22, 10, ...2 respectively as per the order given in the active >> set. >> >> Now my question is how I'll be able to get the PG map for object >> myobj16_8 having active set as: [0, 1, 2, ...23] so that the i-th chunk of >> the Erasure Coded object saves into >> i-th osd. >> >> Is there any option available in "ceph osd pool create" to do it? >> Or there may be other way available to accomplish this case. >> >> Appreciate your suggestions.. >> >> Thanks, >> Syed Hussain >> NetWorld >> >> ___ >> ceph-users mailing list >> ceph-users@lists.ceph.com >> http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com >> >> > ___ ceph-users mailing list ceph-users@lists.ceph.com http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com
Re: [ceph-users] How to get Active set of OSD Map in serial order of osd index
How would such a code work if there were more than 24 osds? -Sam On Tue, Jul 26, 2016 at 2:37 PM, Syed Hussainwrote: > Hi, > > I'm working to develop an Erasure Code plugin (variation of ISA) that have > typical requirement that the active set of the Erasure Coded pool in serial > order. > For example, > > > >ceph osd erasure-code-profile set reed_k16m8_isa k=16 m=8 plugin=isa > technique=reed_sol_van ruleset-failure-domain=osd > >ceph osd pool create reed_k16m8_isa_pool 128 128 erasure reed_k16m8_isa > >echo "ABCDEFGHIABCDEFGHIABCDEFGHIABCDEFGHIABCDEFGHIABCDEFGHI" | rados > --pool reed_k16m8_isa_pool put myobj16_8 - > >ceph osd map reed_k16m8_isa_pool myobj16_8 > osdmap e86 pool 'reed_k16m8_isa_pool' (1) object 'myobj16_8' -> pg > 1.cf6ec86f (1.6f) -> up > ([4,23,22,10,9,11,15,6,19,1,7,8,17,21,16,14,18,12,13,20,3,5,0,2], p4) > acting ([4,23,22,10,9,11,15,6,19,1,7,8,17,21,16,14,18,12,13,20,3,5,0,2], p4) > > > > That means the chunks 0, 1, 2, ...23 of the erasure coding are saved int > osd 4, 23, 22, 10, ...2 respectively as per the order given in the active > set. > > Now my question is how I'll be able to get the PG map for object myobj16_8 > having active set as: [0, 1, 2, ...23] so that the i-th chunk of the > Erasure Coded object saves into > i-th osd. > > Is there any option available in "ceph osd pool create" to do it? > Or there may be other way available to accomplish this case. > > Appreciate your suggestions.. > > Thanks, > Syed Hussain > NetWorld > > ___ > ceph-users mailing list > ceph-users@lists.ceph.com > http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com > > ___ ceph-users mailing list ceph-users@lists.ceph.com http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com
[ceph-users] How to get Active set of OSD Map in serial order of osd index
Hi, I'm working to develop an Erasure Code plugin (variation of ISA) that have typical requirement that the active set of the Erasure Coded pool in serial order. For example, >ceph osd erasure-code-profile set reed_k16m8_isa k=16 m=8 plugin=isa technique=reed_sol_van ruleset-failure-domain=osd >ceph osd pool create reed_k16m8_isa_pool 128 128 erasure reed_k16m8_isa >echo "ABCDEFGHIABCDEFGHIABCDEFGHIABCDEFGHIABCDEFGHIABCDEFGHI" | rados --pool reed_k16m8_isa_pool put myobj16_8 - >ceph osd map reed_k16m8_isa_pool myobj16_8 osdmap e86 pool 'reed_k16m8_isa_pool' (1) object 'myobj16_8' -> pg 1.cf6ec86f (1.6f) -> up ([4,23,22,10,9,11,15,6,19,1,7,8,17,21,16,14,18,12,13,20,3,5,0,2], p4) acting ([4,23,22,10,9,11,15,6,19,1,7,8,17,21,16,14,18,12,13,20,3,5,0,2], p4) That means the chunks 0, 1, 2, ...23 of the erasure coding are saved int osd 4, 23, 22, 10, ...2 respectively as per the order given in the active set. Now my question is how I'll be able to get the PG map for object myobj16_8 having active set as: [0, 1, 2, ...23] so that the i-th chunk of the Erasure Coded object saves into i-th osd. Is there any option available in "ceph osd pool create" to do it? Or there may be other way available to accomplish this case. Appreciate your suggestions.. Thanks, Syed Hussain NetWorld ___ ceph-users mailing list ceph-users@lists.ceph.com http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com