Sunday, October 3, 2021

Applying updates

Marks Rpi Cluster continues to run 24/7. At the time of writing the cluster consists of:

4 x Pi3 as compute nodes
3 x Pi4 (2GB) as support nodes
9 x Pi4 (8GB) as compute nodes


Applying updates
Yesterday we got a bunch of updates that needed a reboot. Usually that is the kernel and/or bootloader. Most Linux updates don't require a reboot.

With the Pi3's I can simply stop the BOINC client, apply the updates and reboot when done. With the Pi4's I finish off any work they have running and then apply the updates. The Pi4's are running Rosetta@home which has work units that don't like to be interrupted.

Assuming the need for a reboot my usual command to update a Pi, after I have ssh'ed into each one, is:

sudo systemctl stop boinc-client && sudo apt update && sudo apt upgrade -y && sync && sudo reboot

It is actually 5 separate commands. The && separates each one.
  1. The systemctl command tells the boinc-client (daemon) to stop.

  2. The apt update tells apt to update its list of available packages.

  3. The apt upgrade tells apt to download and install any available updates.

  4. The sync command tells the system to make sure everything is written to the micro SD card (or hard disk or SSD if you are using one). Its always a good idea to do this just before a reboot to prevent the SD card getting corrupted.

  5. The final command tells the Pi to reboot.

These commands work on the original Pi through to the Pi4 and it doesn't matter if its running the 32 or 64 bit version of Raspberry Pi OS.


Update: 10th of October
Debian did a point release so there is a bunch of important fixes again this week.

We're still waiting on the Raspberry Pi foundation to move to a Debian Bullseye code base. At the moment Raspberry Pi OS is based on the previous version of Debian known as Buster.

Saturday, September 11, 2021

12th of September

Marks Rpi Cluster continues to run, although it was idle yesterday and again today due to hot weather.

I took the opportunity to clean the Pi's and fans while they weren't doing any work. I have 40mm fans for each Pi, except the support nodes. While they do a good job of cooling it means the fans and Pi itself end up quite dusty. The fans also manage to get fluff on their blades. Its easily fixed by a paint brush and a can of air. Rather than using aerosol I have one called the "O2 Hurricane" which is good at blowing the dust out.

While I was doing that I found a spare Pi4 power supply so added another Pi4 8GB to the cluster. I also have a number of spare Pi3 power supplies. While I have spare 40mm fans I don't have any more 2 pin to 3 pin fan header cables. I only need these for the free-standing Pi's. If I use the Pi^4 case the fans are plugged into a couple of Y splitter cables and a USB charger.

The cluster is now up to:

9 x Pi4 (8GB) compute nodes
4 x Pi3 compute nodes
3 x Pi4 (2GB) support nodes

Its probably about time to start replacing the micro SD cards, particularly in the Pi4's as they run Rosetta@home which uses large files leading to them wearing out faster. I keep some spares on hand but not enough to do all of the Pi4's. I was hoping the Raspberry Pi foundation would update Raspberry Pi OS, then I could clean-install onto new SD cards but there hasn't been any mention of when we're likely to see it.

Saturday, August 21, 2021

22nd of August

Marks Rpi Cluster is still running 24/7. After 2 weeks of doing Einstein work, Rosetta has some work and most of the cluster (the Pi4's) have been running it exclusively. Hopefully things will level-out soon and it will return to the 50/50 split that its meant to be doing.

Debian released bullseye on the 14th of August, so now we're waiting on the Raspberry Pi Foundation to update to it. They already have a 5.10 kernel (which is what bullseye is using).

I haven't managed to do anything about my updated 3D printed cases as we've been in lock-down for 2 months now thanks to the Covid-19 delta strain. The lock-down has been extended for another month so its going to be a while yet.


Saturday, August 7, 2021

Project issues & password-less logon

Marks Rpi Cluster continues to run 24/7. Due to some project issues we ran out of Einstein BRP4 work for a week and now Rosetta is out of work, fortunately Einstein now has work. That means the entire farm is running Einstein.

 

Password-less logon

I have been setting up password-less logon on all the Pi's. This is a bit more secure than using a password and saves me having to remember different passwords (all my support nodes have different passwords). Note that I run my Pi's headless (no screen or keyboard), so if you are using a desktop this won't be for you.

To do this you generate a certificate using Puttygen, which comes with the putty terminal emulator program. You do use putty to login to the Pi don't you? Once you've got that you save it on each Pi and then disable pam.

Login to the Pi. Type the following commands in:

mkdir ~/.ssh
nano ~/.ssh/authorized_keys


paste the key in and save the file.

 

Next we disable password prompting (you’ll still be prompted for a user name). Edit sshd_config:

sudo nano /etc/ssh/sshd_config

Find the line that says "UsePAM yes". To search in nano use Control-W and it will prompt for a string to find, or you can just scroll down the file. Comment it out by placing a # symbol in front and save it. And finally restart the ssh service.

sudo systemctl restart ssh

I saw some guides on the internet that talk about having to modify file permissions but its not needed. Now all I have to do to login to a Pi using putty is to tell it which one I want and when it prompts for a user name give it that and it automatically logs in.