-
How to Connect to a CloudSQL MySQL Instance with Private IP
Not sure about everyone else, I wouldn’t run my MySQL server like a website with a public IP attached. Making the instance private is good as a security approach it is a bit inconvenient when I need to connect to it from my laptop. With Google Cloud CLI gcloud command, it’s very easy to connect…
-
Solved: HTTP 525/526 CloudFlare Errors
HTTP 525/526 errors are unofficial HTTP errors specific to CloudFlare. In a nut shell they mean HTTP TLS cert related errors when communicating with origin web servers. I got one of these from my sites so I took a look into this. I use cert-manager’s integration with Let’s Encrypt to automatically renew my TLS certs.…
-
How I Upgraded Sail Operator And How I Would Do It Next Time
It’s been a while since I installed Istio with Sail Operator in my home lab Kubernetes cluster. The version of Sail Operator was 0.2 and now 1.26 is available. There are so many releases between 0.2 and 1.26! Can I upgrade directly to the latest and skip all the middle ones? It’s my home lab…
-
Resource Optimisation Made Simple in Kubernetes Clusters
TL; DR: I made a shell script which prints out the CPU and memory usage vs allocation for each pod in a Kubernetes cluster. Then it’s easy to tell where to optimise. Here it is: Just in case, you need the metrics-server for the kubectl top command to function. 🙂
-
How to Upgrade Kubeadm Kubernetes Clusters The Fast Way
My home lab Kubernetes cluster built with kubeadm hasn’t got an upgrade for a while, still at 1.29 which was first released roughly 2 years ago. And the latest is 1.33 already. According to the official kubeadm docs Skipping MINOR versions when upgrading is unsupported. Which basically says, if you try to upgrade from 1.29…
-
Solved: Couldn’t Delete istio-system Namespace
The other day, I was playing with ArgoCD application sets and by mistake renamed an application owned by its application set. What’s worse is, the application is istio. By the default logic an application set will delete the old application and create one with the new name, so the istio application was being deleted. I…
-
How to Deploy to Multiple Clusters with ArgoCD
TL; DR: here are the steps to deploy to multiple Kubernetes clusters using a single ArgoCD server + Application Sets. Let’s get to it. Add a Kubernetes Cluster to ArgoCD First, we’ll use the argocd CLI. Just in case you don’t have it yet, it’s easy to install. Assuming kubectl is already configured and has…
-
How to Migrate from Istio Ingress Gateway to Kubernetes Gateway API
Why? Before the last Istio upgrade I did with Sail Operator, there was Istio 1.19 running in my Kubernetes lab. And the Istio Ingress Gateway has worked very well for years, after I migrated from Kubernetes Ingress Controller. Now with Istio 1.23, Kubernetes Gateway API became an option along side with Istio Ingress Gateway. What…