GCP Marketplace Nodes
Deploy blockchain nodes without the need to install dependencies or manage configuration files. The nodes come with a copy of the databases locally which drastically reduces bootstrap times. The machine images are available for Flare Mainnet, Flare Testnet Coston2, Songbird Canary-Network, Songbird Testnet Coston and several other networks.
Head to Google Cloud Marketplace to get started.
Supported blockchain nodes
Name | Config Dir | vCPUs | RAM | Disk Size | Disk Type |
---|---|---|---|---|---|
Flare Mainnet | /etc/flare | 4 | 16 GB | 830 GB | Balanced |
Flare Mainnet Rosetta | /etc/flare_rosetta | 4 | 16 GB | 830 GB | Balanced |
Flare Testnet Coston2 | /etc/coston2 | 4 | 16 GB | 280 GB | Balanced |
Flare Testnet Coston2 Rosetta | /etc/coston2_rosetta | 4 | 16 GB | 280 GB | Balanced |
Songbird Canary-Network | /etc/songbird | 8 | 32 GB | 2,730 GB | Balanced |
Songbird Testnet Coston | /etc/coston | 4 | 16 GB | 280 GB | Balanced |
Other supported networks
Name | Config Dir | vCPUs | RAM | Disk Size | Disk Type |
---|---|---|---|---|---|
Algorand | /etc/algorand | 8 | 13 GB | 70 GB | Balanced |
Avalanche | /etc/avalanche | 8 | 16 GB | 530 GB | Balanced |
Bitcoin | /etc/bitcoin | 2 | 16 GB | 1,030 GB | Balanced |
Binance Smart Chain | /etc/bsc | 8 | 32 GB | 2,030 GB | SSD |
Cosmos Hub | /etc/cosmos | 4 | 16 GB | 1,030 GB | Balanced |
Dogecoin | /etc/dogecoin | 2 | 11 GB | 380 GB | Balanced |
Ethereum | /etc/ethereum | 8 | 32 GB | 2,230 GB | Balanced |
Ethereum Holesky | /etc/ethereum | 8 | 32 GB | 430 GB | Balanced |
Ethereum Sepolia | /etc/ethereum | 8 | 32 GB | 730 GB | Balanced |
Filecoin Lotus | /etc/filecoin | 16 | 32 GB | 1,030 GB | SSD |
Litecoin | /etc/litecoin | 2 | 12 GB | 330 GB | Balanced |
Polygon | /etc/polygon | 16 | 64 GB | 6,030 GB | SSD |
Songbird | /etc/songbird | 8 | 32 GB | 2,730 GB | Balanced |
XRPL | /etc/xrpl | 8 | 32 GB | 375 GB | Local SSD |
Prerequisites
Ensure you have:
-
A Google Cloud account
-
A service account with at least the following permissions (these can be created beforehand or during the launch process):
- roles/config.agent
- roles/compute.admin
- roles/iam.serviceAccountUser
-
Verify that the Quotas and System Limits, located in IAM and admin > Quotas and system limits, meet the resource requirements for the intended blockchain node
Setup a node
-
Locate and launch the blockchain machine image
Head to the Google Cloud Marketplace.
Click the Launch button to proceed.
-
Configure basic settings
Choose the service account, source image, and region for your instance. To use an existing service account, click the Existing account button.
Next, select the network where the node will be deployed, and configure basic firewall rules. Once done, click Deploy. This will launch a node with the deployment name, for example
flare-node
, in the Compute Engine > VM instances. -
Troubleshooting
If you encounter any issues during the deployment process, refer to the Troubleshooting Section for guidance.
Connect to the node
Node operations are managed using the nodectl
CLI tool.
sudo nodectl help
Configuration files are located in the /etc/<node_name>
directory. For instance, Flare nodes will have their configurations in /etc/flare
.
To start the node, connect to the instance and apply the services using:
# Applies all services configured in `/etc/<node_name>/config.yaml`
sudo nodectl apply --target all
Verify node operation
The quickest way to verify that the node is running is by using the built-in health checks.
Logs can also be accessed in the /var/log/<node_name>
directory, for example, /var/log/flare
.
# Run health checks
sudo nodectl health
# Display detailed node information
sudo nodectl status
For live log monitoring, use nodectl
:
sudo nodectl logs -f
For more log options, refer to the journalctl
manual:
man journalctl
Troubleshooting
-
Deployment failure due to missing iam.serviceAccountUser role
- Symptom: The deployment fails when deploying the solution for the first time and
creating the deployment service account through the UI. The logs display an error message similar to:
Error: Error waiting for instance to create: The user does not have access to service account '[email protected]'.
User: '[email protected]'.
Ask a project owner to grant you the iam.serviceAccountUser role on the service account. - Solution:
- Go to IAM and Admin > Service Accounts.
- Find the
<project_number>[email protected]
(Default Compute Service Account). - Click on the service account, then open the Permissions tab.
- Click Grant Access, and set the Principal as the email address of the deployment service account (your email differs from the example).
- Assign the Service Account User role, then save the changes.
- Once done, return to the Marketplace, delete the current deployment, and redeploy using the newly configured service account.
- Symptom: The deployment fails when deploying the solution for the first time and
creating the deployment service account through the UI. The logs display an error message similar to:
-
Deployment failure due to Terraform state lock
- Symptom: The deployment fails, and clicking Retry leads to Terraform state lock errors.
- Solution: Instead of retrying, delete the failed deployment and start a new one.
-
Deployment failure due to exceeded quotas
- Symptom: The deployment fails, displaying an error message in the logs similar to:
Error: Error waiting for instance to create: Quota 'SSD_TOTAL_GB' exceeded. Limit: 500.0 in region us-west1.
metric name = compute.googleapis.com/ssd_total_storage
limit name = SSD-TOTAL-GB-per-project-region
limit = 500
dimensions = map[region:us-west1] - Solution: Resource quotas need to be increased manually. To do this, refer to the Quotas and System Limits documentation and navigate to IAM & Admin > Quotas. After adjusting the quotas, delete the failed deployment and deploy a new one.
- Symptom: The deployment fails, displaying an error message in the logs similar to: