Архів категорії: Kubernetes

Kubernetes – це платформа з відкритим вихідним кодом для управління контейнеризованими робочими навантаженнями та супутніми службами. Її основні характеристики – кросплатформенність, розширюваність, успішне використання декларативної конфігурації та автоматизації. Вона має гігантську, швидкопрогресуючу екосистему.

Kubernetes: контейнери та “загублений” SIGTERM
0 (0)

22 Червня 2024

Маємо API-сервіс в Kubernetes, який періодично видає 502, 503, 504 помилки. Почав його дебажити, і виявив дивну штуку – в логах не було повідомлень про отриманий SIGTERM, а тому спочатку пішов розбиратись з Kubernetes – чому він його не відправляє? The Issue Отже, як це виглядає. Маємо Kubernetes Pod: $ kk get pod NAME READY… Read More: Kubernetes: контейнери та “загублений” SIGTERM0 (0) »

Loading

Kubernetes: моніторинг Events з kubectl та Grafana Loki
0 (0)

21 Червня 2024

В Kubernetes окрім метрик та логів з контейнерів ми маємо змогу отримувати інформацію про роботу компонентів за допомогою Kubernetes Events. В евентах зазвичай зберігається інформація про статус подів (створення, Evict, kill, ready або not-ready статус подів), про WorkerNodes (статус серверів), про роботу Kubernetes Scheduler (неможливість запуску поду, тощо). Типи Kubernetes Events В цілому, всі ці… Read More: Kubernetes: моніторинг Events з kubectl та Grafana Loki0 (0) »

Loading

AWS: Karpenter та SSH для Kubernetes WorkerNodes
0 (0)

19 Червня 2024

Маємо AWS EKS кластер з WorkerNodes/EC2, які створюються за допомогою Karpenter. Процес створення інфраструктури, кластеру та запуск Karpenter описаний у попередніх постах: Terraform: створення EKS, частина 1 – VPC, Subnets та Endpoints Terraform: створення EKS, частина 2 – EKS кластер, WorkerNodes та IAM Terraform: створення EKS, частина 3 – установка Karpenter Чого прям ну дуже… Read More: AWS: Karpenter та SSH для Kubernetes WorkerNodes0 (0) »

Loading

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

24 Травня 2024

Іноді під час деплою Helm-чартів може з’являтись помилка “UPGRADE FAILED: another operation (install/upgrade/rollback) is in progress“: Виникати може через те, що попередній деплой не відбувся через помилки в чарті, або втрачений зв’язок між білд-машиною та Kubernets-кластером. Перевіряємо статус релізу з ls –all: $ helm -n dev-backend-api-ns ls –all NAME NAMESPACE REVISION UPDATED STATUS CHART APP… Read More: Helm: UPGRADE FAILED: another operation (install/upgrade/rollback) is in progress0 (0) »

Loading

AWS: VPC Flow Logs, NAT Gateways, та Kubernetes Pods – детальний обзор
0 (0)

1 Травня 2024

Маємо відносно великі витрати на AWS NAT Gateway Processed Bytes, і стало цікаво що ж саме процеситься через нього. Здавалося б, все просто – включи собі VPC Flow Logs, да подивись, що до чого. Але як діло стосується AWS Elasitc Kubernetes Service та NAT Gateways, то все трохи цікавіше. Отже, про що будемо говорити: що… Read More: AWS: VPC Flow Logs, NAT Gateways, та Kubernetes Pods –… »

Loading

Grafana: AWS EC2 resources та Kubernetes Pods requests
0 (0)

19 Квітня 2024

У Kubecost і подібних рішень є дуже корисна сторінка, де відображається статистика по Kubernetes Pods – скільки CPU/Memory вони використовують, скільки реквестів, лімітів, і які для них рекомендовані значення. Додатково, щоб мати уяву про ефективність роботи Karpenter, я хочу мати дашборду в Grafana, яка буде відображати статистку по всім WorkerNode Kubernetes кластеру – ресурси CPU/Memory… Read More: Grafana: AWS EC2 resources та Kubernetes Pods requests0 (0) »

Loading

Kubernetes: tracing запитів з AWS X-Ray та Grafana data source
0 (0)

2 Березня 2024

Tracing (“трасування”) дозволяє відстежувати запити між компонентами, тобто, наприклад, при використанні AWS і у Kubernetes  ми можемо прослідкувати весь шлях запиту від AWS Load Balancer – до Kubernetes Pod – і до DynamoDB або RDS. Це допомагає нам як відстежувати проблеми з performance – де і які запити виконуються довго – так і мати більше… Read More: Kubernetes: tracing запитів з AWS X-Ray та Grafana data source0… »

Loading

AWS: VPC Prefix та максимальна кількість подів на Kubernetes WorkerNodes
0 (0)

28 Лютого 2024

Кожна WorkerNode в Kubernetes може мати обмежену кількість подів, і цей ліміт визначається трьома параметрами: CPU: загальна кількість requests.cpu не може бути більше, ніж є CPU на Node Memory: загальна кількість requests.memory не може бути більше, ніж є Memory на Node IP: загальна кількість подів не може бути більшою, ніж є IP-адрес у ноди І… Read More: AWS: VPC Prefix та максимальна кількість подів на Kubernetes WorkerNodes0… »

Loading

Terraform: створення модулю для збору логів AWS ALB в Grafana Loki
0 (0)

20 Лютого 2024

Приклад створення модулю Terraform для автоматизації збору логів з AWS Load Balancers у Grafana Loki. Як працює сама схема див. у Grafana Loki: збираємо логи AWS LoadBalancer з S3 за допомогою Promtail Lambda – ALB пише логи в S3-бакет, звідки їх забирає Lambda-функція з Promtail і пересилає у Grafana Loki. В чому ідея з модулем… Read More: Terraform: створення модулю для збору логів AWS ALB в Grafana… »

Loading

Karpenter: моніторинг та Grafana dashboard для Kubernetes WorkerNodes
5 (1)

1 Лютого 2024

Маємо AWS EKS з Karpenter, який займається автоскелінгом EC2 – див. AWS: знайомство з Karpenter для автоскейлінгу в EKS, та встановлення з Helm-чарту. В цілому проблем з ним поки не маємо, але в будь-якому разі потрібен його моніторинг, для чого Karpeneter “з коробки” надає метрики, які можемо використати в Grafana та Prometheus/VictoriaMetrics алертах. Тож що… Read More: Karpenter: моніторинг та Grafana dashboard для Kubernetes WorkerNodes5 (1) »

Loading