Rutger de Knijf

Terraform | Python | Kubernetes | GCP | AWS

I made an online Github Actions upgrader!

TL;DR: Github Actions is absolutely great. It’s fast, clean, clear, and I’ve yet to encounter a task I can’t accomplish. The main advantage of Github Actions over something like BitBucket Pipelines is the sheer number of modules (called “actions”) that you can just use. Need a docker image built? - name: Set up Docker Buildx uses: docker/[email protected] - name: Login to GCR uses: docker/[email protected] with: registry: username: _json_key password: ${{ secrets....

January 31, 2022 · 2 min · Rutger de Knijf

CICD trick to keep your dependencies up to date

Most developers know they should pin their 3rd party dependencies. I usually write Python, but this goes for any language. You don’t want to send your commit into CICD and have it be deployed with packages that are different from what you’ve tested it with locally. On the other hand, every day you lag behind with updating those dependencies you’re making doing that very thing in the future more dangerous. Up to the point that it becomes a “project” in itself, or even until it’s just frozen in place because nobody will touch it....

January 9, 2022 · 3 min · Rutger de Knijf

`internal_error` in Google Cloud HTTP(S) Load Balancing logs

I’d set up a Google App Engine service which was working fine, but I routed traffic to it via an HTTP loadbalancer. Which was working great in acceptance but not so much in production. It just threw a 404: Not Found at me. Nothing else. I checked the service logs, but traffic didn’t seem to arrive at the GEA service. So what now? I enabled the load balancer logs which delivered this gem:...

December 11, 2021 · 2 min · Rutger de Knijf

Limit your BigQuery costs with Terraform

Let’s say you are a happy BigQuery user, and you spend about 100 euro a month on it. This may be fine for your (small) business but an expensive query is quick to make. But what is expensive? Because really; it’s hard to create one that costs more than 30 euro. But what if someone accidentally deploys something that fires off a 1 euro query every second. That means a 2....

October 6, 2021 · 2 min · Rutger de Knijf

PostgreSQL benchmark over Cloud Proxy in GKE: socket vs port

In my bubble it’s always been common knowledge that a database connection over a Unix socket is faster than that same connection over a TCP connection. But does this boat still float when using the Google recommended way to access Cloud SQL from GKE: with Google Cloud Proxy as a sidecar in a pod? Since Cloud Proxy moves data over a TCP tunnel, speed should be identical. So to save everyone a little time, I did some very minimal benchmarking:...

July 13, 2019 · 3 min · Rutger de Knijf