Yearly Archives: 2025

AWS: creating an OpenSearch Service cluster and configuring authentication and authorization

15 September 2025
 

  In the previous part, AWS: Getting Started with OpenSearch Service as a Vector Store, we looked at AWS OpenSearch Service in general, figured out how data is organized in it, what shards and nodes are, and what types of instances we actually need for data nodes. The next step is to create a cluster… Read More »

Arch Linux: installing and configuring KDE Plasma in 2025

14 September 2025
 

  In the previous part – Arch Linux: installation in 2025 – disks, encryption, system installation – we installed the system itself, now we’ve gotten around to the working environment. Let’s go through the general settings of Arch Linux (more precisely, any Linux), then talk about the choice of Desktop Environments, and actually install and… Read More »

VictoriaLogs: “rate limit exceeded” and monitoring ingested logs

13 September 2025
 

  We use two systems for collecting logs in the project: Grafana Loki and VictoriaLogs, to which Promtail simultaneously writes all collected logs. We cannot get rid of Loki: although developers have long since switched to VictoriaLogs, some alerts are still created from metrics generated by Loki, so it is still present in the system.… Read More »

Terraform: AWS EKS Terraform module update from version 20.x to version 21.

6 August 2025
 

 AWS EKS Terraform module version v21.0.0 added support for the AWS Provider Version 6. Documentation – here>>>. The main changes in the AWS EKS module are the replacement of IRSA with EKS Pod Identity for the Karpenter sub-module: Native support for IAM roles for service accounts (IRSA) has been removed; EKS Pod Identity is now… Read More »

Terraform: “no available releases match the given constraints

6 August 2025
 

 A fairly common error when upgrading module versions, when there are restrictions on module or provider versions, and they do not match each other. The Issue In this case, I merged Pull Requests from Renovate and didn’t notice that terraform-aws-modules/terraform-aws-lambda needed hashicorp/aws provider version 6: And first I upgraded Lambda to version 8. After that… Read More »

Kubernetes: PVC in StatefulSet, and the “Forbidden updates to statefulset spec” error

22 July 2025
 

 We have a VictoriaLogs Helm chart with a PVC size of 30 GB, which is no longer enough for us, and we need to increase it. But the problem is that .spec.volumeClaimTemplates[*].spec.resources.requests.storage in STS is immutable, that is, we can’t just change the size through values.yaml file, because it will lead to the error“Forbidden: updates… Read More »

Kubernetes: what are the Kubernetes Operator and CustomResourceDefinition

21 July 2025
 

 Perhaps everyone has used operators in Kubernetes, for example, PostgreSQL operator, VictoriaMetrics Operator. But what’s going on under the hood? How and to what are CustomResourceDefinition (CRD) applied, and what is an “operator”? And finally, what is the difference between a Kubernetes Operator and a Kubernetes Controller? In the previous part – Kubernetes: Kubernetes APIs,… Read More »

Kubernetes: Pod resources.requests, resources.limits, and Linux cgroups

20 July 2025
 

 How exactly do resources.requests and resources.limits in a Kubernetes manifest works “under the hood”, and how exactly will Linux allocate and limit resources for containers? So, in Kubernetes for Pods, we can set two main parameters for CPU and Memory – the spec.containers.resources.requests and spec.containers.resources.limits fields: resources.requests: affects how and where a Pod will be… Read More »