Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

V3 Subgraph: Set up dedicated graph node infrastructure for V3 subgraph. #44

Closed
kkennis opened this issue Mar 31, 2021 · 7 comments
Closed

Comments

@kkennis
Copy link
Contributor

kkennis commented Mar 31, 2021

We have graph nodes running in GCP (for instance, currently indexing V2), but for V3 we want a dedicated graph node for reliability's sake. This graph node can share a turbo-geth instance with the other graph nodes - the private IP for this node is available in the Instances section of GCP.

The implementor of this task should create the node, start it, and make it ready for subgraph deployment.

Acceptance Criteria:

  • Graph node infrastructure set up in GCP, with similar architecture as existing graph nodes (container-optimized OS)
  • Graph node instance should also run IPFS
  • Easy startup and process management script for the graph node, which includes connection string URLs for postgres, IPFS, and turbogeth
  • Proper configuration and tuning, including target block range, pg pool size, and other needed environment variables.
  • Build toolchain for the graph node, including local Rust and cargo environment
@zmanian
Copy link

zmanian commented Mar 31, 2021

Open questions

Should we run open-ethereum and turbo geth or just turbogeth?

Turbo geth and the graph index node have had releases so we should be updating to the latest version.

We should front load all dev ops tasks

@taariq
Copy link
Contributor

taariq commented Apr 1, 2021

Question: when is this infra to be delivered?

@zmanian
Copy link

zmanian commented Apr 5, 2021

We should an influx db and the dex agnostic data feeder to the infra requirements for launch.

@tony-iqlusion
Copy link

I took a look at the managed options for InfluxDB on GCP:

https://www.influxdata.com/products/influxdb-cloud/

Google Cloud Platform (GCP): US Central (Iowa)

It looks like they're only in us-central1 which might be a bit problematic from a latency perspective. They had a form to fill out to suggest additional regions and I went ahead and suggested us-west1.

@poldsam
Copy link

poldsam commented Apr 5, 2021

Zaki and I were are discussing setting up one (or more) turbogeth nodes dedicated to v3, based on a current turbogeth snapshot. Set up a new graph node for it and connect it to a separate PSQL database. Connecting several graph nodes to the same turbogeth has limitations and is likely to slow things down.

Infrastructure deployment plan for May 5th proposed next steps:

  • Set up another turbogeth node
  • Take a snapshot of the current turbogeth
  • Set up a new graph node
  • Deploy new PSQL database for the graph node
  • Connect the price feeder to Influx BD
  • Have the price feeder communicate with the new turbogeth node

attaching a whiteboard chart with the proposed flow
IMG_2106

@jackzampolin
Copy link

I believe this is also complete cc @kkennis

@kkennis
Copy link
Contributor Author

kkennis commented May 7, 2021

Done! Thanks team

@kkennis kkennis closed this as completed May 7, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

No branches or pull requests

6 participants