platform9 / express

Platform9's on-boarding / automation toolkit
Apache License 2.0
12 stars 10 forks source link

cannot install cinder/glance/designate roles unless they are on a hypervisor #200

Open h00pz opened 5 years ago

h00pz commented 5 years ago
SUMMARY

Express will not install cinder/glance/designate role unless the host is a hypervisor.

ISSUE TYPE

bug

COMPONENT NAME

cinder/glance/designate

CONFIGURATION

[hypervisors] h3-kv-01 ansible_host=10.128.233.198 ansible_user=ubuntu vm_console_ip=10.128.233.198 tunnel_ip=10.128.233.198 dhcp=on snat=on h3-kv-02 ansible_host=10.128.233.222 ansible_user=ubuntu vm_console_ip=10.128.233.222 tunnel_ip=10.128.233.222 dhcp=on snat=on

[glance] h3-ctl-01 ansible_host=10.128.233.137 glance_ip=10.128.233.137 glance_public_endpoint=True

[cinder] h3-ctl-01 ansible_host=10.128.233.137 cinder_ip=10.128.233.137 pvs=["/dev/sdb","/dev/sdc","/dev/sdd"]

[designate] h3-ctl-01 ansible_host=10.128.233.137

mattroark commented 5 years ago

I encountered this when trying to deploy hosts which only had a Designate role. It failed on the following:

TASK [map-role : set_fact] ************************************************************************************************************************************************************************************************************************************************************
Friday 02 August 2019  21:00:30 +0000 (0:00:00.142)       0:00:37.208 *********
fatal: [cfe-sp-designate-0]: FAILED! => {"msg": "The conditional check 'dvr_status == True and snat == \"on\"' failed. The error was: error while evaluating conditional (dvr_status == True and snat == \"on\"): 'dvr_status' is undefined\n\nThe error appears to be in '/opt/pf9-express/roles/map-role/tasks/main.yml': line 22, column 5, but may\nbe elsewhere in the file depending on the exact syntax problem.\n\nThe offending line appears to be:\n\n  # neutron_l3_agent_mode\n  - set_fact:\n    ^ here\n"}

It would seem the pre-flight checks aren't run for non-hypervisors.

mmccarre commented 5 years ago

When this is fixed, the deauth role also needs to be adjusted to handle hosts without the hypervisor role.