Creating volume from snapshot on real/production/multicluster installation of OpenStack is broken
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Cinder |
Fix Released
|
High
|
Rongze Zhu | ||
OpenStack Compute (nova) |
Fix Released
|
Medium
|
Rongze Zhu |
Bug Description
Hello,
I'm deploying OpenStack as Private Cloud implementation on multi-hw-node deployment with many Nova Volume (and other) services.
At the beginning I must say that I'm very disappointed of the QA of the OpenStack! OpenStack is now in 5. major (essex) release and his features are still very buggy, non-completed,... everything looks like it was never tested nor unit-tested! The whole OpenStack in this state is a "tool" for school project for one laptop/desktop only, or looks like Alpha version v0.2. OpenStack's database is consistently broken due to internal bugs, which are in simplest Cloud task like attaching volumes, detaching volumes, stopping/starting instances... Immediately when the bug occurs OpenStack log the bug/exception in middle of his "task" (why it is not transaction?) that keeps inconsistent DB entries, iSCSI and LVM stuff, ... That is not robust behaviour which is required for production deployment. How it is possible that this happen in fifth major release? Please do not implement any new features until current OpenStack's features are not fully functional and (that is important) robust!!!
Now I will report one of the regressions/issues: "Creating volume from snapshot on real/production
Error log from nova-volume service:
2012-06-04 14:44:17 DEBUG nova.utils [] Running cmd (subprocess): sudo /usr/bin/
2012-06-04 14:44:17 DEBUG nova.utils [] Result was 1 from (pid=11034) execute /usr/lib/
2012-06-04 14:44:17 ERROR nova.rpc.amqp [] Exception during message handling
2012-06-04 14:44:17 TRACE nova.rpc.amqp Traceback (most recent call last):
2012-06-04 14:44:17 TRACE nova.rpc.amqp File "/usr/lib/
2012-06-04 14:44:17 TRACE nova.rpc.amqp rval = node_func(
2012-06-04 14:44:17 TRACE nova.rpc.amqp File "/usr/lib/
2012-06-04 14:44:17 TRACE nova.rpc.amqp volume_ref['id'], {'status': 'error'})
2012-06-04 14:44:17 TRACE nova.rpc.amqp File "/usr/lib64/
2012-06-04 14:44:17 TRACE nova.rpc.amqp self.gen.next()
2012-06-04 14:44:17 TRACE nova.rpc.amqp File "/usr/lib/
2012-06-04 14:44:17 TRACE nova.rpc.amqp snapshot_ref)
2012-06-04 14:44:17 TRACE nova.rpc.amqp File "/usr/lib/
2012-06-04 14:44:17 TRACE nova.rpc.amqp snapshot[
2012-06-04 14:44:17 TRACE nova.rpc.amqp File "/usr/lib/
2012-06-04 14:44:17 TRACE nova.rpc.amqp run_as_root=True)
2012-06-04 14:44:17 TRACE nova.rpc.amqp File "/usr/lib/
2012-06-04 14:44:17 TRACE nova.rpc.amqp cmd=' '.join(cmd))
2012-06-04 14:44:17 TRACE nova.rpc.amqp ProcessExecutio
2012-06-04 14:44:17 TRACE nova.rpc.amqp Command: sudo /opt/openstack/
Task: create instance with volume root "euca-run-instances ami-0000001 -z foo -g default -t m1.small --block-
The problem is this - OpenStack use local copy command ("dd") on multi-node deployment with many volume services. So the source snapshot is on different node which is accessible over iSCSI and TCP/IP but not directly by "dd".
I hope that the QA of OpenStack will be better soon,
Jaroslav
Changed in cinder: | |
importance: | Undecided → High |
milestone: | none → folsom-3 |
Changed in cinder: | |
assignee: | nobody → ZhuRongze (zrzhit) |
status: | New → In Progress |
Changed in nova: | |
milestone: | none → folsom-3 |
status: | Fix Committed → Fix Released |
Changed in cinder: | |
status: | Fix Committed → Fix Released |
Changed in nova: | |
status: | In Progress → Fix Released |
Changed in cinder: | |
status: | Fix Committed → Fix Released |
Changed in cinder: | |
milestone: | folsom-3 → 2012.2 |
Changed in nova: | |
milestone: | folsom-3 → 2012.2 |
I'm now working on some solution and will paste patch when it is ready.