Designate service does not work after deployment - can't create a zone, cant attach floating ip
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
kolla-ansible |
Incomplete
|
Undecided
|
Unassigned |
Bug Description
After deploying designate I find two issues:
1) cannot create a zone with error "pool not found"
2) cannot attach floating IP (actually there is an error in horizon about being unable to attach the floating IP, but the IP is indeed attached (as per horizon) and because it is attached, the DNS entry is successfully created. However if you try to ping the instance via the floating IP you will find that the IP does not map to anything because of the error).
First: "pool not found"
The pool ID that has been configured in "designate" as seen via "designate-manage pool generate_file --file dump.yml" is not the same as that has been configured within the designate.conf and as such, pool not found is relating to this.
The pools.yaml has an ID set and because it does not match what is present in designate, it cannot be imported or "updated"
Steps I took to resolve:
1. log into the designate-worker container
2. dump the current config: "designate-manage pool generate_file --file dump.yml"
3. view the file to check the ID and if it is consistent with the .conf configs
4. edit /etc/designate/
5. import the pools.yml with the commented out ID and delete previous config. This generates an ID. "designate-manage pool update --delete yes --file /etc/designate/
Note: I did not try but it may have worked if you simply copied the ID from the dump.yml and update pools.yml with the ID, then run the update command
6. now the pool is imported and the ID generated, need to go back to kolla passwords.yml and add this ID to the file.
7. run reconfigure (so that the ID gets added to the designate.conf files for the containers.
Now, it is possible to create a zone and you wont get an error that "pool not found". But the next error when trying to add a floating IP to an instance is the error "unable to attach floating IP" and although it attaches as per Horizon, you cannot use it to access the instance.
//
Second issue:
When running "openstack recordset list all --all-projects" it shows a zone created under project ID "00000000-
In the logs I see bad UID for zone. And I also see logs saying duplicate zone after creating the zone as mentioned above.
To resolve:
1. run "openstack zone list --all-projects" to show the zone
$ openstack zone list --all-projects
+------
| id | project_id | name | type | serial | status | action |
+------
| ec1f1dd8-
+------
2. delete the zone with "openstack zone delete ec1f1dd8-
Now it's possible to successfully attach floating IP for the instances and have their DNS automatically created.
Environment:
Kayobe deployed, using CentOS7.7 ansible control host.
Deploying into CentOS 7.7 controller. Non-HA at this point.
Openstack Train, kayobe/kolla Train