Tuesday, 2021-10-12

johnsomThat was my question too on the bug00:06
eanderssonI just spotted that :D 00:07
eanderssonhttps://bugs.launchpad.net/designate/+bug/194097600:07
eanderssonWe should probably update the documentation tbh00:07
eanderssonBecause outside of a DEV env you cannot run Designate without a coordinator00:08
eanderssonhttps://github.com/openstack/designate/blob/05343d4226822da8b9776201ea18e000d366573d/designate/coordination.py#L7200:08
johnsomYeah, I was thinking about that today actually. I'm guessing it needs to go in the install guides?00:08
eanderssonYea00:08
eanderssonI believe Zookeeper, Redis and Memcached are the valid backends00:09
eanderssonBut wouldn't put memcached in PROD lol but still better than without any coordinator00:09
eanderssonhttps://docs.openstack.org/tooz/latest/user/compatibility.html00:11
johnsomYeah, the tooz docs says consul too, but...00:11
johnsomIt is this list I think: https://docs.openstack.org/tooz/latest/user/compatibility.html#grouping00:11
eanderssonThe problem is that we use more than just locking00:11
eanderssonYea00:11
eanderssonI think that is right, we use Locking + Grouping00:12
johnsomeandersson While you are here... https://review.opendev.org/c/openstack/designate/+/81317600:13
johnsomI also commented on https://review.opendev.org/c/openstack/designate/+/813151 that I think we should just remove the SOAP akamai backend as it's EOL.00:14
eanderssonYep was reviewing it earlier today, but.. got distracted lol00:14
johnsomI had some days off, so had a heck of a stack of emails and updates to go through today.00:15
eanderssonWe need this as well btw https://review.opendev.org/c/openstack/designate-tempest-plugin/+/813299/00:15
johnsomAh, missed that00:15
johnsomThat is more concerning actually. hmm00:16
johnsomThough, secondary zones were broken with the old dnspython.00:16
eanderssonI would like more information00:16
eanderssonbtw for the other patch I am fine with just the hotfix and then a follow up patch to remove the actual driver00:17
eanderssonI will +2 it and let you pick the path (both are fine to me at least)00:17
eanderssonI am fine with disabling the test assuming it's something we intend to fix00:18
eanderssonI marked all patches with +2 and will let you decide if we should merge them.00:21
eanderssonI'll rebuild my local dev env sometime this week and do some testing00:21
johnsomYeah, I an spinning mine back up now too.00:22
johnsomIt's just a bad test00:36
eanderssonGood to hear00:52
eanderssonWorth considering removing it, or do you think it is salvagable?00:52
johnsomIt's salvageable. I will poke at it tomorrow.00:53
opendevreviewMerged openstack/designate-tempest-plugin master: Skip test broken by dnspython2  https://review.opendev.org/c/openstack/designate-tempest-plugin/+/81329901:41
opendevreviewMerged openstack/designate master: Fix test failures with dnspython>=2  https://review.opendev.org/c/openstack/designate/+/81317604:10
crohmanneandersson: johnsom: Sorry I missed your responses and discussion last night (I am in Germany). Looking at the code references I now realize that there is no synchronization within a single instance of the Designate components even and it fully relies on a DLM? And no, I am NOT running a coordinator yet. Certainly any serious setup will likely use multiple instances - but having code is not 07:02
crohmann"thread-safe" even for a single instance is really unfortunate. Also the requirement for grouping in the DLM really reduces the choice and likely pushes people to install software they might not need otherwise or even are unfamiliar with. Do you guys see any chance to get this whole problem a little more lightweight? The change nicolasbock proposed at least synchronizes the serial generation / 07:02
crohmannincrementation via the storage backend which would, so my theory allow a DEV or single instance Designate setup to run without DLM, right?07:02
opendevreviewArkady Shtempler proposed openstack/designate-tempest-plugin master: Add "cleanup" for created recordsets + delete zone test  https://review.opendev.org/c/openstack/designate-tempest-plugin/+/79646909:27
opendevreviewGunju Kim proposed openstack/designate master: Remove akamai(v1) backend as API no longer exists at Akamai  https://review.opendev.org/c/openstack/designate/+/81338014:46
opendevreviewGunju Kim proposed openstack/designate master: Remove akamai(v1) backend as API no longer exists at Akamai  https://review.opendev.org/c/openstack/designate/+/81338014:56
opendevreviewGunju Kim proposed openstack/designate master: Remove akamai(v1) backend as API no longer exists at Akamai  https://review.opendev.org/c/openstack/designate/+/81338014:58
opendevreviewGunju Kim proposed openstack/designate master: Remove akamai(v1) backend as API no longer exists at Akamai  https://review.opendev.org/c/openstack/designate/+/81338014:58
opendevreviewMichael Johnson proposed openstack/designate master: Remove akamai(v1) backend as API no longer exists at Akamai  https://review.opendev.org/c/openstack/designate/+/81338015:53
opendevreviewMichael Johnson proposed openstack/designate master: Remove Akamai (eDNS SOAP API) backend  https://review.opendev.org/c/openstack/designate/+/81338016:36
eanderssoncrohmann: We want a lightweight implementation, but central needs a lot of work.17:02
eanderssonI think nicolasbock had a few ideas, but not sure how far along he got17:04
opendevreviewMichael Johnson proposed openstack/designate-tempest-plugin master: DNM: Testing dnspython 2.1 tempest issue.  https://review.opendev.org/c/openstack/designate-tempest-plugin/+/81368518:24
fricklerjohnsom: I did quite some digging on ^^ already. it boils down to dns.query.udp() requiring an IP address now18:28
fricklerbut we hand it the DNS name of the nameserver. it used to work with dnspython1, though unexpectedly18:29
fricklerit also works when running under eventlet, because the greendns wrapper reintroduces doing a resolve step on the nameserver18:30
fricklerhttps://github.com/rthalley/dnspython/issues/552 essentially18:32
fricklerand since we use ns1.devstack.org as nameserver entry, for which there isn't an A or AAAA record, this is always going to fail anyway18:32
fricklerso IMHO this whole test is bogus in it's current state18:33
opendevreviewMerged openstack/designate master: Remove Akamai (eDNS SOAP API) backend  https://review.opendev.org/c/openstack/designate/+/81338018:33
fricklerto work properly, it would need to setup a zone with the local devstack IP as nameserver and then disable answering anything18:34
johnsomfrickler Thanks for the details, it didn't reproduce for me local so I was trying to gather some more info.18:42
eanderssonIndeed! Thanks for the details18:44
eanderssonfrickler does dns.query.tcp also require an ip?18:45
eanderssonhttps://github.com/openstack/designate/blob/897fc7925bd7c821dcc13df577c0ec75974f5458/designate/mdns/notify.py#L30218:47
eanderssonhttps://github.com/openstack/designate/blob/05343d4226822da8b9776201ea18e000d366573d/designate/worker/utils.py#L6818:47
fricklereandersson: yes18:47
eanderssonI wonder if these two are meant to be different18:47
eanderssonor if that is just an oversight18:48
eanderssonThe notify implementation wraps host  with socket.gethostbyname(host),18:48
eanderssonwhile the worker one does not18:49
fricklerI think both need to be the same https://dnspython.readthedocs.io/en/stable/query.html18:51
fricklerwhen reproducing locally I was also first tricked by the eventlet wrapper. needed a held node and debugging in-place to find that out18:52
fricklereandersson: actually the wrapped solution doesn't sound correct to me either. it only does ipv4 and I fear it will also fail when host already is an IP address instead of a name https://docs.python.org/3.8/library/socket.html#socket.gethostbyname19:36
fricklerseems we also need to do some proper IPv6 testing19:36
crohmanneandersson: Thanks for the info. In the meantime I shall be hooking up an DLM to our designate then.20:27
eanderssonfrickler that could be why the new impl does not have it20:37
eanderssoncrohmann: let me know if you run into any issues20:38
eanderssonworst case you can just throw memcached in there :D it's what we use for our CI20:38
eanderssonfrickler if you want I can take a stab at implementing / fixing that tonight21:18
johnsomeandersson I think I agree with frickler on this "to work properly, it would need to setup a zone with the local devstack IP as nameserver and then disable answering anything" really, this test is going to require a lot more setup. Otherwise it is just always going to skip.21:52
johnsomThis test was passing for bogus reasons before.21:56

Generated by irclog2html.py 2.17.2 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!