apache / cloudstack

Apache CloudStack is an opensource Infrastructure as a Service (IaaS) cloud computing platform
https://cloudstack.apache.org/
Apache License 2.0
1.89k stars 1.08k forks source link

Unable to attach a data disk to a stopped vm #8645

Open kiranchavala opened 5 months ago

kiranchavala commented 5 months ago

ISSUE TYPE

BUG

Component Name

Storage

CLOUDSTACK VERSION

Cloudstack version 4.18, 4.19

SUMMARY

Unable to attach a data disk to a stopped vm

Steps to reproduce the issue

  1. Launch a vm with service offering of Medium (provisioning type as Thin and storage type as Shared)

  2. Stop the virtual Machine

  3. Create a data disk offering provisioning type as Fat and storage type as local.

  4. Create a data disk on local storage based on the above disk offering

  5. Attach the data disk to the vm

  6. Exception

Screenshot 2024-02-13 at 2 56 15 PM

2024-02-12 09:33:21,233 INFO [c.c.v.VmWorkJobHandlerProxy] (Work-Job-Executor-11:ctx-1229ce90 job-111/job-112 ctx-8fad0ea3) (logid:5089bbfe) Rethrow exception com.cloud.exception.InvalidParameterValueException: Can't move volume between scope: HOST and CLUSTER

Logs

2024-02-12 09:33:21,077 DEBUG [o.a.c.f.j.i.AsyncJobManagerImpl] (API-Job-Executor-59:ctx-e9889507 job-111) (logid:5089bbfe) Executing AsyncJobVO: {id:111, userId: 2, accountId: 2, instanceType: Volume, instanceId: 18, cmd: org.apache.cloudstack.api.command.admin.volume.AttachVolumeCmdByAdmin, cmdInfo: {"virtualmachineid":"010b2d15-b1ea-4fe2-a33b-1225c1798d81","response":"json","ctxUserId":"2","httpmethod":"GET","ctxStartEventId":"251","id":"9e717c0e-2a05-4723-b120-2dc8ea716ba2","ctxDetails":"{\"interface com.cloud.storage.Volume\":\"9e717c0e-2a05-4723-b120-2dc8ea716ba2\",\"interface com.cloud.vm.VirtualMachine\":\"010b2d15-b1ea-4fe2-a33b-1225c1798d81\"}","ctxAccountId":"2","uuid":"9e717c0e-2a05-4723-b120-2dc8ea716ba2","cmdEventType":"VOLUME.ATTACH"}, cmdVersion: 0, status: IN_PROGRESS, processStatus: 0, resultCode: 0, result: null, initMsid: 32987915747642, completeMsid: null, lastUpdated: null, lastPolled: null, created: null, removed: null}
2024-02-12 09:33:21,102 INFO  [c.c.s.VolumeApiServiceImpl] (API-Job-Executor-59:ctx-e9889507 job-111 ctx-58dd89db) (logid:5089bbfe) Trying to attach volume [test/9e717c0e-2a05-4723-b120-2dc8ea716ba2] to VM instance [i-2-9-VM/010b2d15-b1ea-4fe2-a33b-1225c1798d81], update async job-111 progress status

2024-02-12 09:33:21,103 DEBUG [o.a.c.f.j.i.AsyncJobManagerImpl] (API-Job-Executor-59:ctx-e9889507 job-111 ctx-58dd89db) (logid:5089bbfe) Update async-job attachment, job-111, instanceType: Volume, instanceId: 18
2024-02-12 09:33:21,111 DEBUG [o.a.c.f.j.i.AsyncJobManagerImpl] (API-Job-Executor-59:ctx-e9889507 job-111 ctx-58dd89db) (logid:5089bbfe) Sync job-112 execution on object VmWorkJobQueue.9
2024-02-12 09:33:21,120 DEBUG [c.c.s.VolumeApiServiceImpl] (API-Job-Executor-59:ctx-e9889507 job-111 ctx-58dd89db) (logid:5089bbfe) New job 112, result field: null

2024-02-12 09:33:21,217 DEBUG [o.a.c.f.j.i.AsyncJobManagerImpl] (Work-Job-Executor-11:ctx-1229ce90 job-111/job-112) (logid:5089bbfe) Executing AsyncJobVO: {id:112, userId: 2, accountId: 2, instanceType: null, instanceId: null, cmd: com.cloud.vm.VmWorkAttachVolume, cmdInfo: rO0ABXNyAB9jb20uY2xvdWQudm0uVm1Xb3JrQXR0YWNoVm9sdW1lB62v-WGH4hwCAAJMAAhkZXZpY2VJZHQAEExqYXZhL2xhbmcvTG9uZztMAAh2b2x1bWVJZHEAfgABeHIAE2NvbS5jbG91ZC52bS5WbVdvcmufmbZW8CVnawIABEoACWFjY291bnRJZEoABnVzZXJJZEoABHZtSWRMAAtoYW5kbGVyTmFtZXQAEkxqYXZhL2xhbmcvU3RyaW5nO3hwAAAAAAAAAAIAAAAAAAAAAgAAAAAAAAAJdAAUVm9sdW1lQXBpU2VydmljZUltcGxwc3IADmphdmEubGFuZy5Mb25nO4vkkMyPI98CAAFKAAV2YWx1ZXhyABBqYXZhLmxhbmcuTnVtYmVyhqyVHQuU4IsCAAB4cAAAAAAAAAAS, cmdVersion: 0, status: IN_PROGRESS, processStatus: 0, resultCode: 0, result: null, initMsid: 32987915747642, completeMsid: null, lastUpdated: null, lastPolled: null, created: Mon Feb 12 09:33:21 UTC 2024, removed: null}
2024-02-12 09:33:21,217 DEBUG [c.c.v.VmWorkJobDispatcher] (Work-Job-Executor-11:ctx-1229ce90 job-111/job-112) (logid:5089bbfe) Run VM work job: com.cloud.vm.VmWorkAttachVolume for VM 9, job origin: 111
2024-02-12 09:33:21,220 DEBUG [c.c.v.VmWorkJobHandlerProxy] (Work-Job-Executor-11:ctx-1229ce90 job-111/job-112 ctx-8fad0ea3) (logid:5089bbfe) Execute VM work job: com.cloud.vm.VmWorkAttachVolume{"volumeId":18,"userId":2,"accountId":2,"vmId":9,"handlerName":"VolumeApiServiceImpl"}

2024-02-12 09:33:21,233 ERROR [c.c.v.VmWorkJobHandlerProxy] (Work-Job-Executor-11:ctx-1229ce90 job-111/job-112 ctx-8fad0ea3) (logid:5089bbfe) Invocation exception, caused by: com.cloud.exception.InvalidParameterValueException: Can't move volume between scope: HOST and CLUSTER
2024-02-12 09:33:21,233 INFO  [c.c.v.VmWorkJobHandlerProxy] (Work-Job-Executor-11:ctx-1229ce90 job-111/job-112 ctx-8fad0ea3) (logid:5089bbfe) Rethrow exception com.cloud.exception.InvalidParameterValueException: Can't move volume between scope: HOST and CLUSTER
2024-02-12 09:33:21,234 DEBUG [c.c.v.VmWorkJobDispatcher] (Work-Job-Executor-11:ctx-1229ce90 job-111/job-112) (logid:5089bbfe) Done with run of VM work job: com.cloud.vm.VmWorkAttachVolume for VM 9, job origin: 111
2024-02-12 09:33:21,234 ERROR [c.c.v.VmWorkJobDispatcher] (Work-Job-Executor-11:ctx-1229ce90 job-111/job-112) (logid:5089bbfe) Unable to complete AsyncJobVO: {id:112, userId: 2, accountId: 2, instanceType: null, instanceId: null, cmd: com.cloud.vm.VmWorkAttachVolume, cmdInfo: rO0ABXNyAB9jb20uY2xvdWQudm0uVm1Xb3JrQXR0YWNoVm9sdW1lB62v-WGH4hwCAAJMAAhkZXZpY2VJZHQAEExqYXZhL2xhbmcvTG9uZztMAAh2b2x1bWVJZHEAfgABeHIAE2NvbS5jbG91ZC52bS5WbVdvcmufmbZW8CVnawIABEoACWFjY291bnRJZEoABnVzZXJJZEoABHZtSWRMAAtoYW5kbGVyTmFtZXQAEkxqYXZhL2xhbmcvU3RyaW5nO3hwAAAAAAAAAAIAAAAAAAAAAgAAAAAAAAAJdAAUVm9sdW1lQXBpU2VydmljZUltcGxwc3IADmphdmEubGFuZy5Mb25nO4vkkMyPI98CAAFKAAV2YWx1ZXhyABBqYXZhLmxhbmcuTnVtYmVyhqyVHQuU4IsCAAB4cAAAAAAAAAAS, cmdVersion: 0, status: IN_PROGRESS, processStatus: 0, resultCode: 0, result: null, initMsid: 32987915747642, completeMsid: null, lastUpdated: null, lastPolled: null, created: Mon Feb 12 09:33:21 UTC 2024, removed: null}, job origin:111

Actual Behaviour

The data disk created on local doesn't get attached

Expected Behaviour

The data disk created on local should get attached

kiranchavala commented 5 months ago

There is no issue observed when the same disk is attached to a vm in running state

DaanHoogland commented 5 months ago

@kiranchavala , this is specific to local_storage (as well)?

kiranchavala commented 5 months ago

Yes @DaanHoogland