Архів за місяць: Липень 2025

Kubernetes: що таке Kubernetes Operator та CustomResourceDefinition

18 Липня 2025
 

 Мабуть, всі користувались операторами в Kubernetes, наприклад – PostgreSQL operator, VictoriaMetircs Operator. Але що там відбувається “під капотом”? Як і до чого застосовуються CustomResourceDefinition (CRD), і що таке, власне “оператор”? І, врешті решт – в чому різниця між “Kubernetes Operator” та “Kubernetes Controller”? В попередній частині – Kubernetes: Kubernetes API, API Groups, CRD та etcd… Читати далі »

Kubernetes: PVC в StatefulSet та помилка “Forbidden updates to statefulset spec”

16 Липня 2025
 

 Маємо Helm-чарт VictoriaLogs, в якому заданий PVC з розміром в 30 GB, якого нам стало вже замало, і його треба збільшити. Але проблема полягає в тому, що .spec.volumeClaimTemplates[*].spec.resources.requests.storage в STS являється immutable, тобто ми не можемо просто змінити size через values.yaml, бо це призведе до помилки “Forbidden: updates to statefulset spec for fields other than… Читати далі »

Kubernetes: Kubernetes API, API Groups, CRD та etcd

12 Липня 2025
 

 Взагалі почав писати створення власного Kubernetes Operator, але вирішив винести окремо тему про те, що таке власне Kubernetes CustomResourceDefinition, і як створення CRD взагалі працює на рівні Kubernetes API та etcd. Тобто, почати з того, як власне Kubernetes працює з ресурсами, і що відбувається, коли ми створюємо чи редагуємо ресурси. Продовження – Kubernetes: що таке Kubernetes… Читати далі »

VictoriaMetrics: фікс помилки “no matches for kind VMAnomaly”

10 Липня 2025
 

 Вже не вперше стикаюсь з аналогічними помилками при апгрейді VictoriaMetrics, тож прийшов час записати собі в нотатки. Отже, після апгрейду victoria-metrics-k8s-stack 0.55.0 => 0.56.0 в логах Operator з’явились помилки: … {“logger”:”controller-runtime.source.EventHandler”,”msg”:”if kind is a CRD, it should be installed before calling Start”,”kind”:”VMAnomaly.operator.victoriametrics.com”,”error”:”no matches for kind \”VMAnomaly\” in version \”operator.victoriametrics.com/v1\””} … {“logger”:”setup”,”msg”:”cannot setup manager”,”error”:”cannot start controller… Читати далі »

Arch Linux: linux-firmware-nvidia: /usr/lib/firmware/nvidia/ exists in filesystem

9 Липня 2025
 

 Не зважаючи на те, що про зміни було повідомлено в листах від Arch Linux – чомусь дуже у багатьох виникли проблеми з останнім апдейтом: в сабредітах по Arch Linux на Reddit прям через один топік питають “Аааа, в мене все зламалось, що робити?!?”. Глянемо як все ж завершити апгрейд, і що саме мінялось. The issue:… Читати далі »

Kubernetes: Pod resources.requests, resources.limits та Linux cgroups

2 Липня 2025
 

 Як саме resources.requests та resources.limits в Kubernetes manifest працюють “під капотом”, і як саме Linux буде виділяти та обмежувати ресурси для контейнерів? Отже, Kubernetes для Pod ми можемо задати два основні параметри для CPU та Memory – spec.containers.resources.requests та spec.containers.resources.limits: resources.requests: впливає на те, як і де Pod буде створено, і скільки ресурсів гарантовано він… Читати далі »