Category Archives: Kubernetes

Kubernetes is an open-source container orchestration system for automating application deployment, scaling, and management.

GitHub Actions: running the Actions Runner Controller in Kubernetes
0 (0)

16 October 2024

We use GitHub Actions for deployments, and eventually came to the point where we wanted to run its Runners on our own Kubernetes cluster because: self-hosted GitHub Runners are cheaper – in fact, you pay only for the servers that run the jobs we need to run SQL migrations on AWS RDS in AWS VPC… Read More: GitHub Actions: running the Actions Runner Controller in Kubernetes0 (0) »

Loading

Karpenter: an introduction to the Disruption Budgets
0 (0)

8 October 2024

Disruption budgets were introduced in version 0.36, and it looks like a very interesting tool to limit Karpenter from recreating WorkerNodes. For example, in my case, we don’t want EC2 instances to be killed during business hours in the US because we have customers there, so we currently have consolidationPolicy=whenEmpty to prevent “unnecessary” deletion of… Read More: Karpenter: an introduction to the Disruption Budgets0 (0) »

Loading

VictoriaLogs: an overview, run in Kubernetes, LogsQL, and Grafana
0 (0)

9 September 2024

VictoriaLogs is a relatively new system for collecting and analyzing logs, similar to Grafana Loki, but – like VictoriaMetrics compared to vanilla Prometheus – less demanding on CPU/Memory resources. Personally, I’ve been using Grafana Loki for about 5 years, but sometimes I have concerns about it – both in terms of documentation and the overall… Read More: VictoriaLogs: an overview, run in Kubernetes, LogsQL, and Grafana0 (0) »

Loading

AWS: Kubernetes and External Secrets Operator for AWS Secrets Manager
0 (0)

24 August 2024

We have a new EKS cluster 1.30 on our project, where we want to completely remove the old IRSA with OIDC and start using EKS Pod Identities – see AWS: EKS Pod Identities – a replacement for IRSA? Simplifying IAM access management. And everything seems to work fine, but when I started deploying our Backend… Read More: AWS: Kubernetes and External Secrets Operator for AWS Secrets Manager0… »

Loading

Terraform: managing EKS Access Entries and EKS Pod Identities
0 (0)

24 August 2024

So, we have an AWS Elastic Kubernetes Service cluster with Authentication mode EKS API and ConfigMap, which we enabled during upgrade of the EKS Terraform module from version 19.21 to 20.0. Before switching EKS Authentication mode completely to the API, we need to transfer all users and roles to Access Entries of the EKS cluster… Read More: Terraform: managing EKS Access Entries and EKS Pod Identities0 (0) »

Loading

Terraform: EKS and Karpenter version upgrade 19.21 to 20.0
0 (0)

13 July 2024

It seems like a common task to update a version of a Terraform module, but terraform-aws-modules/eks version 20.0 had some pretty big changes with breaking changes. The changes relate to authentication and authorization in AWS IAM and AWS EKS, which I analyzed in the post AWS: Kubernetes and Access Management API, the new authentication in… Read More: Terraform: EKS and Karpenter version upgrade 19.21 to 20.00 (0) »

Loading

Kubernetes: containers, and the “lost” SIGTERM signals
0 (0)

23 June 2024

We have an API service with Gunicorn in Kubernetes that periodically returns 502, 503, 504 errors. I started debugging it, and found a weird thing: there were no messages in the logs about the received SIGTERM, so I first went to deal with Kubernetes – why doesn’t it send it? The Issue So, here’s what… Read More: Kubernetes: containers, and the “lost” SIGTERM signals0 (0) »

Loading

Kubernetes: monitoring Events with kubectl and Grafana Loki
0 (0)

23 June 2024

In Kubernetes, in addition to metrics and logs from containers, we can get information about the operation of components using Kubernetes Events. Events usually store information about the status of Pods (creation, evict, kill, ready or not-ready status of pods), WorkerNodes (status of servers), Kubernetes Scheduler (inability to start a pod, etc.). Kubernetes Events types… Read More: Kubernetes: monitoring Events with kubectl and Grafana Loki0 (0) »

Loading

AWS: Karpenter and SSH for Kubernetes WorkerNodes
0 (0)

23 June 2024

We have an AWS EKS cluster with WorkerNodes/EC2 created with Karpenter. The process of creating the infrastructure, cluster, and launching Karpenter is described in previous posts: Terraform: Building EKS, part 1 – VPC, Subnets and Endpoints Terraform: Building EKS, part 2 – an EKS cluster, WorkerNodes, and IAM Terraform: Building EKS, part 3 – Karpenter… Read More: AWS: Karpenter and SSH for Kubernetes WorkerNodes0 (0) »

Loading

Helm: UPGRADE FAILED: another operation (install/upgrade/rollback) is in progress
0 (0)

24 May 2024

Sometimes, when deploying Helm charts, the error “UPGRADE FAILED: another operation (install/upgrade/rollback) is in progress” may appear: It can occur because the previous deployment failed due to errors in the chart, or the connection between the build machine and the Kubernetes cluster was lost. Check the release status with ls –all: $ helm -n dev-backend-api-ns… Read More: Helm: UPGRADE FAILED: another operation (install/upgrade/rollback) is in progress0 (0) »

Loading