Implement stack to run lotus-node (mainnet and calibration) #1

Merged
dboreham merged 10 commits from ng-create-stack into main 2024-05-31 16:22:03 +00:00
Member

Part of Create stack for lotus mainnet and calibration

Part of [Create stack for lotus mainnet and calibration](https://www.notion.so/Create-stack-for-lotus-mainnet-and-calibration-700b4903f2004a4fb440ebb6922da954) - This PR is based on stack [mainnet-lotus](https://git.vdb.to/cerc-io/stack-orchestrator/src/branch/lotus-stack/stack_orchestrator/data/stacks/mainnet-lotus) in SO branch [lotus-stack](https://git.vdb.to/cerc-io/stack-orchestrator/src/branch/lotus-stack) - Use manually downloaded snapshot for running Lotus node with `DOCKER_LOTUS_IMPORT_SNAPSHOT` env - Support running Lotus node for Calibration network - Use `cerc-io/lotus` release [v1.27.0-rc3-interal-0.0.1](https://git.vdb.to/cerc-io/lotus/releases/tag/v1.27.0-rc3-interal-0.0.1) - Add Lotus node config params with default values - `LOTUS_FEVM_ENABLEETHRPC`: true - [Enables eth_rpc](https://git.vdb.to/cerc-io/lotus/src/tag/v1.27.0-rc3-interal-0.0.1/documentation/en/default-lotus-config.toml#L248) - `LOTUS_EVENTS_ENABLEACTOREVENTSAPI`: true - [Enables the Actor events API that enables clients to consume events](https://git.vdb.to/cerc-io/lotus/src/tag/v1.27.0-rc3-interal-0.0.1/documentation/en/default-lotus-config.toml#L279) - `LOTUS_INDEX_ENABLEMSGINDEX`: true - [Enables indexing of messages on chain](https://git.vdb.to/cerc-io/lotus/src/tag/v1.27.0-rc3-interal-0.0.1/documentation/en/default-lotus-config.toml#L325) - Should be the fix for incorrect `eth_call` behaviour - `LOTUS_CHAINSTORE_ENABLESPLITSTORE`: true - [Enable the splitstore](https://git.vdb.to/cerc-io/lotus/src/tag/v1.27.0-rc3-interal-0.0.1/blockstore/splitstore#splitstore-an-actively-scalable-blockstore-for-the-filecoin-chain) - `LOTUS_FEVM_ETHTXHASHMAPPINGLIFETIMEDAYS`: 0 - [Delete mappings that have been stored for more than x day in transaction hash lookup database](https://git.vdb.to/cerc-io/lotus/src/tag/v1.27.0-rc3-interal-0.0.1/documentation/en/default-lotus-config.toml#L255) - LOTUS_FVM_CONCURRENCY: 4 - [Adjust the amount of threads used for more concurrent FMV execution](https://git.vdb.to/cerc-io/lotus/src/tag/v1.27.0-rc3-interal-0.0.1/CHANGELOG.md?display=source#L1179) - LOTUS_SKIP_APPLY_TS_MESSAGE_CALL_WITH_GAS: 0 - [If node is a Storage Provider and is pushing many messages within a short period of time, then set to 1](https://git.vdb.to/cerc-io/lotus/src/tag/v1.27.0-rc3-interal-0.0.1/CHANGELOG.md?display=source#L1179) - Some config params that were set previously but no longer used in release [v1.27.0-rc3-interal-0.0.1](https://git.vdb.to/cerc-io/lotus/releases/tag/v1.27.0-rc3-interal-0.0.1) - `LOTUS_FEVM_EVENTS_MAXFILTERHEIGHTRANGE` - `LOTUS_FEVM_EVENTS_FILTERTTL` - `ALLOWED_DELAY` - `LOTUS_FEVM_ENABLEETHHASHTOFILECOINCIDMAPPING`
nabarun added 4 commits 2024-05-23 09:53:06 +00:00
nabarun force-pushed ng-create-stack from 4ed4491e00 to 092c19c337 2024-05-23 11:50:32 +00:00 Compare
nabarun changed title from Implement stack to run mainnet lotus-node to [WIP] Implement stack to run mainnet lotus-node 2024-05-23 12:22:05 +00:00
nabarun added 1 commit 2024-05-23 12:33:22 +00:00
nabarun force-pushed ng-create-stack from a0b893a0ad to e75c36ab1d 2024-05-23 12:34:27 +00:00 Compare
nabarun added 4 commits 2024-05-24 09:25:15 +00:00
nabarun self-assigned this 2024-05-24 09:44:30 +00:00
nabarun removed their assignment 2024-05-24 09:44:40 +00:00
nabarun self-assigned this 2024-05-24 09:45:00 +00:00
nabarun changed title from [WIP] Implement stack to run mainnet lotus-node to [WIP] Implement stack to run lotus-node (mainnet and calibration) 2024-05-24 09:45:48 +00:00
nabarun added 1 commit 2024-05-28 05:34:22 +00:00
nabarun changed title from [WIP] Implement stack to run lotus-node (mainnet and calibration) to Implement stack to run lotus-node (mainnet and calibration) 2024-05-28 05:38:00 +00:00
ashwin requested review from srw 2024-05-28 05:38:57 +00:00
ashwin requested review from dboreham 2024-05-28 05:38:57 +00:00
ashwin requested review from jonathanface 2024-05-28 05:38:58 +00:00
ashwin requested review from ashwin 2024-05-28 05:39:12 +00:00
ashwin approved these changes 2024-05-28 05:39:31 +00:00
dboreham approved these changes 2024-05-28 12:05:56 +00:00
Dismissed
@ -0,0 +1,156 @@
#####################################
Owner

Consider adding a comment that this file is a copy of the Dockerfile in the lotus repo with some local changes (also consider commenting the changes for ease of future manual merging upstream changes).

Consider adding a comment that this file is a copy of the Dockerfile in the lotus repo with some local changes (also consider commenting the changes for ease of future manual merging upstream changes).
nabarun marked this conversation as resolved
@ -0,0 +3,4 @@
source ${CERC_CONTAINER_BASE_DIR}/build-base.sh
SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
git stash
Owner

Should this be here?

Should this be here?
nabarun marked this conversation as resolved
@ -0,0 +49,4 @@
## Setup config
Inside deployment directory, open the `config.env` file and set following env variables:
Owner

Note that simple environment values can be specified on the deploy init command line like:

$ laconic-so --stack $(pwd)/stack-orchestrator/stacks/lotus-node deploy init --map-ports-to-host any-same --output lotus-node.yml --config CERC_LOTUS_NETWORK=mainnet,CERC_LOTUS_SNAPSHOT_PATH=/path-to-file/mainnet-snapshot.car.zst
$ more lotus-node.yml
stack: /home/david/projects/cerc/lotus-stack/stack-orchestrator/stacks/lotus-node
deploy-to: compose
config:
  CERC_LOTUS_NETWORK: mainnet
  CERC_LOTUS_SNAPSHOT_PATH: /path-to-file/mainnet-snapshot.car.zst
network:
  ports:
    lotus:
     - 0.0.0.0:1234:1234
     - 0.0.0.0:1235:1235
volumes:
  parameters: ./data/parameters
  lotus-repo: ./data/lotus-repo
  lotus_shared: ./data/lotus_shared
Note that simple environment values can be specified on the `deploy init` command line like: ``` $ laconic-so --stack $(pwd)/stack-orchestrator/stacks/lotus-node deploy init --map-ports-to-host any-same --output lotus-node.yml --config CERC_LOTUS_NETWORK=mainnet,CERC_LOTUS_SNAPSHOT_PATH=/path-to-file/mainnet-snapshot.car.zst $ more lotus-node.yml stack: /home/david/projects/cerc/lotus-stack/stack-orchestrator/stacks/lotus-node deploy-to: compose config: CERC_LOTUS_NETWORK: mainnet CERC_LOTUS_SNAPSHOT_PATH: /path-to-file/mainnet-snapshot.car.zst network: ports: lotus: - 0.0.0.0:1234:1234 - 0.0.0.0:1235:1235 volumes: parameters: ./data/parameters lotus-repo: ./data/lotus-repo lotus_shared: ./data/lotus_shared ```
nabarun marked this conversation as resolved
@ -0,0 +2,4 @@
name: lotus-node
description: "Lotus node stack"
repos:
- git.vdb.to/cerc-io/lotus@v1.27.0-rc3-interal-0.0.1
Owner

Consider not pinning the branch here. You can specify on the SO command line like:

laconic-so --stack $(pwd)/stack-orchestrator/stacks/lotus-node setup-repositories --branches git.vdb.to/cerc-io/lotus@v1.27.0-rc3-interal-0.0.1
Dev Root is: /home/david/cerc
Checking: /home/david/cerc/lotus: Needs to be fetched
100%|####################################################################################################################################################| 113k/113k [01:15<00:00, 1.49kB/s]
Checking
switching to branch v1.27.0-rc3-interal-0.0.1 in repo cerc-io/lotus
Consider not pinning the branch here. You can specify on the SO command line like: ``` laconic-so --stack $(pwd)/stack-orchestrator/stacks/lotus-node setup-repositories --branches git.vdb.to/cerc-io/lotus@v1.27.0-rc3-interal-0.0.1 Dev Root is: /home/david/cerc Checking: /home/david/cerc/lotus: Needs to be fetched 100%|####################################################################################################################################################| 113k/113k [01:15<00:00, 1.49kB/s] Checking switching to branch v1.27.0-rc3-interal-0.0.1 in repo cerc-io/lotus ```
nabarun marked this conversation as resolved
nabarun added 1 commit 2024-05-28 13:07:04 +00:00
dboreham approved these changes 2024-05-31 16:21:21 +00:00
Owner

Going to merge this one since it's the weekend and it would be nice to start using/enhancing it..

Going to merge this one since it's the weekend and it would be nice to start using/enhancing it..
dboreham merged commit 041c52a7cc into main 2024-05-31 16:22:03 +00:00
ashwin deleted branch ng-create-stack 2024-06-06 05:07:03 +00:00
Sign in to join this conversation.
No Milestone
No project
No Assignees
3 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: cerc-io/lotus-stack#1
No description provided.