Bug 1609707
| Summary: | Cinder Google backup gcs-backup.yaml redeploy failed | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Product: | Red Hat OpenStack | Reporter: | Tzach Shefi <tshefi> | ||||||||
| Component: | openstack-tripleo-heat-templates | Assignee: | Alan Bishop <abishop> | ||||||||
| Status: | CLOSED CURRENTRELEASE | QA Contact: | Tzach Shefi <tshefi> | ||||||||
| Severity: | medium | Docs Contact: | |||||||||
| Priority: | medium | ||||||||||
| Version: | 13.0 (Queens) | CC: | abishop, jschluet, mburns, pgrist, scohen, tshefi | ||||||||
| Target Milestone: | --- | Keywords: | TestOnly, Triaged, ZStream | ||||||||
| Target Release: | 13.0 (Queens) | ||||||||||
| Hardware: | Unspecified | ||||||||||
| OS: | Unspecified | ||||||||||
| Whiteboard: | |||||||||||
| Fixed In Version: | openstack-tripleo-heat-templates-8.0.4-20.el7ost.noarch | Doc Type: | If docs needed, set a value | ||||||||
| Doc Text: | Story Points: | --- | |||||||||
| Clone Of: | Environment: | ||||||||||
| Last Closed: | 2018-08-29 19:53:14 UTC | Type: | Bug | ||||||||
| Regression: | --- | Mount Type: | --- | ||||||||
| Documentation: | --- | CRM: | |||||||||
| Verified Versions: | Category: | --- | |||||||||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||||||
| Cloudforms Team: | --- | Target Upstream Version: | |||||||||
| Embargoed: | |||||||||||
| Bug Depends On: | |||||||||||
| Bug Blocks: | 1539135 | ||||||||||
| Attachments: |
|
||||||||||
|
Description
Tzach Shefi
2018-07-30 08:27:10 UTC
Created attachment 1471450 [details]
SOS report
Tzach, This is s simple YAML syntax issue. The lines that begin with "DEFAULT/" need to have a ':' colon at the end. Yep, another point for doc bug, as I had cloned the yaml example.
I'll give this another try and report back.
So a correct yaml should look like this->
parameter_defaults:
ControllerExtraConfig: # 1
cinder::config::cinder_config:
DEFAULT/backup_driver:
value: cinder.backup.drivers.google
DEFAULT/backup_gcs_credential_file:
value: /etc/cinder/Cloud-Backup.json
DEFAULT/backup_gcs_bucket:
value: mycinderbucket
DEFAULT/backup_gcs_project_id:
value: cloud-backup-1370
DEFAULT/backup_gcs_user_agent:
value: myuseragent
Created attachment 1471486 [details] Ansible failed, check log at /var/lib/mistral/57f00212-fd7c-449b-a590-72aa31ad9c46/ansible.log. Manually reverted back config changes to original overcloud_deploy state (Swift as Cinder backup) Added added missing ":" yaml used looks the same as in comment 3. Reran overcloud_deploy.sh It ran for much longer yet still failed. Maybe I have another syntax issue? "2018-07-30 10:11:41,229 DEBUG: 801738 -- Got hashfile /var/lib/config-data/puppet-generated/swift.md5sum for config_volume /var/lib/config-data/puppet-generated/swift", "2018-07-30 10:11:41,229 DEBUG: 801738 -- Updating config hash for swift_account_server, config_volume=heat_api_cfn hash=aa717b7e5d966c99eb42fb89991c3232", "2018-07-30 10:11:41,229 DEBUG: 801738 -- Looking for hashfile /var/lib/config-data/puppet-generated/glance_api.md5sum for config_volume /var/lib/config-data/puppet-generated/glance_api", "2018-07-30 10:11:41,229 DEBUG: 801738 -- Got hashfile /var/lib/config-data/puppet-generated/glance_api.md5sum for config_volume /var/lib/config-data/puppet-generated/glance_api", "2018-07-30 10:11:41,229 DEBUG: 801738 -- Updating config hash for glance_api, config_volume=heat_api_cfn hash=ff143913ff56f24976387e15a53a3999", "2018-07-30 10:11:41,230 DEBUG: 801738 -- Looking for hashfile /var/lib/config-data/puppet-generated/crond.md5sum for config_volume /var/lib/config-data/puppet-generated/crond", "2018-07-30 10:11:41,230 DEBUG: 801738 -- Got hashfile /var/lib/config-data/puppet-generated/crond.md5sum for config_volume /var/lib/config-data/puppet-generated/crond", "2018-07-30 10:11:41,230 DEBUG: 801738 -- Updating config hash for logrotate_crond, config_volume=heat_api_cfn hash=29659f0a74ec1eecd298030e360bd511" ] } NO MORE HOSTS LEFT ************************************************************* PLAY RECAP ********************************************************************* compute-0 : ok=110 changed=25 unreachable=0 failed=0 controller-0 : ok=147 changed=26 unreachable=0 failed=1 undercloud : ok=2 changed=0 unreachable=0 failed=0 Monday 30 July 2018 06:11:42 -0400 (0:00:01.139) 0:05:11.275 *********** =============================================================================== Ansible failed, check log at /var/lib/mistral/57f00212-fd7c-449b-a590-72aa31ad9c46/ansible.log. Overcloud configuration failed. From within the attached Ansible log ->
"2018-07-30 10:11:41,190 DEBUG: 801745 -- docker-puppet-heat_api_cfn",
"2018-07-30 10:11:41,190 INFO: 801745 -- Finished processing puppet configs for heat_api_cfn",
"2018-07-30 10:11:41,190 ERROR: 801738 -- ERROR configuring cinder",
"2018-07-30 10:11:41,191 DEBUG: 801738 -- CONFIG_VOLUME_PREFIX: /var/lib/config-data",
"2018-07-30 10:11:41,191 DEBUG: 801738 -- STARTUP_CONFIG_PATTERN: /var/lib/tripleo-config/docker-container-startup-config-step_*.json",
Tzach, The deployment you mention in comment #5 has been updated and the problem is no longer apparent. Please try a fresh deployment (with the YAML syntax corrected) and see if the problem happens again. Have you filed a doc bug for the missing colons? One other tweak I suggest is for the doc to use consistent amounts of indentation for each level of indentation in the YAML file. The example starts with using two spaces (a good amount), then suddenly switches to four spaces. I think the example will be clearer if two spaces per indentation level is used everywhere. Verified on:
openstack-tripleo-ui-8.3.2-1.el7ost.noarch
openstack-tripleo-image-elements-8.0.1-1.el7ost.noarch
openstack-tripleo-heat-templates-8.0.4-20.el7ost.noarch
ansible-tripleo-ipsec-8.1.1-0.20180308133440.8f5369a.el7ost.noarch
openstack-tripleo-puppet-elements-8.0.1-1.el7ost.noarch
openstack-tripleo-common-8.6.3-10.el7ost.noarch
puppet-tripleo-8.3.4-5.el7ost.noarch
openstack-tripleo-common-containers-8.6.3-10.el7ost.noarch
python-tripleoclient-9.2.3-4.el7ost.noarch
openstack-tripleo-validations-8.4.2-1.el7ost.noarch
Notice there is a necessary hack to be done for this to work!
Aee Alan's comments on gcs-backup.yaml file pasted below.
As Google backup driver wasn't yet added in triple0 as a known backup driver as is the case with Swift/NFS/Ceph, we select one of the already known back ends and swap it with GCS after the last line.
With a future tripleO uodate I assume GCS would be added and this hack won't be needed in the future.
cat gcs-backup.yaml
parameter_defaults:
ControllerExtraConfig: # 1
cinder::config::cinder_config:
# Don't try setting DEFAULT/backup driver. TripleO thinks that
# it is deploying c-bak with Swift, and so TripleO wants to set
# configure this setting.
#
# DEFAULT/backup_driver:
# value: cinder.backup.drivers.google
DEFAULT/backup_gcs_credential_file:
value: /etc/cinder/gbackup.json
DEFAULT/backup_gcs_bucket:
value: mycinderbucket
DEFAULT/backup_gcs_project_id:
value: cloudforms-validation
DEFAULT/backup_gcs_user_agent:
value: gcscinder
# Instead, "trick" TripleO into thinking it's deploying Swift, but
# override the Swift driver ;-)
cinder::backup::swift::backup_driver: cinder.backup.drivers.google
Overcloud redeploy passed, Cinder backup works.
See ^ with correct yaml format this passed. RFE for adding THT support for Google cloud backup driver https://bugzilla.redhat.com/show_bug.cgi?id=1622504 According to our records, this should be resolved by openstack-tripleo-heat-templates-8.0.4-20.el7ost. This build is available now. |