I built a four-node Pi cluster this month. It taught me nothing I needed to know, ran nothing I needed to run, and I'd do it again. Four Raspberry Pi 3 boards, a stack of standoffs, a cheap five-port switch, and a USB charger with enough amps to keep all four happy. The whole thing is held together with more velcro than I'm proud of.
The plan was to learn distributed things by doing distributed things. What I actually learned is that a 100Mbit USB-attached NIC on a Pi is a hard ceiling, and that an SD card is a wonderful way to lose your work to bit rot at the worst moment. Anything genuinely interesting was either bottlenecked on the network or starved on I/O. I ran a small Kubernetes setup on it for a weekend and the control plane alone made the poor things sweat.
So as a teaching rig for performance, it's useless. The numbers are all dominated by the platform's limitations rather than anything I wrote. But as a teaching rig for failure, it's superb. Pull a power lead and watch what falls over. Yank an Ethernet cable mid-job. Fill an SD card. The cluster is small enough to hold in two hands and cheap enough that you don't mind breaking it, which means you actually do break it, which is where the learning hides.
It sits on a shelf now, blinking quietly, doing very little. Worth every penny.