status-im / infra-status-legacy

Infrastructure for old Status fleet
https://github.com/status-im/nim-waku
1 stars 3 forks source link

Create deployable Merkle tree lists for status fleets #17

Closed jm-clius closed 2 years ago

jm-clius commented 2 years ago

Problem

We need two deployed EIP-1459 lists of ENRs for the status fleets (one for prod and one for test). The easiest way to do this is to script the tree_creator utility.

For each tree that should be created, the tool must be run with:

  1. a private key that should be generated and used for subsequent versions of the same tree (--private-key option)
  2. ENR records for all nodes extracted that should be connected to each other on startup (repeated --enr-record option)
  3. domain name for the tree (--domain option)

Values

Domain

I'm thinking: prod.nodes.status.im and test.nodes.status.im (This is to be consistent with the patterns we used for the wakuv2.* domain names, without the redundant prod.status.nodes.status.im - I'm happy if we drop the first redundant status, e.g. just prod.nodes.status.im and test.nodes.status.im - @richard-ramos any ideas/objections?)

ENR records

For test.nodes.status.im ENR records obtained via debug info call on the RPC API:

For prod.nodes.status.im ENR records obtained via debug info call on the RPC API:

Important outputs

The tree_creator provides an RPC API with two important outputs:

jakubgs commented 2 years ago

So, here's some problems I have with this, as discussed:

  1. The DNS entries need to be named after fleet names otherwise we'll just create confusion.
  2. Creating DNS discovery records across multiple fleets sounds like bad organization and also prone to confusion.
  3. Nodes need to support specifying multiple DNS discovery URLs to more easily pick which fleets to connect to.

The way I envisioned this is that we'd be easily able to pick and chose which fleets connect to which with DNS URLs:

--dns-discovery-url=enrtree://ABC789@test.wakuv2.nodes.status.im
--dns-discovery-url=enrtree://XYZ123@test.go-waku.nodes.status.im

If supporting specifying multiple URLs is a major undertaking we can for now work around that by using DNS URLs just for cross-fleet discovery, rather than both in-fleet and cross-fleet discovery for now. That does leave us with the flaky waku-peers script/timer, but it is what it is.

jm-clius commented 2 years ago

Good points.

I agree that supporting multiple URLs is a good feature to have. Should that the eth DNS nodes list(s) generally aim to have the same span as the discv5 routing tables (i.e. across different fleets). We don't have the capability yet to crawl the DHT for similar list, but eventually we may want a super list which mirrors the dht, not the fleets (i.e. is a representative sample of the network).

That does leave us with the flaky waku-peers script/timer, but it is what it is.

If discv5 works as expected, these nodes will connect to each other although it will take a bit longer.

jm-clius commented 2 years ago

My interim suggestion is to create and deploy simple lists only for status.test and status.prod fleets (including the bridges). Both the go-waku and nwaku fleets can then point to these lists and use this as a bootstrapping mechanism. If discv5 works as expected, these nodes will soon establish connections to each other (and every other node that joins the network).

jakubgs commented 2 years ago

I see, thanks for explaining. We can try by creating DNS record trees for status.test and status.prod, and try to connect go-waku.* fleets respectively using that record and see if that works. If it doesn't I think we can try doing a cross-fleet record in order to not block development, if that's what's necessary.

My main issue with doing cross-fleet trees is that it combines fleets actually intended for use with the app - status.* fleets - with fleets intended for development and testing - like wakuv2.* or go-waku.*.

I'll start working on some kind of rough automation for this next week.

jakubgs commented 2 years ago

There are essentially 3 elements to glue together here:

  1. Consul catalog as a source of ENR records of nodes.
  2. The tree_creator utility from nim-dnsdisc as a source of DNS records.
  3. CloudFlare API as a way to create the DNS records.

But the issue is that there's no way to create per-subdomain API tokens for CloudFlare: https://community.cloudflare.com/t/restrict-scope-api-tokens-to-a-subdomain/156702

Which means I don't feel comfortable with automating things on a host since it would need to include a token that his quite wide permissions which can be only narrowed down to a domain(zone). For that reason and because the hosts don't change that often I think this automation would be mostly to be called manually locally.

jakubgs commented 2 years ago

Here's the initial verison of the Python script for this:

Needs some more work.

jakubgs commented 2 years ago

After some script improvements this is looking good: https://github.com/status-im/infra-utils/commit/41b57c5a

 > consul/dnsdisc.py -n nim-waku-enr -e status -s test -d status.test.nodes.status.im -x 
2022-09-14 20:55:01,410 [INFO] Service found: node-01.do-ams3.status.test:nim-waku-enr
2022-09-14 20:55:01,410 [INFO] Service found: node-01.gc-us-central1-a.status.test:nim-waku-enr
2022-09-14 20:55:01,411 [INFO] Service found: node-01.ac-cn-hongkong-c.status.test:nim-waku-enr
2022-09-14 20:55:06,511 [INFO] Creating record: 7CXIFKE7D53SEHS43JS3SGVL6Y.status.test.nodes.status.im
2022-09-14 20:55:06,512 [INFO] Creating record: D4Z2YS6PTBHATQZPCZCETMGLJU.status.test.nodes.status.im
2022-09-14 20:55:06,512 [INFO] Creating record: FDXN3SN67NA5DKA4J2GOK7BVQI.status.test.nodes.status.im
2022-09-14 20:55:06,512 [INFO] Creating record: LUN6VJSBL5ALPLT7UNMKWNQBWQ.status.test.nodes.status.im
2022-09-14 20:55:06,512 [INFO] Creating record: Z7Z3T7BILLXM7SDN5DATJTM4KY.status.test.nodes.status.im
2022-09-14 20:55:06,512 [INFO] Creating record: status.test.nodes.status.im
2022-09-14 20:55:06,512 [WARNING] Dry-run mode! No changes made.

I will need to save a private key for these records in infra-pass.

jakubgs commented 2 years ago

I have put the new key in infra-pass under services/dns-discovery/private-key and created the records for status.test:

 > consul/dnsdisc.py -n nim-waku-enr -e status -s test -d test.nodes.status.im   
[INFO] Service found: node-01.do-ams3.status.test:nim-waku-enr
[INFO] Service found: node-01.gc-us-central1-a.status.test:nim-waku-enr
[INFO] Service found: node-01.ac-cn-hongkong-c.status.test:nim-waku-enr
[INFO] Creating record: 7cxifke7d53sehs43js3sgvl6y.test.nodes.status.im
[INFO] Creating record: d4z2ys6ptbhatqzpczcetmglju.test.nodes.status.im
[INFO] Creating record: fdxn3sn67na5dka4j2gok7bvqi.test.nodes.status.im
[INFO] Creating record: lun6vjsbl5alplt7unmkwnqbwq.test.nodes.status.im
[INFO] Creating record: test.nodes.status.im
[INFO] Creating record: z7z3t7billxm7sdn5datjtm4ky.test.nodes.status.im

Here's the result:

 > dig +short TXT test.nodes.status.im    
"enrtree-root:v1 e=LUN6VJSBL5ALPLT7UNMKWNQBWQ l=FDXN3SN67NA5DKA4J2GOK7BVQI seq=1 sig=DCfy1ZcgFOsvbviuooXKDdsav-_U9t53jQ5CdqSnVaxfYcZqWgiNRJ5pkKlOVlJhQ_k9RXBzafAZ-HwAwxMiyAA"

@jm-clius can you check if this looks correct?

jm-clius commented 2 years ago

Thanks, @jakubgs. I went through each record by hand to double check and the tree structure looks 👍. The only thing we can still check is the signature. If you can provide me with the enrtree:// url I could run the whole tree through verification.

jm-clius commented 2 years ago

It works and all records, including tree root signature, can be verified. End result:

INF 2022-09-15 10:19:13.021+01:00 Successfully discovered nodes              topics="wakudnsdisc" tid=237 file=waku_dnsdisc.nim:78 count=3

Thanks!

jakubgs commented 2 years ago

I added support for printing the enrtree:// URL: https://github.com/status-im/infra-utils/commit/3137f4bc

And created the records for status.prod:

 > consul/dnsdisc.py -n nim-waku-enr -e status -s prod -d prod.nodes.status.im   
[INFO] Service found: node-01.do-ams3.status.prod:nim-waku-enr
[INFO] Service found: node-02.do-ams3.status.prod:nim-waku-enr
[INFO] Service found: node-01.gc-us-central1-a.status.prod:nim-waku-enr
[INFO] Service found: node-02.gc-us-central1-a.status.prod:nim-waku-enr
[INFO] Service found: node-01.ac-cn-hongkong-c.status.prod:nim-waku-enr
[INFO] Service found: node-02.ac-cn-hongkong-c.status.prod:nim-waku-enr
[INFO] Creating record: 7sj7kvy3pv2jwwdwdz5q6u2oju.prod.nodes.status.im
[INFO] Creating record: eqxg7xm7nymtdb5gckrmfow5de.prod.nodes.status.im
[INFO] Creating record: fdxn3sn67na5dka4j2gok7bvqi.prod.nodes.status.im
[INFO] Creating record: hifwzhyriafxrzdxt5ern7gde4.prod.nodes.status.im
[INFO] Creating record: ppabzapubec55xan2vhfws764a.prod.nodes.status.im
[INFO] Creating record: prod.nodes.status.im
[INFO] Creating record: r4rogp5uanj5g5h4igdx6c2uje.prod.nodes.status.im
[INFO] Creating record: tzvjlgmof5z7qu7czpvhvmudcm.prod.nodes.status.im
[INFO] Creating record: xfjbatotshsgrkbo2ajkk7k7pm.prod.nodes.status.im
[INFO] URL: enrtree://AOGECG2SPND25EEFMAJ5WF3KSGJNSGV356DSTL2YVLLZWIV6SAYBM@prod.nodes.status.im
jakubgs commented 2 years ago

To summarize the URLs are:

Now I guess the time is to try using them with the fleets.

jm-clius commented 2 years ago

Tree works here too. 🚀

INF 2022-09-15 11:07:18.674+01:00 Successfully discovered nodes              topics="wakudnsdisc" tid=240 file=waku_dnsdisc.nim:78 count=6

One thing, discovered 6 nodes for status.prod and 3 for status.test - has the bridge in each been included, because I think it's one less than expected in each case.

jakubgs commented 2 years ago

You're right. The bridge is missing, I'll need to do a separate Consul query to get that.

Honestly, I kinda thought the bridge is more of a plumbing node that doesn't need to be discovered, and we could just add it using the --staticnode flag, but as @jm-clius remindedo me that flag does not guarantee reconnection when a peer is lost.

I'll have to update the script to query multiple services.

jakubgs commented 2 years ago

Had to add missing ENR service for the bridge to the Consul catalog: https://github.com/status-im/infra-status/commit/29da7cbd Also added support for querying multiple services to the script: https://github.com/status-im/infra-utils/commit/3545787b

 > consul/dnsdisc.py -n nim-waku-enr -n nim-waku-bridge-enr -e status -s test -d test.nodes.status.im   
[INFO] Service found: node-01.do-ams3.status.test:nim-waku-enr
[INFO] Service found: node-01.gc-us-central1-a.status.test:nim-waku-enr
[INFO] Service found: node-01.ac-cn-hongkong-c.status.test:nim-waku-enr
[INFO] Service found: bridge-01.do-ams3.status.test:nim-waku-bridge-enr
[INFO] Deleting record: lun6vjsbl5alplt7unmkwnqbwq.test.nodes.status.im
[INFO] Deleting record: test.nodes.status.im
[INFO] Creating record: 2uy7adjclueyxubwvuefa4oope.test.nodes.status.im
[INFO] Creating record: qefmzmlwiocrxzbixe2lhfl3ay.test.nodes.status.im
[INFO] Creating record: test.nodes.status.im
[INFO] URL: enrtree://AOGECG2SPND25EEFMAJ5WF3KSGJNSGV356DSTL2YVLLZWIV6SAYBM@test.nodes.status.im
 > consul/dnsdisc.py -n nim-waku-enr -n nim-waku-bridge-enr -e status -s prod -d prod.nodes.status.im   
[INFO] Service found: node-01.do-ams3.status.prod:nim-waku-enr
[INFO] Service found: node-02.do-ams3.status.prod:nim-waku-enr
[INFO] Service found: node-01.gc-us-central1-a.status.prod:nim-waku-enr
[INFO] Service found: node-02.gc-us-central1-a.status.prod:nim-waku-enr
[INFO] Service found: node-01.ac-cn-hongkong-c.status.prod:nim-waku-enr
[INFO] Service found: node-02.ac-cn-hongkong-c.status.prod:nim-waku-enr
[INFO] Service found: bridge-01.do-ams3.status.prod:nim-waku-bridge-enr
[INFO] Deleting record: 7sj7kvy3pv2jwwdwdz5q6u2oju.prod.nodes.status.im
[INFO] Deleting record: prod.nodes.status.im
[INFO] Creating record: 4up6aerwp6launcscws7faf4ya.prod.nodes.status.im
[INFO] Creating record: prod.nodes.status.im
[INFO] Creating record: qnpqb6oxijt6dhxgui5fztntru.prod.nodes.status.im
[INFO] URL: enrtree://AOGECG2SPND25EEFMAJ5WF3KSGJNSGV356DSTL2YVLLZWIV6SAYBM@prod.nodes.status.im

@jm-clius should work now.

jm-clius commented 2 years ago

Works! Thank you: For test:

INF 2022-09-15 11:54:37.343+01:00 Successfully discovered nodes              topics="wakudnsdisc" tid=244 file=waku_dnsdisc.nim:78 count=4

For prod:

INF 2022-09-15 11:55:10.227+01:00 Successfully discovered nodes              topics="wakudnsdisc" tid=246 file=waku_dnsdisc.nim:78 count=7
jakubgs commented 2 years ago

Updated the DNS records because the node ENR records now include the websocket address:

 > consul/dnsdisc.py -n nim-waku-enr -n nim-waku-bridge-enr -e status -s test -d test.nodes.status.im   
[INFO] Service found: node-01.do-ams3.status.test:nim-waku-enr
[INFO] Service found: node-01.gc-us-central1-a.status.test:nim-waku-enr
[INFO] Service found: node-01.ac-cn-hongkong-c.status.test:nim-waku-enr
[INFO] Service found: bridge-01.do-ams3.status.test:nim-waku-bridge-enr
[INFO] Deleting record: 7cxifke7d53sehs43js3sgvl6y.test.nodes.status.im
[INFO] Deleting record: d4z2ys6ptbhatqzpczcetmglju.test.nodes.status.im
[INFO] Deleting record: qefmzmlwiocrxzbixe2lhfl3ay.test.nodes.status.im
[INFO] Deleting record: test.nodes.status.im
[INFO] Deleting record: z7z3t7billxm7sdn5datjtm4ky.test.nodes.status.im
[INFO] Creating record: 2do733kggyg7gnz3dokxfhoqwu.test.nodes.status.im
[INFO] Creating record: 3z7qqmkbqrq7pvxqmfdvgfpwce.test.nodes.status.im
[INFO] Creating record: jxy3xvy6eghpzpuihvvqlkonwq.test.nodes.status.im
[INFO] Creating record: test.nodes.status.im
[INFO] Creating record: yklokh6lwwboumamiba4jljdbu.test.nodes.status.im
[INFO] URL: enrtree://AOGECG2SPND25EEFMAJ5WF3KSGJNSGV356DSTL2YVLLZWIV6SAYBM@test.nodes.status.im
 > consul/dnsdisc.py -n nim-waku-enr -n nim-waku-bridge-enr -e status -s prod -d prod.nodes.status.im   
[INFO] Service found: node-01.do-ams3.status.prod:nim-waku-enr
[INFO] Service found: node-02.do-ams3.status.prod:nim-waku-enr
[INFO] Service found: node-01.gc-us-central1-a.status.prod:nim-waku-enr
[INFO] Service found: node-02.gc-us-central1-a.status.prod:nim-waku-enr
[INFO] Service found: node-01.ac-cn-hongkong-c.status.prod:nim-waku-enr
[INFO] Service found: node-02.ac-cn-hongkong-c.status.prod:nim-waku-enr
[INFO] Service found: bridge-01.do-ams3.status.prod:nim-waku-bridge-enr
[INFO] Deleting record: eqxg7xm7nymtdb5gckrmfow5de.prod.nodes.status.im
[INFO] Deleting record: hifwzhyriafxrzdxt5ern7gde4.prod.nodes.status.im
[INFO] Deleting record: ppabzapubec55xan2vhfws764a.prod.nodes.status.im
[INFO] Deleting record: prod.nodes.status.im
[INFO] Deleting record: qnpqb6oxijt6dhxgui5fztntru.prod.nodes.status.im
[INFO] Deleting record: r4rogp5uanj5g5h4igdx6c2uje.prod.nodes.status.im
[INFO] Deleting record: tzvjlgmof5z7qu7czpvhvmudcm.prod.nodes.status.im
[INFO] Deleting record: xfjbatotshsgrkbo2ajkk7k7pm.prod.nodes.status.im
[INFO] Creating record: 2xehny3o2tqgk57riazetiq4xu.prod.nodes.status.im
[INFO] Creating record: 7cu4pvmzpmh3kr4v3gwsycwff4.prod.nodes.status.im
[INFO] Creating record: f2vvfp52vkwytvkijzcahtf4jq.prod.nodes.status.im
[INFO] Creating record: hvnouadysal2haiup32vqdbrlm.prod.nodes.status.im
[INFO] Creating record: oocj4r5zh7zgr3dpbc2d23bpoq.prod.nodes.status.im
[INFO] Creating record: prod.nodes.status.im
[INFO] Creating record: uis6acbrso4gw5k5z4kzoo4cva.prod.nodes.status.im
[INFO] Creating record: vayreo3yp4g3eto3ximu7xkuci.prod.nodes.status.im
[INFO] URL: enrtree://AOGECG2SPND25EEFMAJ5WF3KSGJNSGV356DSTL2YVLLZWIV6SAYBM@prod.nodes.status.im

The enrtree:// URLs are unchanged, as they should be.

jakubgs commented 2 years ago

Changes for go-waku.* and status.* fleets:

For now I've left the waku-peers script working. And I've excluded the bridge from the prod DNS records.

jakubgs commented 2 years ago

Results:

node-01.do-ams3.go-waku.test | CHANGED | rc=0 | (stdout)       --dns-discovery-url=enrtree://AOGECG2SPND25EEFMAJ5WF3KSGJNSGV356DSTL2YVLLZWIV6SAYBM@test.nodes.status.im
node-01.gc-us-central1-a.go-waku.test | CHANGED | rc=0 | (stdout)       --dns-discovery-url=enrtree://AOGECG2SPND25EEFMAJ5WF3KSGJNSGV356DSTL2YVLLZWIV6SAYBM@test.nodes.status.im
node-01.ac-cn-hongkong-c.go-waku.test | CHANGED | rc=0 | (stdout)       --dns-discovery-url=enrtree://AOGECG2SPND25EEFMAJ5WF3KSGJNSGV356DSTL2YVLLZWIV6SAYBM@test.nodes.status.im
node-01.do-ams3.go-waku.prod | CHANGED | rc=0 | (stdout)       --dns-discovery-url=enrtree://AOGECG2SPND25EEFMAJ5WF3KSGJNSGV356DSTL2YVLLZWIV6SAYBM@prod.nodes.status.im
node-01.gc-us-central1-a.go-waku.prod | CHANGED | rc=0 | (stdout)       --dns-discovery-url=enrtree://AOGECG2SPND25EEFMAJ5WF3KSGJNSGV356DSTL2YVLLZWIV6SAYBM@prod.nodes.status.im
node-01.ac-cn-hongkong-c.go-waku.prod | CHANGED | rc=0 | (stdout)       --dns-discovery-url=enrtree://AOGECG2SPND25EEFMAJ5WF3KSGJNSGV356DSTL2YVLLZWIV6SAYBM@prod.nodes.status.im
node-01.do-ams3.status.test | CHANGED | rc=0 | (stdout)       --dns-discovery-url=enrtree://AOGECG2SPND25EEFMAJ5WF3KSGJNSGV356DSTL2YVLLZWIV6SAYBM@test.nodes.status.im
node-01.gc-us-central1-a.status.test | CHANGED | rc=0 | (stdout)       --dns-discovery-url=enrtree://AOGECG2SPND25EEFMAJ5WF3KSGJNSGV356DSTL2YVLLZWIV6SAYBM@test.nodes.status.im
node-01.ac-cn-hongkong-c.status.test | CHANGED | rc=0 | (stdout)       --dns-discovery-url=enrtree://AOGECG2SPND25EEFMAJ5WF3KSGJNSGV356DSTL2YVLLZWIV6SAYBM@test.nodes.status.im
node-02.do-ams3.status.prod | CHANGED | rc=0 | (stdout)       --dns-discovery-url=enrtree://AOGECG2SPND25EEFMAJ5WF3KSGJNSGV356DSTL2YVLLZWIV6SAYBM@prod.nodes.status.im
node-01.do-ams3.status.prod | CHANGED | rc=0 | (stdout)       --dns-discovery-url=enrtree://AOGECG2SPND25EEFMAJ5WF3KSGJNSGV356DSTL2YVLLZWIV6SAYBM@prod.nodes.status.im
node-02.gc-us-central1-a.status.prod | CHANGED | rc=0 | (stdout)       --dns-discovery-url=enrtree://AOGECG2SPND25EEFMAJ5WF3KSGJNSGV356DSTL2YVLLZWIV6SAYBM@prod.nodes.status.im
node-01.gc-us-central1-a.status.prod | CHANGED | rc=0 | (stdout)       --dns-discovery-url=enrtree://AOGECG2SPND25EEFMAJ5WF3KSGJNSGV356DSTL2YVLLZWIV6SAYBM@prod.nodes.status.im
node-02.ac-cn-hongkong-c.status.prod | CHANGED | rc=0 | (stdout)       --dns-discovery-url=enrtree://AOGECG2SPND25EEFMAJ5WF3KSGJNSGV356DSTL2YVLLZWIV6SAYBM@prod.nodes.status.im
node-01.ac-cn-hongkong-c.status.prod | CHANGED | rc=0 | (stdout)       --dns-discovery-url=enrtree://AOGECG2SPND25EEFMAJ5WF3KSGJNSGV356DSTL2YVLLZWIV6SAYBM@prod.nodes.status.im
jakubgs commented 2 years ago

I've also updated the DNS records for wakuv2.* fleets:

 > consul/dnsdisc.py -n nim-waku-v2-enr -e wakuv2 -s test -d test.waku.nodes.status.im   
[INFO] Service found: node-01.do-ams3.wakuv2.test:nim-waku-v2-enr
[INFO] Service found: node-01.gc-us-central1-a.wakuv2.test:nim-waku-v2-enr
[INFO] Service found: node-01.ac-cn-hongkong-c.wakuv2.test:nim-waku-v2-enr
[INFO] Deleting record: 6mrd3ikzee5cox7tybuzc5l4mu.test.waku.nodes.status.im
[INFO] Deleting record: egf7dj6ceodmebfe2uf7xqoaai.test.waku.nodes.status.im
[INFO] Deleting record: ojslbzj7kbwlz4ye6ywkl2dzi4.test.waku.nodes.status.im
[INFO] Deleting record: test.waku.nodes.status.im
[INFO] Deleting record: wf4lispxf3qrmzuoiullvlx6m4.test.waku.nodes.status.im
[INFO] Creating record: 3s6uuuu5pemvs6hn5sf7tqi4a4.test.waku.nodes.status.im
[INFO] Creating record: kbrq4xg3y56bynq5r3zlzrk6ou.test.waku.nodes.status.im
[INFO] Creating record: test.waku.nodes.status.im
[INFO] Creating record: u63w4rlnra74mkwkr2zftrvzqu.test.waku.nodes.status.im
[INFO] Creating record: xm2q6nsaqrmhdujnnomabbxcma.test.waku.nodes.status.im
[INFO] URL: enrtree://AOGECG2SPND25EEFMAJ5WF3KSGJNSGV356DSTL2YVLLZWIV6SAYBM@test.waku.nodes.status.im
 > consul/dnsdisc.py -n nim-waku-v2-enr -e wakuv2 -s prod -d prod.waku.nodes.status.im    
[INFO] Service found: node-01.do-ams3.wakuv2.prod:nim-waku-v2-enr
[INFO] Service found: node-01.gc-us-central1-a.wakuv2.prod:nim-waku-v2-enr
[INFO] Service found: node-01.ac-cn-hongkong-c.wakuv2.prod:nim-waku-v2-enr
[INFO] Deleting record: 7syxfjttxrno22mnd7ob63dojm.prod.waku.nodes.status.im
[INFO] Deleting record: duswqsjuobvm6cgrivke7towvq.prod.waku.nodes.status.im
[INFO] Deleting record: ichvqp6rkghsscg6ijhfiptcwe.prod.waku.nodes.status.im
[INFO] Deleting record: j3eapx7uxjg3pzofwyxg6haohu.prod.waku.nodes.status.im
[INFO] Deleting record: prod.waku.nodes.status.im
[INFO] Creating record: 7wv4enn3okrx2ug7pxeascptxu.prod.waku.nodes.status.im
[INFO] Creating record: kmkofs2a5ugz7lzmmzyyljhp3a.prod.waku.nodes.status.im
[INFO] Creating record: prod.waku.nodes.status.im
[INFO] Creating record: pwuxh5pqx3gng5pztiaj4ong5y.prod.waku.nodes.status.im
[INFO] Creating record: tfu64z6lgc7a2klo4blnrjuabu.prod.waku.nodes.status.im
[INFO] URL: enrtree://AOGECG2SPND25EEFMAJ5WF3KSGJNSGV356DSTL2YVLLZWIV6SAYBM@prod.waku.nodes.status.im

URLs:

And I've removed the Terraform way of creating those: https://github.com/status-im/infra-nim-waku/commit/fd3f3f81

I consider this task done. @jm-clius please reopen it if there's something left to be done.