Skip to main content

Why have mainframes as a hobby?

My earlier blog article named Buying an IBM mainframe did get way more exposure than I could have hoped for, thanks to everyone that read it! The discussions on various forums did naturally evoke some interesting questions. Mostly they are "Why?" in various shapes or forms. It is a totally understandable reaction, and thus I want to present some of the things that I am excited about having mainframes as a hobby.

I present to you: the follow up questions on the statement "I bought an IBM mainframe".

Why? I thought mainframes were dead

First of all, they are not. If you are buying a new mainframe today you will get a beast in terms of performance and especially I/O capability. There is no server platform that compare to my knowledge in pure numbers if you do not include cost. Of course, you would care deeply about cost in any real-life situation but the point is to dispel the notion that mainframes are antiquated technology wise.

Even my 8 year old z114 can run with 120 GiB of redundant RAM, and it is the physically smallest mainframe you could get.

I highly recommend people that are new to mainframes to take 6 minutes to watch this clip by Linus Tech Tips explaining what a mainframe really is. It is great and really approachable even if you have no prior knowledge of these terms.

After watching this you might just have a different view of what mainframes are and what problems they solve. Just like we have machine learning accelerators, or Bitcoin miners, we have mainframes as a solution to solve transactions and I/O problems.

A brief note on the software side: z/OS is the flagship OS that IBM sells with their mainframes, and it is built to use all these hardware features of the mainframe. This means that the software you run on mainframes are built quite differently from how conventional distributed systems are built on PC servers. Given that the hardware is so reliable, and the OS is built to handle reliability, having to build in complicated distributed systems logic in your software is not really that important anymore - and as any experienced programmer will tell you when it comes to writing software: simpler is better.

Why? What are you going to do with it?

This is the simplest thing to answer: anything I feel like :-). 

Long answer: It is like when somebody buys their first server. They might have a plan to build a particular service, and they even might do just that, but sooner or later something else comes along and that server is now re-purposed into running some other service. So even if I do have a quite long laundry lists of projects I want to do with my mainframe, I do not know definitely which projects will be done or which new ones will be born as I go along.

Why? It seems expensive

Maybe. It is certainly a lot of money, so it does fit the definition of expensive - but I do think the system is worth the money, and here is why.

Over the last decade information has become more and more accessible to an incredible point. There are some many video courses, or even teachers that offer 1:1 courses where-ever you may be. It is easy to forget that some things cannot be acquired like that.

I have another expensive hobby which is flying airplanes. That is a money sink if there ever was one, and I spent way more money on that hobby than I have on this mainframe project. This is interesting as I do not even fly a lot compared to pilots e.g. in the US. Flying requires a lot of theoretical knowledge, but you cannot get your license without actually flying an airplane. You cannot get a CCIE without logging into a switch, and you cannot learn a new language without speaking it.

Mainframes are like that as well. There is not a particular single thing that makes mainframes so interesting. You can run COBOL on Linux if you want, and IBM could sell you z/OS in an emulator if they wanted. The interesting thing about mainframes is the full platform. From reliable hardware to OSes that have been taught how to use the reliability features of the platform. To learn about this ecosystem you need to study the theoretical but also be hands-on and feel how things work together.

Finally, there are courses that do teach you these skills - companies are probably quite heavy users of these to train new mainframe engineers - but they tend to run you $10,000 per course. In that light, the price I paid for the z114 is not that extreme.

It is still a lot of money though, but living in Switzerland I do not need a car so I tell myself it is from that fund ;-).

Why? Can't you just emulate it?

I touched on this a bit in the previous section. You can definitely emulate the S/390 architecture. Hercules is an amazing emulator for doing just that. However the mainframe is so much more than the CPU and the memory.

Mainframes for example have these things called Support Elements which more or less is how you configure them, set up hardware virtualization partitions (called LPARs), configure workload scheduling, and set up what PCIe card belongs to where. Emulating the CPU of the mainframe would not expose you to any of those very crucial tasks.

Now, if you do wish to get started on operating mainframes I do recommend using Hercules and downloading MVS 3.8j which is all free and legal. I would also recommend you to check out IBM's Master the mainframe.

If you do get hooked, you will likely soon find yourself asking the same questions as I did: "How does this work?". You might even end up finding that just having access to an emulated system console is just not scratching that itch and there are more questions you want answered. In that case, you have the same itch that I had.

What about the power bill and environmental impact?

Thanks to @iwangulenko I got put in touch with the hosting company ungleich in my current place of residence - Switzerland. Ungleich has a project called Data Center Light where they run their data centers from old industrial facilities that were once built with hydro power. This means that they can offer cheap space and good clean power. Being in Switzerland this means I can jump onto a train and end up 50 m from the entrance door to the data center within two hours.

By the way, they host other things than mainframes ;-). Consider them for your next hosting, they have been really nice to work with.

Closing words

I selfishly find that writing down answers to questions like this provides me with a much better forum to explain how I think about the matters at hand, which is mostly why I wrote this post. I am however quite comfortable to have discussions about these things IRL or e.g. over social media. I am very much a learning newbie on mainframes but having discussions around various topics is a great way to learn about gaps in your own understanding, so I whole-heartily welcome it.

I hope this put some light on why I think there are values to be learned from the mainframe, and why at least I am happy to invest a quite significant part of my free time learning and experimenting with technologies around it.

Thanks for reading!


Popular posts from this blog

Buying an IBM Mainframe

I bought an IBM mainframe for personal use. I am doing this for learning and figuring out how it works. If you are curious about what goes into this process, I hope this post will interest you.

I am not the first one by far to do something like this. There are some people on the internet that I know have their own personal mainframes, and I have drawn inspiration from each and every one of them. You should follow them if you are interested in these things:
@connorkrukosky@sebastian_wind@faultywarrior@kevinbowling1 This post is about buying an IBM z114 mainframe (picture 1) but should translate well to any of the IBM mainframes from z9 to z14.

What to expect of the process Buying a mainframe takes time. I never spent so much time on a purchase before. In fact - I purchased my first apartment with probably less planning and research. Compared to buying an apartment you have no guard rails. You are left to your own devices to ensure the state of whatever thing you are buying as it likely…

Powering a mainframe

The last few days have been eventful. I was contacted by the datacenter that the mainframe's cage is now ready for moving in, and the power has been made available. Very exciting! I grabbed my home-made power cables (more on that later) and my best screwdrivers and set off to the datacenter.

The datacenter staff, not needing a forklift in their day-to-day, had managed to solicit the services of a forklift, the associated operator, and some very handy folks to help navigate the mainframe from the storage space to its final location.

After some intense period of fighting the inclination of the road between the storage facility and the cage (and a door that was a bit too small) it was finally in place. Incidentally we were forced to trust the wheels on this pretty rough floor. I did not expect it to roll that well on raw concrete, I was pleasantly surprised. This thing is a tank!

Now, everybody wanted to see if it was working. My machine did not come with a power cable so I had to so…

Open Datacenter Hardware - Leopard Server

Introduction The Leopard is an OpenRack v1 compliant 12V server commissioned by Facebook to offer compute power. It consists of 2x Intel Xeon E5-2678 v3 and is available with either DDR3 or DDR4 memory. The model is manufactured by two vendors primarily: Quanta and Wiwynn.

Leopard features a 24x PCIe slot which can fit either a PCIe card with low profile, or a riser card with 1x 16x and 1x 8x slots. The server also supports a 3.5" SATA drive as well as either an mSATA or an M.2 drive mounted on the motherboard.

Connectivity wise Leopard has a mezzanine card slot allowing for example 10Gb/s or 25Gb/s Ethernet.

Figure 1 and figure 2 shows the server layout. The server is made to fit inside an OpenRack v1 enclosure, at which point it looks something like figure 3. Due to power constraints an OpenRack v1 can fit 30 of these servers before power starts to become an issue. The Leopard servers that the organization Serverfarm Upstate provides are all fitted with 256GiB DDR3 RAM and 2x …