Curio Service
This page explains how to setup a systemd service for Curio
Curio can handle multiple GPUs simultaneously without needing to run multiple instances of the Curio process. Therefore, Curio can be managed as a single systemd service without concerns about GPU allocations.
Systemd Service Configuration
The service file for Curio is included in the Debian package and is named curio.service
. If you have built Curio from source, you can create the service file manually as described below.
Service File for Curio
To create the curio.service
file manually, use the following content:
Environment Variables Configuration
The service file requires an /etc/curio.env
file to be present. This file contains all the necessary environment variables to connect to the database. The env
file should be created automatically during the Debian package installation. If you are running Curio built from source, you can create the env
file manually with the following content:
/etc/curio.env File
CURIO_LAYERS
Config layers to be stacked and used for this Curio node
gui,post
CURIO_ALL_REMAINING_FIELDS_ARE_OPTIONAL
Allows optional fields to use defaults. This ensures that missing configurations are not treated as errors, instead, they will be assigned defaults
true
CURIO_DB_HOST
Database hosts (comma-separated) for the YugabyteDB cluster
yugabyte1,yugabyte2,yugabyte3
CURIO_DB_USER
Username for authenticating with YugabyteDB's Postgres Database defined by CURIO_DB_NAME
yugabyte
CURIO_DB_PASSWORD
Password for the specified CURIO_DB_USER
yugabyte
CURIO_DB_PORT
Port for YugabyteDB Postgres connection
5433
CURIO_DB_NAME
Name of the PostgreSQL database in YugabyteDB
yugabyte
CURIO_DB_CASSANDRA_PORT
Port for YugabyteDB Cassandra connection
9042
CURIO_REPO_PATH
Directory for Curio storage configuration json
file
~/.curio
CURIO_NODE_NAME
Name of the Curio node
ChangeMe
FIL_PROOFS_USE_MULTICORE_SDR
Enables multi-core SDR in Filecoin
1
Ensure all variables are correctly set according to your environment. Additionally, you can also export the following variable for cache location.
Starting the Curio Service
Once all the variables are correctly updated, create the log directory:
Now, you can start the systemd service with the following command:
Verify that process started successfully by monitoring systemctl status curio.service
Once Curio service is running, you can proceed to attaching storage for sealing or permanent storage to the Curio node or setting up next Curio node in the cluster.
Last updated