Description of problem: If you elect to install Cinder but have not manually created a Cinder VG on the host running the Cinder server, Packstack will fail and tell you to go create that VG. Why not prompt the user for the location/size of the block device to use and create one if it doesn't exist? This takes a manual step out of all-in-one style installs. Otherwise, if we don't automate this VG creation, I would recommend that we remove Cinder as a default install option and make users manually enable it (similar to what we do w/ Swift right now)
(In reply to comment #0) > Description of problem: > If you elect to install Cinder but have not manually created a Cinder VG on > the host running the Cinder server, Packstack will fail and tell you to go > create that VG. > > Why not prompt the user for the location/size of the block device to use and > create one if it doesn't exist? This takes a manual step out of all-in-one > style installs. Adding here Folsom documentation about creating a loop device: http://docs.openstack.org/trunk/openstack-compute/install/apt/content/osfolubuntu-cinder.html As an extra paramter, we could also prompt the user for the volume name. > > Otherwise, if we don't automate this VG creation, I would recommend that we > remove Cinder as a default install option and make users manually enable it > (similar to what we do w/ Swift right now) It makes more sense. But, what about: 1) Ask the user if there's already a cinder-volume device 1.1) If not, tell him that one will be created and ask for the necessary parameters 1.1.1) If the user doesn't want one, disable cinder and notify the user. 1.2) If there's, prompt him for the volume's name 2) .... If this makes sense I'd vote for it otherwise, I'd say we should remove Cinder as default install option.
(In reply to comment #1) > 1) Ask the user if there's already a cinder-volume device > 1.1) If not, tell him that one will be created and ask for the necessary > parameters > 1.1.1) If the user doesn't want one, disable cinder and notify the > user. > 1.2) If there's, prompt him for the volume's name > 2) .... > > If this makes sense I'd vote for it otherwise, I'd say we should remove > Cinder as default install option. I agree with the above.
If cinder-volumes doesn't exist, it actually fails rather ungracefully: Checking if the Cinder server has a cinder-volumes vg...ERROR:root:============= STDERR ========== ERROR:root:Warning: Permanently added '192.168.122.9' (RSA) to the list of known hosts. + trap t ERR + vgdisplay cinder-volumes Volume group "cinder-volumes" not found ++ t ++ exit 5 The cinder server should contain a cinder-volumes volume group [ ERROR ] ERROR:root:Traceback (most recent call last): File "/usr/lib/python2.6/site-packages/packstack/installer/run_setup.py", line 806, in main _main(confFile) File "/usr/lib/python2.6/site-packages/packstack/installer/run_setup.py", line 593, in _main runSequences() File "/usr/lib/python2.6/site-packages/packstack/installer/run_setup.py", line 569, in runSequences controller.runAllSequences() File "/usr/lib/python2.6/site-packages/packstack/installer/setup_controller.py", line 57, in runAllSequences sequence.run() File "/usr/lib/python2.6/site-packages/packstack/installer/setup_sequences.py", line 154, in run step.run() File "/usr/lib/python2.6/site-packages/packstack/installer/setup_sequences.py", line 60, in run function() File "/usr/lib/python2.6/site-packages/packstack/plugins/cinder_250.py", line 95, in checkcindervg server.execute() File "/usr/lib/python2.6/site-packages/packstack/installer/common_utils.py", line 399, in execute raise ScriptRuntimeError("Error running remote script: %s" % stdoutdata) ScriptRuntimeError: Error running remote script: Error running remote script: Please check log file /var/tmp/packstack/20130129-1327/openstack-setup.log for more information
Not hard to work around, but initially, I was blinded by the large backtrace and almost missed the 'please go create that vg for me'.
Fixes submitted upstream (now creating cinder-volumes) https://review.openstack.org/#/c/21551/ https://review.openstack.org/#/c/20990/
Verified NVR: openstack-packstack-2012.2.2-1.0.dev408.el6ost.noarch 1. Verified that packstack indeed creates a volume when a user asks for it. 2. Verified that packstack uses an existing volume. 3. Verified that packstack fails with an informative error in case no cinder volume available and the user doesn't won't to create one (example: Bug #890295 Comment #7).
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. http://rhn.redhat.com/errata/RHSA-2013-0595.html