When Ephemeral Storage in Kubernetes isn’t so Ephemeral
Ephemeral storage 📦 is a fancy way of saying temporary storage. In Kubernetes ☸️️, it means storage that is associated with a pod that disappears when the pod goes away. This is almost true 🤔 as we shall find out soon. We will see what happens when pods and nodes run out of ephemeral storage ❌ and how to troubleshoot it 🔍.
“I like the ephemeral thing about theatre, every performance is like a ghost - it’s there and then it’s gone” ~ Maggie Smith
One Year at a Startup
At the beginning of 2024, I joined Invisible Platforms 🥷 - a small startup with a super-talented team (I worked with 95% of the engineers before) and a big mission. I’m the infra guy 🛠️, which covers a lot of ground in a startup. I got to wear many hats 🤠, play with some cool toys and even made myself useful on occasion. Let’s see what I’ve been up to in 2024!
“Why, sometimes I’ve believed as many as six impossible things before breakfast.” ~ The Queen from Alice in Wonderland
About Horizontal Pod Autoscaling
Horizontal pod autoscaling is one of the best features of Kubernetes ☸️. In this short blog post I’ll take quick a look at the horizontal pod autoscaler (HPA) and point out some gotchas.
“The best measure of a man’s honesty isn’t his income tax return. It’s the zero adjust on his bathroom scale” ~ Arthur C. Clarke
The Art and Science of Kubernetes Bin Packing
☸️ Kubernetes is a powerful platform for running containerized workloads. It will happily scale your infrastructure to meet the demands of your applications. Unfortunately, this can get expensive ( especially in the cloud). The goal is to utilize the resources you provision efficiently. In this post, we’ll explore the ins and outs of Kubernetes bin packing 📦, which is one important piece of the puzzle. We will also show how bin packing interacts without other aspects of optimizing resource usage.
“Letting go is even more important than adding.” ~ Marie Kondo
Blue/Green Upgrade for Postgres on AWS RDS
Today we are going deep on upgrading Postgres on AWS RDS to a new major version. You may be shocked, but there will be very few emojis in this post. Database upgrades are no joke, so let’s be serious for a change. 🫡
A SQL query walks into a bar, sees two tables and asks, “Can I join you?” ~ Anonymous
Auto Web Login - Part IV
The grand finale is here, where lazy man🚶 Gigi defeats anti-Javascript counter-measures in password-protected forms using the Rust programming language 🦀.
The complete source code for the entire project is available here:
https://github.com/the-gigi/auto-web-login
“Laziness is the mother of invention.” ~ Anonymous
Auto Web Login - Part III
Welcome to episode #3, where lazy man🚶 Gigi recruits AppleScript 🍎 to automatically close browser tabs on his behalf.
If you’re impatient the complete source code for the entire project is available here:
https://github.com/the-gigi/auto-web-login
“Laziness is the mother of invention.” ~ Anonymous
Auto Web Login - Part II
In this episode, lazy man🚶 Gigi can’t be bothered to manage two collections of items in a TamperMonkey 🐒 script, so he is forced to write a Python 🐍 program to generate the script.
If you’re impatient the complete source code for the entire project is available here: https://github.com/the-gigi/auto-web-login
“Laziness is the mother of invention.” ~ Anonymous
Kubernetes Upgrades Are Officially Boring
In the olden days 🏰 (a few years ago) upgrading a Kubernetes cluster was a stressful task 😰 that could bring the system down 💥 or at the very least cause major disruption, deployment moratorium 🚫, and significant toil for most of the engineering team 😓. I’m happy to report that this is no longer the case 🎉…
Auto Web Login - Part I
Once upon a time there was a lazy man🚶. Let’s call him Gigi (because that’s his name) 😊. Gigi would go to extreme lengths to avoid work. This is the story of how Gigi used browser automation 🤖 to avoid clicking the mouse 🐭 a few times on a web page.
“Laziness is the mother of invention.” ~ Anonymous