This is a major update to the Smartnode stack.
For updating instructions, please follow the Updating the Smartnode Stack guide, though this release has several new features with supplemental setup steps so please read these patch notes before installing RC6.
NOTE: this version requires docker-compose
v1.27 or higher. You should have v1.29.2 if you have installed previous versions of the Smartnode stack. However, if you run into network errors during rocketpool service start
, please run rocketpool service install
(without the -d
flag) to download the latest version of docker-compose
for your system.
Client Changes
New Features
The Smartnode now comes with experimental built-in support for collecting metrics about your hardware, your Operating System, your validator performance, and your Rocket Pool earnings. We have also created a dashboard to conveniently monitor all of them using Grafana. An example of such a dashboard can be see here:
Note that this is still experimental! The Rocket Pool development team is eager to get feedback on this new feature.
For information on how to enable and use this new feature, including downloading this dashboard for your own personal use, please read the Setting up the Grafana Dashboard section of our guides page.
New CLI Commands
rocketpool node rewards
- this command will display information about your RPL rewards, including your cumulative total earned, your estimated earnings at the next checkpoint, the time of the next checkpoint (and how long until it arrives), an APR estimation, and a warning if you have unclaimed RPL rewards.rocketpool network stats
- this command shows information about the Rocket Pool network as a whole, including total amount of ETH and RPL staked, number of validators and minipools, the sizes of the minipool queue and staking pool, and more.rocketpool network timezone-map
- this command shows a breakdown of the timezones that Rocket Pool nodes have registered with, and how many nodes are in each one.
rocketpool service install-update-tracker
- this command is related to the new metrics system above. It will automatically install a hook into your Operating System's package manager and report available updates to the Grafana dashboard.
CLI Changes
- The CLI will now always download and install the version of the
smartnode-install
files corresponding to its own version by default, instead of always grabbing the latest version. For example, CLI v1.0.0-rc6 will always grab the files for v1.0.0-rc6 by default, instead of grabbing the latest files. This makes it much easier to rollback to previous releases. - Approving the RPL token for a transaction (such as during
node deposit
andstake-rpl
) now only happens once for your entire node and triggers an unlimited RPL approval. Subsequent calls to these functions no longer need to approve RPL anymore. This results in significant gas savings for those operations. rocketpool service config
now "remembers" which ETH1 and ETH2 clients you are currently using, and will ask if you want to keep using them before asking you to pick your clients from the lists of options. This helps with people who chose a random ETH2 client, so they don't accidentally choose a different random client during a second run ofservice config
and end up resyncing the chain with a different client.rocketpool service config
has a new section at the end that asks you if you want to enable metrics tracking, which is required for the Grafana dashboard. It allows you to modify all of the default ports if you so desire.
Other Smartnode Changes
- The
eth2
client provider URL inconfig.yml
now comes with anhttp://
prefix by default, which can be modified to a different prefix (such ashttps://
) to support custom ETH2 client setups that are incompatible with anhttp://
endpoint. - The
rocketpool_node
container now compares the price (in ETH) of the RPL you have earned when auto-claiming RPL rewards with the cost (in ETH) of the gas required to retrieve it. If the gas cost is higher than the RPL is worth, it stops the auto-claim process.\ - As part of the new metrics capability, the
rocketpool_node
process now produces metrics about the Rocket Pool network and your node in a Prometheus-friendly format. It comes with two new arguments,-m
and-r
, to set the HTTP address and port to listen on for metrics requests respectively. - Added arguments to each ETH2 client to enable metrics reporting if requested.
- Added a new Docker-compose file,
docker-compose-metrics.yml
, which handles the Docker images necessary for metrics operation (node-exporter
,prometheus
, andgrafana
).
Bug Fixes
- Fixed an issue with the POW Proxy configuration that prevented it from working with custom ETH1 clients by default
- Errors encountered while staking a new minipool in the
rocketpool_node
container will no longer cause therocketpool_validator
container to restart. - Node registration now checks to see if you have entered a valid timezone.
Misc Changes
rocketpool minipool exit
now prints a message explaining what exiting a validator means, and requires you to double-confirm it to prevent accidental exiting.rocketpool odao proposals list
now shows brief summaries of each proposal instead of printing every detail of every proposal. Furthermore, it can now be filtered by proposal status.rocketpool odao proposals details
is a new CLI function that shows the details of a specific proposal.- The POW Proxy now comes with a Verbose mode (
-V
) to further enable diagnostic and debugging for custom ETH1 clients - Raised Teku's limit on number of validators per call from 80 to 600, in keeping with their updated HTTP length as part of release 21.8.0.