For my Raspberry Pi Dramble presentation, Everything I know about Kubernetes I learned from a cluster of Raspberry Pis, I wanted to be able to show all of the audience—who could be dozens or hundreds of feet away—a tiny Raspberry Pi cluster of computers, which is in total about the size of a cantaloupe.
Recent Blog Posts
The Geerling household is preparing for the largest home project to date; and while my wife and I have decided to spend a bit extra to have a contractor do the work for the actual kitchen reno, we are still doing what we can to maintain a functional household during the extensive refurbishment of our original kitchen, dining, and laundry area to make it a lot more amenable to our family lifestyle (our current layout is difficult with three kids and two kitchen peninsulas!).
'Phase 1', as I'm calling it, was the electrical work to support moving our electric dryer, clothes washer, and maybe even dishwasher to the basement during the course of the project. I installed a 75A sub-panel in the basement last year (it was my last major home improvement project before the surgery), and it's time to start putting the extra slots in it to good use!
As with most of my projects nowadays, I recorded the entire event as a time-lapse with a Raspberry Pi Zero, using my Raspberry Pi Time-Lapse App. And here it is, for you to enjoy!
It's that time of year again! Leading up to DrupalCon Seattle, Chris Urban and I are working on a presentation on Local Development environments for Drupal, and we have just opened up the 2019 Drupal Local Development Survey.
Local development environment usage results from 2018's survey.
If you do any Drupal development work, no matter how much or how little, we would love to hear from you. This survey is not attached to any Drupal organization, it is simply a community survey to help highlight some of the most widely-used tools that Drupalists use for their projects.
If you're running Kubernetes clusters at scale, it pays to have good monitoring in place. Typical tools I use in production like Prometheus and Alertmanager are extremely useful in monitoring critical metrics, like "is my cluster almost out of CPU or Memory?"
But I also have a number of smaller clusters—some of them like my Raspberry Pi Dramble have very little in the way of resources available for hosting monitoring internally. But I still want to be able to say, at any given moment, "how much CPU or RAM is available inside the cluster? Can I fit more Pods in the cluster?"
So without further ado, I'm now using the following script, which is slightly adapted from a script found in the Kubernetes issue Need simple kubectl command to see cluster resource usage:
Usage is pretty easy, just make sure you have your kubeconfig configured so
kubectl commands are working on the cluster, then run:
If that post title isn't a mouthful...
I'm excited to be moving a few EKS clusters into real-world production use after a few months of preparation. Besides my Raspberry Pi Dramble project (which is pretty low-key), these are the only production-grade Kubernetes clusters I've dealt with—and I've learned a lot. Enough that I'm working on a new book.
Anyways, back to the main topic: As of Kubernetes 1.11, you can auto-expand PVs from most cloud providers, AWS included. And since EKS now runs Kubernetes 1.11.x, you can have your EBS PVs automatically expand by just increasing the PVC claim size in
spec.resources.requests.storage to a larger size (e.g.
To make sure this works, though, you need to make sure of a few things:
Make sure you have the proper setting on your StorageClass
You need to make sure the StorageClass you're using has the
allowVolumeExpansion setting enabled, e.g.:
tl;dr: See the video below for a run-through of my process upgrading Drupal core on the real-world open source Drupal 8 site codebase Drupal Example for Kubernetes.
Over the years, as Drupal has evolved, the upgrade process has become a bit more involved; as with most web applications, Drupal's increasing complexity extends to deployment, and whether you end up running Drupal on a VPS, a bare metal server, in Docker containers, or in a Kubernetes cluster, you should formalize an update process to make sure upgrades are as close to non-events as possible.