Skip to content

Commit

Permalink
Add documentation for connect external store node (#87)
Browse files Browse the repository at this point in the history
* Add documentation for connect external store node

* add new page to summary.md
  • Loading branch information
stubbsta authored Sep 16, 2024
1 parent 0cf2b92 commit 4456278
Show file tree
Hide file tree
Showing 2 changed files with 53 additions and 0 deletions.
1 change: 1 addition & 0 deletions src/SUMMARY.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,4 +6,5 @@
- [Connect external full node](./connect-full-node.md)
- [Connect external spam node](./connect-spam-node.md)
- [Connect external light node](./connect-light-node.md)
- [Connect external store node](./connect-store-node.md)
- [Register memberships](./register-memberships.md)
52 changes: 52 additions & 0 deletions src/connect-store-node.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
# Connect external store node

One or more external store nodes can be connected to the waku-simulator network by using configuration similar to that shown below. The store node(s) can use the DB as backend from an existing staging or production system DB or a custom one. When connecting to any DB ensure that the `store-message-retention-policy` matches that of the system.
The staticnode that the store node connects to can be any existing node in the waku-simulator network, alternatively use the discv5 configuration.

```bash
--discv5-discovery=true \
--discv5-enr-auto-update=True \
--discv5-bootstrap-node=BOOTSTRAP_ENR\
```

The store node can be queried via the [waku rest API]( https://waku-org.github.io/waku-rest-api/#get-/store/v3/messages).
An easy way to find a message hash to query is by checking the store node logs for the `message archived` message:

```bash
docker logs nwaku_storenode_1 | grep -i "message archived"
```
The store node will need to have log-level set to DEBUG for this logging to be available.

The [message-finder](https://github.com/waku-org/message-finder) tool could also be useful for store node testing.


```bash
docker run -it --network waku-simulator_simulation --name nwaku_storenode_1 -d harbor.status.im/wakuorg/nwaku:latest \
--relay=true\
--rest=true\
--rest-address=0.0.0.0\
--rest-port=8645\
--log-level=DEBUG\
--pubsub-topic=/waku/2/rs/66/0\
--cluster-id=66\
--metrics-server=true\
--discv5-discovery=true\
--discv5-enr-auto-update=true\
--store=true\
--store-message-db-url=<e.g. postgres://pguser:[email protected]:5432/postgres>\
--store-message-retention-policy=size:120GB\
--staticnode=/ip4/0.0.0.0/tcp/60000/p2p/16Uiu2HAmC8Fe4Egsq6AKubmBPr52TQmwc26yoCkszwo6dfQncZ4m\
--nodekey=5978783f8b1a16795032371fff7a526af352d9dca38179af7d71c0122942fa20

```



🎯**Goals**:

- Connect a store node(s) to the network for ad hoc store protocol testing.
- Verify that store queries get the expected results.

👀**Observability**:

- Check the logs of the newly connected store node, ensuring the behaviour matches the expected.

0 comments on commit 4456278

Please sign in to comment.