libp2p / js-libp2p-amino-dht-bootstrapper

A CLI for starting an Amino DHT bootstrapper
Other
1 stars 2 forks source link

feat: deploy js-libp2p bootstrapper #18

Open SgtPooki opened 9 months ago

SgtPooki commented 9 months ago

This issue is tracking the deployment of this bootstrap on our bifrost infra

discussed at https://pl-strflt.notion.site/mob-create-js-libp2p-based-Amino-DHT-bootstrapper-e7793d5a79764df6a08dbc0474935c4d?pvs=4

### Tasks
- [ ] Initial alpha deployment https://github.com/libp2p/js-libp2p-amino-dht-bootstrapper/pull/135
- [ ] Figure out why memory use is slowly increasing
- [ ] Get a domain name
- [ ] deploy with terraform and add to waterworks monitoring
SgtPooki commented 8 months ago

unassigning this so I can stay focused on Helia and IPFS stuff

dhuseby commented 2 months ago

@wemeetagain was going to try to deploy on chainsafe infra but got stalled.

dhuseby commented 2 months ago

@SgtPooki to deploy a bootstrapper on sgtpooki.com

SgtPooki commented 2 months ago

it could use some robustness and productionization, but it's deployed:

╰─ ✔ ❯ ./vole libp2p identify /ip4/147.75.198.229/tcp/4003/ws/p2p/12D3KooWQgrExcg6dkCdiTER3G3ARe14PZ4cLhinKtRcLHsvnk1Q                                  14.88   17.1G   64%   78%  ─╯
PeerID: "12D3KooWQgrExcg6dkCdiTER3G3ARe14PZ4cLhinKtRcLHsvnk1Q"
Protocol version: "ipfs/0.1.0"
Agent version: "libp2p/1.5.1 UserAgent=v20.13.0"
Listen addresses:
    - "/ip4/147.75.198.229/tcp/4001/p2p/12D3KooWQgrExcg6dkCdiTER3G3ARe14PZ4cLhinKtRcLHsvnk1Q"
    - "/ip4/147.75.198.229/tcp/4003/ws/p2p/12D3KooWQgrExcg6dkCdiTER3G3ARe14PZ4cLhinKtRcLHsvnk1Q"
Protocols:
    - "/ipfs/id/1.0.0"
    - "/ipfs/id/push/1.0.0"
    - "/ipfs/kad/1.0.0"
    - "/libp2p/autonat/1.0.0"
    - "/libp2p/circuit/relay/0.2.0/hop"
    - "/webrtc-signaling/0.0.1"

Fixed by https://github.com/libp2p/js-libp2p-amino-dht-bootstrapper/pull/135

SgtPooki commented 2 months ago

I got some graphs using the metrics dashboards from helia-http-gateway:

image image image
SgtPooki commented 2 months ago

graph of last 24 hours (not full because it was only started yesterday afternoon) seems to show steadily increasing memory.

image
achingbrain commented 2 months ago

Does it need autonat? We can pre-configure it with public announce addresses, right? No need for it to try to detect what these are.

Though I guess we want it to function as a verifier for other autonat peers.

SgtPooki commented 2 months ago

We could just announce the ip/domain for sure, but as a bootstrap node I think it makes sense to help any "startup" things needed by peers. I had autonat disabled at first, but enabled it when docker wasn't working with port publishing, and then just left it when switching to --network host

here's nodejs metrics from the same helia-http-gateway dashboards (-old is the blue increasing line):

image
SgtPooki commented 1 month ago

FYI @achingbrain it looks like they may be correlated with TCP listener errors?

image
2color commented 1 month ago

Weirdly, I cannot resolve the peerID from the delegated routing endpoint: https://delegated-ipfs.dev/routing/v1/peers/12D3KooWQgrExcg6dkCdiTER3G3ARe14PZ4cLhinKtRcLHsvnk1Q

SgtPooki commented 1 month ago

Weirdly, I can resolve the peerID from the delegated routing endpoint: delegated-ipfs.dev/routing/v1/peers/12D3KooWQgrExcg6dkCdiTER3G3ARe14PZ4cLhinKtRcLHsvnk1Q

Can or cannot? It's only returning {"Peers":null} for me right now, but some of the DHT provide issues Alex recently fixed (talked about during Helia WG) may be related?

If "can" is correct, why is that weird?

2color commented 1 month ago

I meant that I cannot resolve.