So I guess I need to figure out of that is broken, or if it's marvin,
and if it's marvin, how to fix it.

Now that I've gotten past that, I see the storage refactor has broken
CLVM. I'll file a bug, but it looks like the process is doing
something like:

copy template to primary storage, then create copy of primary storage
template as new volume

This breaks CLVM, because it used to just do:

copy template to primary storage as new volume

Since we can't efficiently clone in CLVM, it expects to always copy
the template from secondary storage, rather than copying to primary
first and then copying the whole template from the primary back to the
same disks. 1) because it thrashes the disks, and 2) copying the
template is usually much faster because the template is sparse, and
the logical volume is not, so copying a 10G template with a real size
of 500M is much faster than copying a 10G logical volume to another
10G logical volume.

in KVMStorageProcessor.java cloneVolumeFromBaseTemplate:

            if (primaryPool.getType() == StoragePoolType.CLVM) {
                vol = templateToPrimaryDownload(templatePath, primaryPool);
            }

This will never work, because templateToPrimaryDownload expects
secondary storage, and we have copied the template to primary storage
and are passing that. e.g.:

{
    "org.apache.cloudstack.storage.command.CopyCommand": {
        "destTO": {
            "org.apache.cloudstack.storage.to.VolumeObjectTO": {
                "accountId": 2,
                "dataStore": {
                    "org.apache.cloudstack.storage.to.PrimaryDataStoreTO": {
                        "host": "localhost",
                        "id": 2,
                        "path": "/vg0",
                        "poolType": "CLVM",
                        "port": 0,
                        "uuid": "4e00fe65-c47e-4b85-afe8-4f97fb8689d0"
                    }
                },
                "format": "QCOW2",
                "hypervisorType": "KVM",
                "id": 9,
                "name": "ROOT-9",
                "size": 1073741824,
                "uuid": "d73f3a2b-9e63-4faf-a45b-d6fcf7633793",
                "vmName": "i-2-9-VM",
                "volumeId": 9,
                "volumeType": "ROOT"
            }
        },
        "executeInSequence": true,
        "srcTO": {
            "org.apache.cloudstack.storage.to.TemplateObjectTO": {
                "accountId": 2,
                "checksum": "44cd0e6330a59f031460bc18a40c95a2",
                "displayText": "tiny",
                "format": "QCOW2",
                "hvm": true,
                "hypervisorType": "KVM",
                "id": 201,
                "imageDataStore": {
                    "org.apache.cloudstack.storage.to.PrimaryDataStoreTO": {
                        "host": "localhost",
                        "id": 2,
                        "path": "/vg0",
                        "poolType": "CLVM",
                        "port": 0,
                        "uuid": "4e00fe65-c47e-4b85-afe8-4f97fb8689d0"
                    }
                },
                "name": "201-2-a04f958e-0aed-3642-960f-a675a2ee1c44",
                "origUrl":
"http://mirrors.betterservers.com/template/tiny-centos-63.qcow2";,
                "path": "c8da0364-6f94-4c71-9c1d-74078e55bbb8",
                "uuid": "7dcdb1fb-e7e3-4de0-bf93-13d3e6c4ade5"
            }
        },
        "wait": 0
    }
}

Also, format should be 'RAW', I believe, not 'QCOW2'.

On Thu, Sep 5, 2013 at 3:40 PM, Animesh Chaturvedi
<animesh.chaturv...@citrix.com> wrote:
>
>
>> -----Original Message-----
>> From: Marcus Sorensen [mailto:shadow...@gmail.com]
>> Sent: Thursday, September 05, 2013 2:15 PM
>> To: dev@cloudstack.apache.org
>> Cc: Animesh Chaturvedi
>> Subject: Re: Questions about 4.2 RC
>>
>> More questions... I've been going down the rabbithole in figuring out
>> how to deploy VPCs. Part of this might be a missing marvin config in my
>> zone deploy, I still have no idea yet, but after reviewing
>> https://cwiki.apache.org/CLOUDSTACK/internal-load-balancing-between-vpc-
>> tiers.html,
>> I found that I have to do this:
>>
>> > list internalloadbalancerelements
>> > configure internalloadbalancerelement enabled=true
>> > id=de5f3495-6a48-4451-bd2f-e9cb9a7f6fbf
>>
>> Now I can go into the UI and enable the InternalLbVM provider, and
>> finally create a VPC. Is this how we expect users to do it, or is there
>> something I'm missing in the UI.
> [Animesh>] Marcus from the spec "The cloudStack UI will enable the 
> element/provider automatically as a part of physical network creation".
>
>
>>
>> On Thu, Sep 5, 2013 at 2:37 PM, Edison Su <edison...@citrix.com> wrote:
>> >
>> >
>> >> -----Original Message-----
>> >> From: sebgoa [mailto:run...@gmail.com]
>> >> Sent: Thursday, September 05, 2013 1:22 AM
>> >> To: dev@cloudstack.apache.org; Animesh Chaturvedi
>> >> Subject: Questions about 4.2 RC
>> >>
>> >> Hi,
>> >>
>> >> I followed the testing procedure for the 4.2 RC, I am ready to vote
>> >> +1 but I have questions (hence the new thread, don't want to hijack
>> the VOTE).
>> >>
>> >> 1. the CHANGES file points to the release notes, but where are the
>> >> release notes ? I know that no-one really stepped up on the RN but
>> >> can't we at a minimum do a JIRA query that lists the bugs fixed in
>> >> 4.2 and the new features ?
>> >>
>> >> 2. Under infrastructure when I view the DevCloud Zone, I get this in
>> the log:
>> >> WARN  [cloud.api.ApiServer] (642225853@qtp-111037821-10:) Unknown API
>> >> command: listVmwareDcs This is not a deal breaker but why is our UI
>> >> calling a non-implemented API ? This sounds like introducing known
>> >> issues. If it's not implemented yet, remove it.
>> >
>> > The command is only available in non-oss build, but is still listed in
>> command.properties, as there is no separate file for commands non-oss
>> build.
>> >
>> >>
>> >> 3. Under instances, the new tooltip shows a 'vm snapshot' icon. When
>> >> you use it, it snapshots but the snapshot is not shown under
>> >> storage>view snapshots ? Instead you see the snapshot under the
>> instance view.
>> >> Proceeding to destroy the instance will destroy the snapshot, or at a
>> >> minimum we don't have access to it via the UI. It seems to be the
>> >> difference between listVMSnapshot and listSnapshots.
>> >
>> > It's by design, the vm snapshot is listed under vm->vm snapshot view,
>> while the volume snapshot listed under storage->snapshot view.
>> >
>> >>
>> >>
>> >> -Sebastien

Reply via email to