This commit is contained in:
vitrinekast
2025-02-17 16:01:42 +01:00
2 changed files with 123 additions and 62 deletions

View File

@ -2,5 +2,6 @@
title: The newsletters title: The newsletters
published: false published: false
nested: 'newsletters' nested: 'newsletters'
--- ---
Klank.school newsletters Klank.school newsletters

View File

@ -1,22 +1,36 @@
--- ---
title: A title for my fun newsletter title: Klankbord Digest February 2025
published: false published: false
template: newsletter template: newsletter
--- ---
I'd like to begin this month's Klankbord Digest with a server update. # Klankbord Digest February 2025
## Recent Events
{{ events passed }}
## Upcoming Events
{{ events upcoming }}
## Server Update
*By Riviera*
Let's backtrack a bit to understand how the current circumstances Let's backtrack a bit to understand how the current circumstances
arose. The server began as a prototype on a Mac Pro Trash Bin computer arose. The Klankschool server began as a prototype on a Mac Pro "Trash
which I borrowed from a university. It had 16 GB of RAM and for this Bin" computer which I borrowed. It had 16 GB of RAM and for this
reason, it was possible to run loads of software on the machine. For reason, it was possible to run loads of software on the machine. For
this purpose, I used Incus, which is a Linux Container Management this purpose, I used Incus, which is a Linux Container Management
System. It's a fork of LXD, which is made by Canonical. Canonical System. It's a fork of LXD, which is made by Canonical. Canonical
decided to make LXD proprietary a while ago, and so Incus was the decided to make LXD proprietary a while ago, and so Incus was the
natural alternative. So, I set up a bunch of containers inside of this natural alternative. I set up a bunch of system containers inside of
machine and these were capable of communicating with each other. There this machine and these were capable of communicating with each
was an advantage to using Incus over using LXD. For example, it was other. There was an advantage to using Incus over using LXD. For
possible to launch different operating systems on top of the host example, it was possible to launch operating systems other than Ubuntu
operating system. And this was no longer easily doable with LXD. on top of the host operating system. And this was no longer easily
doable with LXD.
I thought it would be a good idea to install Arch Linux on the Trash I thought it would be a good idea to install Arch Linux on the Trash
Bin as the host operating system. This was probably not a good idea, Bin as the host operating system. This was probably not a good idea,
@ -24,56 +38,60 @@ because Arch Linux offers very up-to-date software and is constantly
changing. If software is not kept up-to-date, things break. And when changing. If software is not kept up-to-date, things break. And when
the software is updated, sometimes things break. In any case, I wanted the software is updated, sometimes things break. In any case, I wanted
to be able to launch different operating systems because various to be able to launch different operating systems because various
pieces of software that I wanted to run on the machine were pieces of software that I wanted to run on the machine were packaged
well-suited to those operating systems. For example, I wanted to run for those operating systems and available in the repositories. For
an OpenProject instance for collaborative project management. In the example, I wanted to run an OpenProject instance for collaborative
past I attempted to build this Ruby on the Rails application from project management. In the past I attempted to build this Ruby on the
source inside a Ubuntu container. I found that that simply didn't work Rails application from source inside a Ubuntu container. I found that
in the long-run. The background jobs processor wasn't working at that simply didn't work in the long-run. The background jobs processor
all. Everything got clogged up, and it crashed. Slowly. And that was wasn't working at all. Everything got clogged up, and it
the end of that, because the system was simply unusable. Thus, running crashed. Slowly. And that was the end of that, because the system was
OpenProject in a Debian environment, without running Debian on the simply unusable. Thus, running OpenProject in a Debian environment,
machine itself, was the main reason why I wanted to run without running Debian on the machine itself, was the main reason why
Incus. However, the OpenProject instance will not make a I wanted to run Incus. At present, the OpenProject is offline,
reappearance. Partly because it used 1.6 GB of memory. This was not an however, and will not make a reappearance. Partly because it has been
issue on the Trashbin, but was an issue on the next server. replaced by
[Kanboard](https://todo.klank.school/public/board/fa03d54c293e0b2a65120c985ef070ad3e08e499b66a7c83c177e5b3488e),
partly because it used 1.6GB of memory. The latter was not an issue on
the Trashbin, but was an issue on the next server.
Which brings me to a discussion of the next machine: a second-hand Which brings me to a discussion of the next machine: a second-hand
Supermicro, which I picked up from v2_ around Christmas. This machine, Supermicro, which I picked up from v2\_ in late December. This
it turns out, used 90 watts of electricity per hour, which is a lot. machine, it turns out, used 90 watts of electricity per hour, which is
For whatever reason, the fan was running at full blast all the time. a lot. For whatever reason, the fan was running at full blast all the
Everyone who saw it said it shouldn't be doing that. But it was doing time. Everyone who saw it said it shouldn't be doing that. But it was
it and it wasn't clear why. In any case, the task, as I saw it, before doing that and it wasn't clear why. In any case, the task as I saw it,
I understood how much electricity this thing was consuming, was to before I understood how much electricity this thing was consuming, was
transfer the containers from the Trashbin to the Supermicro to transfer the containers from the Trashbin to the Supermicro
machine. There were many containers and I wasn't going to use all of machine. There were many containers and I wasn't going to use all of
them. Using a laptop and a VPN and an Ethernet cable, I was able to them. Using a laptop and a VPN and an Ethernet cable, I was able to
transfer the required containers to the Supermicro transfer the required containers to the Supermicro
server. Technically, when running different operating systems with server. Technically, when running different operating systems with
Incus it's better to use KVMs, or Kernel Virtual Machines. As I wasn't Incus it's better to use Kernel Virtual Machines. As I wasn't doing
doing that it was already suffering from mis-configuration issues. that it was already suffering from mis-configuration issues.
Furthermore, I decided to install Arch Linux on the Supermicro machine Furthermore, I decided to install Arch Linux on the Supermicro machine
as well. There was a bit of complexity involved in booting the server, as well. There was a bit of complexity involved in booting the server,
because it needed to be network booted, and that was something I had because it needed to be network booted, and that was something I had
not previously encountered. It was quite the adventure but I set it up not previously encountered. It was quite the adventure but I set it up
hastily. When I installed the operating system, it was an `fdisk` hastily. When I installed the operating system, I used `fdisk` to
situation. I set aside eight GB of SWAP space and a 120 GB root partition the hard drives. I set aside 8GB of swap space and a 120GB
partition, which makes limited sense. No way was there going to be 120 root partition, which makes limited sense. No way was there going to
GB worth of software on the machine. More likely: it was going to run be 120GB worth of software on the machine. More likely: it was going
out of RAM. At least things were up and running at this point. There to run out of memory. At least things were up and running at this
was the OpenProject. There was a live coding system, Flok. There was point. There was the OpenProject. There was a live coding system,
a SFTP server. There was a container for the websites (why not just Flok. There was a SFTP server. There was a container for the
use `/var/www/`...?). There was a Gitea instance and a Gitea runner. websites (why not just use `/var/www/`...?). There was a Gitea
There was a container for the PostgreSQL databases. And, finally, one instance and a Gitea runner. There was a container for the PostgreSQL
for the calendar also. These were all online at one point and using databases. And, finally, one for the calendar also. These were all
up a lot of memory. The Supermicro server only had four gigabytes of online at one point and using up a lot of memory. The Supermicro
memory. Unsurprisingly, it could not handle all of this and server only had 4GB of memory. Unsurprisingly, it could not handle all
crashed. Therefore migrating some of the data / processes elsewhere of this and crashed. Therefore migrating some of the data / processes
was required. The primary reason for this was to reduce memory elsewhere was required. The primary reason for this was to reduce
consumption. Accordingly the [calendar](https://calendar.klank.school) memory consumption. Accordingly the
moved to a VPS in Graz, Austria. This is now online and should stay [calendar](https://calendar.klank.school) moved to a VPS in Graz,
online as long as the VPS is going! Austria. This is now online and should stay online as long as the VPS
is going!
In any case, the supermicro server joined the Varia hub. Very In any case, the supermicro server joined the Varia hub. Very
exciting. Everything was routed through a VPN, and I had to exciting. Everything was routed through a VPN, and I had to
@ -120,17 +138,59 @@ Despite the advantages of using containers, the decision was made to
stop using them. Some might say to use Docker instead, but I don't stop using them. Some might say to use Docker instead, but I don't
think it makes a difference. There's no need to containerise all the think it makes a difference. There's no need to containerise all the
services on a machine. Excessive complexity and surprising services on a machine. Excessive complexity and surprising
dependencies are a downside of containers. Thus, I preferred to keep dependencies beytween containers are a downside of this
it simple because the environments were becoming a messy labyrinth of technology. Thus, I preferred to keep it simple because the overall
proxy devices, system containers and storage units. I understood what situation was becoming a messy labyrinth of proxy devices, system
was going on but no-one else did. I wanted to change this, but containers and storage units. I understood what was going on but
couldn't find quite the right moment to do so. And didn't. So I simply no-one else did. I wanted to change this, but couldn't find quite the
pulled the plug on the Supermicro server. right moment to do so. And didn't. So I simply pulled the plug on the
Supermicro server. To be honest, I was having a bit of a strange week
To be honest, I was having a bit of a strange week when I made this when I made this decision. However, it was the right decision to make,
decision. However, it was the right decision to make, along with along with changing the DNS provider. March 8th was a deadline which I
changing the DNS provider. March 8th was a deadline which I set for set for myself to change the DNS provider. This was insofar that, for
myself to change the DNS provider. This was insofar that, for the past the past couple of years, March 8th has been a day of International
couple of years, March 8th has been a day of International
Trans*Feminist anti-colonial Counter-cloud action. Thus, in an effort Trans*Feminist anti-colonial Counter-cloud action. Thus, in an effort
to defund the cloud, there's a new DNS provider. to move away from the cloud, there's a new DNS provider and a
continued emphasis on self hosting.
To that end, the Klankschool system administrators are gradually
getting services online again. For example, the
[Gitea](https://code.klank.school) is back online again. This time on
a computer running Debian, an HP Compaq with, at present, 6GB of
RAM. It's also an upgrade in terms of energy consumption because the
machine utilises 30 Watts per hour, which is three times more
efficient than the Supermicro machine. Moreover, the hard drive is
encrypted and uses Logical Volume Management rather than `fdisk`. This
method is more sustainable in the long run and is a gain in terms of
data security.
---
## FAQs
### Can I host my website on [klank.school](https://klank.school)?
Certainly, please send an email to
[computer@klank.school](mailto:computer@klank.school) to discuss your
needs.
### Can I get an account on [code.klank.school](https://code.klank.school)?
Also yes, send an email to
[computer@klank.school](mailto:computer@klank.school) if you're
looking for somewhere to publish your code.
### Does Klankschool have a collaborative live coding environment?
Much data was dropped in the process of switching from the Supermicro
machine to the HP Compaq. There was a [flok](https://flok.cc) at
[live.klank.school](https://live.klank.school). It's offline at the
moment and will make a re-appearance soon.
### Is Klankschool still becoming a datacenter?
No
### Does Klankschool have a privacy policy?
It's in the works - watch this space.