Description of problem: See https://bugs.launchpad.net/tripleo/+bug/1748290 for a full explanation. The short version is THT controls the Cinder container configurations in non-HA deployments, but puppet-tripleo has its own set of hard-coded settings it uses in HA deployments. The big issue for Cinder is the CinderVolumeOptVolumes THT parameter is critical in order for partners to containerize their Cinder drivers. That value isn't honored by puppet-tripleo, and so any CinderVolumeOptVolumes will be missing from the cinder-volume HA container. I'm reporting this against OSP-13 because Cinder is not containerized in OSP-12. Version-Release number of selected component (if applicable): How reproducible: Steps to Reproduce: 1. 2. 3. Actual results: Expected results: Additional info:
I'm retargeting this to OSP-12 because the upstream patches have been backported to stable/pike.
Forgot to set needinfo flag on #13
Take a look at https://github.com/openstack/tripleo-heat-templates/blob/stable/pike/docker/services/cinder-common.yaml and note the following outputs: - cinder_volume_volumes (L50) - cinder_volume_environment (L68) - cinder_backup_volumes (L76) - cinder_backup_environment (L93) These define the list of docker volumes and docker environment variables that should be used in both HA and non-HA deployments. You can test this by doing each type of deployment, running "docker inspect" on the cinder-volume and cinder-backup containers, and noting the docker volume mounts and environment variables. The HA and non-HA sets should match. You can also experiment with the CinderVolumeOptVolumes and CinderVolumeOptEnvVars THT parameters. Perhaps add something like this to a new environment file, or to an existing environment file such as your containerized-cinder.yaml: parameter_defaults: CinderVolumeOptVolumes: /etc/cinder/opt-dir:/etc/cinder/opt-dir CinderVolumeOptEnvVars: FOO=BAR CinderVolumeOptVolumes will create an additional docker volume mount that will map a directory on the host to the cinder-volume container. Docker will automatically create the directory for you, so you should see a /etc/cinder/opt-dir on the host and inside the cinder-volume container. CinderVolumeOptEnvVars will cause an additional environment variable FOO to be assigned the value BAR.
Verified on: openstack-tripleo-heat-templates-7.0.9-6.el7ost.noarch puppet-tripleo-7.4.8-4.el7ost.noarch For previous bugs I had deployed osp12 with containerized Cinder in both HA and none HA deployments, both of them managed to deploy. Cinder create and backup works on both. Run docker inspect on volume and backup on both HA and none HA. Attaching output, docker volume mounts and environment variables do match for HA and none HA.
Created attachment 1407718 [details] Docker inspect HA and none HA of Cinder volume and backup
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. https://access.redhat.com/errata/RHSA-2018:0602