opendevreview | Erik Olof Gunnar Andersson proposed openstack/designate-tempest-plugin master: Enable unset ptr test and add inactive value to floating ip status https://review.opendev.org/c/openstack/designate-tempest-plugin/+/823905 | 00:18 |
---|---|---|
opendevreview | Erik Olof Gunnar Andersson proposed openstack/designate master: [WIP] Removing more unused rpc calls https://review.opendev.org/c/openstack/designate/+/832498 | 07:22 |
opendevreview | Erik Olof Gunnar Andersson proposed openstack/designate master: [WIP] Removing more unused rpc calls https://review.opendev.org/c/openstack/designate/+/832498 | 08:21 |
opendevreview | Erik Olof Gunnar Andersson proposed openstack/designate master: [WIP] Removing more unused rpc calls https://review.opendev.org/c/openstack/designate/+/832498 | 09:22 |
zigo | frickler: Hi there! I tried what you wrote, but now I understood I'm in case 3c. So I tried that. Then when I create a port, I can see that Neutron is loading the DNS plugin, but then I can't see any query to Designate in the neutron logs ... Is there something I missed in the Neutron config ? | 16:22 |
johnsom | zigo Hi. There are all of the settings at the top of this neutron doc: https://docs.openstack.org/neutron/xena/admin/config-dns-int-ext-serv.html | 16:25 |
zigo | johnsom: Yeah, I did that ... :/ | 16:25 |
zigo | Logs are saying: | 16:25 |
zigo | External DNS driver loaded: designate _get_dns_driver /usr/lib/python3/dist-packages/neutron/plugins/ml2/extensions/dns_integration.py | 16:25 |
zigo | neutron.plugins.ml2.extensions.dns_integration [req-90c7c506-cfc7-4338-b989-6a69d318d4a0 9d66f10fd5944507a2dc3d9611619db6 df6d92c34eed48d2b023b5d19bf94525 - default default] External DNS driver loaded: designate _get_dns_driver /usr/lib/python3/dist-packages/neutron/plugins/ml2/extensions/dns_integration.py:430 | 16:25 |
zigo | Is it supposed to log more, like the query to Designate? | 16:26 |
johnsom | It doesn't log much from what I have seen. | 16:27 |
johnsom | I have or planned to open a bug about that against the neutron extensions. | 16:28 |
johnsom | So a couple of things to check: | 16:28 |
johnsom | Does the zone exist in designate? Does the user's project have access to it. (these can be seen in the designate API logs) | 16:28 |
zigo | johnsom: I've set Neutron to use "admin" as user in [designate], so it has access to it... | 16:29 |
zigo | (I'll fix this later ...) | 16:29 |
johnsom | Does the network have the dns_domain set? The port the dns_name? Did you set dns_publish_fixed_ip if it's a tenant network? | 16:30 |
zigo | johnsom: I'm in case 3b, so there's no dns_publish_fixed_ip, right? | 16:30 |
zigo | 3c, sorry | 16:30 |
zigo | The zone exists, I just created it. | 16:31 |
johnsom | 3c will only work on external networks | 16:31 |
johnsom | See this list of "exceptions": https://docs.openstack.org/neutron/xena/admin/config-dns-int-ext-serv.html#configuration-of-the-externally-accessible-network-for-use-cases-3b-and-3c | 16:31 |
zigo | he network may *not* have attribute router:external set to True. | 16:32 |
johnsom | I have started to write a user document to clear some of this up. I find it very confusing/complicated. https://review.opendev.org/c/openstack/designate/+/825236 | 16:32 |
zigo | My network has router:external Internal | 16:32 |
zigo | So it should be ok regarding this. | 16:32 |
johnsom | Yeah, so the neutron extension is going to ignore it. | 16:32 |
zigo | (it's a VXLAN network for direct public IP association in the VMs) | 16:32 |
johnsom | Silently, which I think is a bug | 16:33 |
zigo | Ah ?!? | 16:33 |
zigo | Well, the doc is wrong then... | 16:33 |
zigo | It says "The network may *NOT* have router:external True | 16:33 |
zigo | We have router:external Internal ... | 16:33 |
johnsom | Oh, you have it not set to true. Sorry, misunderstood | 16:33 |
zigo | That's *NOT* "true" ... | 16:33 |
zigo | :) | 16:33 |
johnsom | Then, check the segment ID exception. That one also is tricky | 16:34 |
zigo | The segmentation ID is set to 1000 (it's a VXLAN). | 16:35 |
zigo | I'm kind of not sure about that ... :P | 16:35 |
zigo | It should be checked against what? | 16:35 |
johnsom | There is a configuration line for that in neutron, in the ML2 config I think. I don't have a stack running at the moment to check (just about to patch-Monday my workstation) let me see if I can find it. | 16:36 |
zigo | It should be outside of the vni_ranges described in ml2_conf.ini ?!? | 16:37 |
johnsom | https://docs.openstack.org/neutron/xena/admin/config-network-segment-ranges.html | 16:37 |
* zigo is reading over there ... | 16:38 | |
johnsom | I think that is the right setting in the ml2_conf. That part is a bit fuzzy for me. Basically, they want the VXLAN to explicitly be an admin network and not a tenant network so they are checking the tenant segment ID range. If it falls in the "tenant" range, it's ignored. (you are back to the dns_publish_fixed_ip flag that allows DNS on tenant networks) | 16:39 |
zigo | Ok, I'll try to fix the segmentation ID then. | 16:41 |
johnsom | Give that a shot. | 16:41 |
zigo | Thanks so much, we were starting to become crazy ! :) | 16:41 |
zigo | I'll let you know. | 16:41 |
johnsom | Welcome to the club! grin | 16:41 |
zigo | It's going to be tricky to fix, as we have ports in that network already, so I'm going home and see how I can fix this tomorrow ! :P | 17:05 |
frickler | the idea behind those use cases was to not allow normal tenants to create networks where DNS records were published, one has to be admin in order to create a net matching those criteria | 17:40 |
frickler | which kind of may make sense in the IPv4 world, but it seems nobody thought of IPv6 at the time | 17:41 |
frickler | this is why I implemented dns_publish_fixed_ip, which is the suggested solution for those use cases. the other option would be to tune your neutron conf and disallow the vxlan id that you want to use | 17:43 |
frickler | btw. all of this discussion would belong to the neutron channel really | 17:43 |
Generated by irclog2html.py 2.17.3 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!