blog single gear
Engineering

Baking Clouds: An Experiment with Raspberry Pi, BOSH & Cloud Foundry

Cloud Foundry Summit North America 2018 (Boston) marked a lot of “firsts” for me.  It was my first time:

  • Attending Cloud Foundry Summit (ever!)
  • Attending an open source tech conference
  • Doing a talk in the US
  • Demonstrating the first Cloud Foundry running on ARM

I’ve attended several tech conferences, but most of them were organized by software vendors. Compared to these conferences, the Cloud Foundry Summit is a much smaller event and feels more like a large user group meeting. This, in my opinion, is a good thing. The smaller event size meant that all speakers and attendees are very passionate about the Cloud Foundry ecosystem, which makes for very good talks and conversation. It’s also nice to meet the actual contributors of the different projects. That rarely happens at big vendor events.

Dr. Ruurd and I gave a talk titled “Baking Clouds” about our attempt to run Cloud Foundry on Raspberry Pi, deployed by BOSH.  We thought the hardest part would be to build our own infrastructure-as-a-service (IaaS) and accompanying BOSH CPI. So when we got that working (some time in December 2017) we decided to submit a speaking proposal for Cloud Foundry Summit in Boston.

What could possibly go wrong?  Well, it turned out that getting a working Raspberry Pi compatible stemcell takes a long time (to us, it almost felt like it took forever), the garden-runc code needed some hack to make it run on 32-bit systems and the Linux seccomp policy was not designed to run on ARM CPUs at all. Added to that was the fact that compiling packages or building docker images on the Raspberry took forever so you get the idea why it took until early April to get a Diego cell running on a Raspberry Pi.

The “Why?

You might wonder why we ever started this experiment.  Why did we spend countless hours trying to get Cloud Foundry working on something that will never be production-ready?  Well, there is more than one answer to this question.

Not only did we want to do something awesome and then talk about it, but we also wanted to learn more about the inner workings of Cloud Foundry. And what better way to learn how something works than taking it apart and putting it back together?

On a more serious note: we also want to promote the use of alternative CPU architectures. Raspberry Pi is based on an ARM CPU and ARM CPUs are known for their good performance per watt ratio.

This means you can do the same amount of computing with less power of more computing with the same amount of power. There are already HPC clusters which consist only of ARM CPUs because of this. We also see a trend towards ARM in other parts of the datacenter and cloud business.

Wouldn’t it be wonderful if we could run Cloud Foundry and BOSH on those new ARM infrastructures as well?

For more details watch the recorded talk or visit the blog.

 

This post was co-authored by Christiaan Roeleveld and Ruurd Keizer from ITQ.

Christiaan Roeleveld Profile Image

Christiaan Roeleveld, AUTHOR

SEE ALL ARTICLES