You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@cloudstack.apache.org by Marcus <sh...@gmail.com> on 2014/03/04 15:49:36 UTC

Re: Review Request 15932: Add support for Primary Storage on Gluster using the libvirt backend

If you get a moment, please look at resize-root branch and see if it
works for Gluster. I didn't see any code specific to creating volumes
in your patch, mostly just pool stuff, so hopefully it's covered.

Also, Wido, as mentioned on the bug for resize-root I'd prefer it if
you could review the changes made for RBD support. We basically just
override the size for new root volumes with the size of the volume
object passed rather than assuming template size, if it's greater than
the template size.

On Sun, Feb 23, 2014 at 8:23 AM, Niels de Vos <nd...@redhat.com> wrote:
>
>
>> On Feb. 19, 2014, 2:35 p.m., Wido den Hollander wrote:
>> > It seems good to me. Applies cleanly to master and builds just fine.
>> >
>> > Code-wise it's simple but effective, should allow us to support Gluster.
>>
>> Wido den Hollander wrote:
>>     I just merged it into master and pushed.
>>
>>     So gluster is in master right now! Niels, can I ask you to test it all again? Just to make sure the code all works like you intended.
>>
>> Niels de Vos wrote:
>>     Thanks Wido!
>>     This seems to be working OK for me. Note that the UI modification (https://reviews.apache.org/r/15933/) have not been reviewed/merged yet. Without these, it's rather difficult for users to configure Primary Storage on Gluster.
>>
>>     Also, I've got asked about the dependencies and configuration. I'll add that here for now, and I'll try figure out how to get it added to the documentation:
>>
>>     In /etc/glusterfs/glusterd.vol, allow unprivileged ports to contact the 'management' volume to get the volume configuration:
>>
>>         option rpc-auth-allow-insecure on
>>
>>     After changing the glusterd.vol file, restart the glusterd service to apply the changes.
>>
>>     Per volume, allow unprivileged ports to access the brick processes (glusterfsd):
>>
>>         # gluster volume set <volname> server.allow-insecure on
>>         # gluster volume stop <volume>
>>         # gluster volume start <volume>
>>
>>     Per volume make sure that the kvm user (uid=36) and kvm group (gid=36) can access the images on the volume:
>>
>>         # gluster volume set <volname> storage.owner-uid 36
>>         # gluster volume set <volname> storage.owner-gid 36
>>
>>     Other dependencies:
>>     * libvirt version 1.0.1 (gluster protocol/network disk support)
>>     * qemu version 1.3 (gluster block backend support)
>>
>>     Note that RHEL-6.5 and derived distributions contain backports that add sufficient functionality too.
>
> Some further testing showed that there can be some issues with starting virtual machines which have disks on Gluster. https://reviews.apache.org/r/18412/ contains a solution for that.
>
>
> - Niels
>
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/15932/#review34859
> -----------------------------------------------------------
>
>
> On Feb. 19, 2014, 9:24 a.m., Niels de Vos wrote:
>>
>> -----------------------------------------------------------
>> This is an automatically generated e-mail. To reply, visit:
>> https://reviews.apache.org/r/15932/
>> -----------------------------------------------------------
>>
>> (Updated Feb. 19, 2014, 9:24 a.m.)
>>
>>
>> Review request for cloudstack.
>>
>>
>> Repository: cloudstack-git
>>
>>
>> Description
>> -------
>>
>> The support for Gluster as Primary Storage is mostly based on the
>> implementation for NFS. Like NFS, libvirt can address a Gluster environment
>> through the 'netfs' pool-type.
>>
>>
>> Diffs
>> -----
>>
>>   api/src/com/cloud/storage/Storage.java ff83dfc
>>   plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/resource/LibvirtComputingResource.java d63b643
>>   plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/resource/LibvirtStoragePoolDef.java dbe5d4b
>>   plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/resource/LibvirtStoragePoolXMLParser.java a6186f6
>>   plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/resource/LibvirtVMDef.java ff75d61
>>   plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/storage/KVMStorageProcessor.java 8cdecd8
>>   plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/storage/LibvirtStorageAdaptor.java a5f33eb
>>   plugins/storage/volume/default/src/org/apache/cloudstack/storage/datastore/lifecycle/CloudStackPrimaryDataStoreLifeCycleImpl.java b90d5fc
>>
>> Diff: https://reviews.apache.org/r/15932/diff/
>>
>>
>> Testing
>> -------
>>
>> See http://blog.nixpanic.net/2013/12/using-gluster-as-primary-storage-in.html
>>
>>
>> Thanks,
>>
>> Niels de Vos
>>
>>
>