Rocket Pool running on Synology

Guide: Rocket Pool running on Synology

Why run Rocket Pool on Synology?

The Rocket Pool team has done an incredible job of bundling everything you need to run an Ethereum staking node at home. They've also put significant effort to support smaller hardware configurations including Raspberry Pi with a 1TB SSD drive. One of the more popular configurations involve the Intel NUC devices with 2TB SSD drive. Each of these base configurations are great for running home staking nodes that require modest maintenance and upkeep and are very cost effective.

So, why consider Synology? Here are a few benefits of running on a Synology NAS. Full disclosure, I'm a Synology fan but I assume many or all of these benefits would apply to any other NAS solution but YMMV. I'm hopeful that this guide will spur some dialog and maybe other NAS fans will contribute and help us bring more options to the table for home stakers.

Benefits

Protection from hard drive failure

With a NAS configuration of RAID5 or better, you have the comfort of knowing that your node can withstand a single-drive failure without losing any data or even going offline. If a hard drive fails, you should receive notifications (assuming you have those set up) and the NAS will "fill in" for the failed drive while you acquire a new drive. As soon as you have a new drive, you should be able to hot-swap the failed drive by pulling the hard drive tray out, replace the drive, and just sliding the tray back in. The Synology NAS will re-build the volume using the new hard drive. This may take some time (1-3 days typically depending on volume size) but the system will keep running the entire time. Your node will continue to validate and earn ETH throughout this failed hard drive scenario.

Significant storage capacity

A typical NAS configuration will typically have 4TB+ of usable storage. Today, the general guidance is to have 2TB of storage available for consensus client blockchain storage. There are upcoming Ethereum improvements that will slow the growth of (or possibly reduce) the required storage, but having sufficient storage available reduces the maintenance burden for the node operator. If you have 1 TB (and eventually 2TB), you may have to periodically run the prune operations to optimize storage. With larger storage available, pruning is not required, so just one less thing for a node operator to think about.

Large install base with technical skill set alignment

There are thousands of Synology (and other) NAS devices installed around the world! Typical NAS owners have the basic technical skills that garner the initial interest in owning and operating such a platform. These skills will often be more than sufficient, along with excellent documentation from the Rocket Pool team and outstanding Discord support, to reliably operate a Rocket Pool node.

Configuration

The Synology platform has been around for over 20 years and there is a wide variety of devices (rackmount, desktop, flash, etc). I will provide some visibility to my configuration only as a reference and a "known good" config. I hope to get some feedback and dialog going and we can continue to refine and publish other configurations as well.

  • Synology DS1621+
    • AMD Ryzen V1500B
    • 2.2 Ghz
    • 4 cpu cores
  • 32 GB RAM
  • Storage
    • 3 x 12TB NAS hard drives
      • Seagate ST12000VN0008-2PH103
    • 2 x 800GB M.2 NVMe SSD caches
      • Synology SNV3400-800G
  • 4 x 1Gb ethernet ports
    • I have these "bonded" together (w/LACP) but that is not required for Rocket Pool node operations
  • Google Fiber with 2Gb download and 1Gb upload speeds.
    • I do not believe you need this much bandwidth, but I'd defer to the Rocket Pool documentation for recommendations on bandwidth required.

The most important element of this configuration is the cache devices. The 2 M.2 NVMe SSD caches really provide the I/O performance that is required for blockchain operations. Typically, a RAID5 array would not perform input/output operations (I/Os) fast enough. But, with the SSD caches sitting "in front of" the RAID5 array, you get the best of both worlds. You get the speed of SSD but also get the reliability and durability of the RAID5 array.

Installation

Coming soon...

I will work on getting some time to document and walk through the installation process. I installed Docker based on Synology Package Manager. From there, we can use the docker-based install from Rocket Pool Default Docker-Based Configuration

The one area where I had to invest some time in workarounds was with respect to the Prometheus/Grafana configuration. I essentially found a Synology-specific Prometheus and Grafana docker implementation and followed those instructions. Then I imported the Rocket Pool configuration page and then modified from there. I'll pull together my notes and there are still some things that don't quite work right so maybe we can figure them out together.

6 Likes

Quite interested in this! :+1: Have you already got some tips/suggestions?

Is there maybe a manual installation of the smart node installation to follow so the docker parts can be substituted with the Synology one’s ?

Hello, first time poster and commenter. I’m also very interested in your results. I would like to follow your steps if they are to be successful, although on a different synology unit. Please keep us posted!

Very interesting. I already have my node, but it never even occurred to me to try to use my Synology as a fallback node. If you’re still working on this and have a working version, please let us know!

As a general update for Synology folks… I did try to jump to 1.7.0 yesterday but the docker-compose-plugin change pukes during the installation process (as Joe predicted it might).

I did some quick Googling last night and didn’t see any direct/easy path to get the new docker compose on Synology. Gonna do some research this weekend. I’ll report back what I learn.

Looks like I’ll be on 1.6.5 until I can get this figured out.

1 Like

What a great idea. I had totally forgot you were doing this. I intend to use my diskstation as a fallback for when I’m pruning, etc. Synology runs on DSM, so ???

I can usually get anything to work on opensuse which I was running for historical reasons, but I could not get this docker plugin issue to work, so I finally had to abandon it.

Hi all my Synology frens…

So, I was able to cruise the Synology discord and chatting with Marius (a major player in the community) and he provided this update on Docker Compose v2 functionality…

“Synology is already working on a major update of the Docker package (compose too) to bring a more streamlined user interface and function enhancements. In this version, Synology developers are planning to update Docker engine to a much newer version in the first quarter of 2023. Quarter 1 includes the months of January, February and March of 2023”

There’s no assurance that these updates will include docker compose v2 and then, additionally, if their implementation will support the plugin architecture that I believe the RP team is taking advantage of.

I’m really disappointed and trying to decide what to do here… maybe I purchase a new mainstream config for RP? Maybe leverage the Synology for failover/emergence node? That would still require getting things running there so not sure that’s a viable option.

I think I’m stuck on 1.6.5 until I get this figured out…

I’m really disappointed… If anyone can find more optimistic news, I/we would welcome it!

Thanks…
D-CLAW

1 Like