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

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

Grafana Loki: збираємо логи AWS LoadBalancer з S3 за допомогою Promtail Lambda

15 Листопада 2023
 

 Зараз ми вміємо збирати логи API Gateway та CloudWatch Logs, див. Loki: збір логів з CloudWatch Logs з використанням Lambda Promtail. Але в процесі міграції в Kubernetes у нас з’явились Application Load Balancers, які вміють писати логи тільки в S3, і нам треба навчитись збирати логи і звідти. Формат логу AWS ALB див. у Access… Читати далі »

Kubernetes: Liveness та Readiness Probes – Best practices

13 Листопада 2023
 

 Кілька корисних порад по використанню Liveness та Readiness Probes в Kubernetes – різниця між ними, та як правильно налаштовувати ці перевірки. Якщо зовсім коротко, то: livenessProbe: використовується Kubernetes, щоб знати, коли потрібно виконати restart поду readinessProbe: використовується Kubernetes, щоб знати, коли контейнер готовий приймати трафік, тобто – коли відповідний Kubernetes Service може додавати цей под… Читати далі »

VictoriaMetrics: Exporter в CronJob та пуш метрік без Pushgatway

7 Листопада 2023
 

 В пості Prometheus: запуск Pushgateway у Kubernetes з Helm та Terraform писав про те, як для Prometheus додати Pushgateway, який дозволяє використовувати Push-модель замість Pull, тобто – експортер може відправити метрики прямо в базу замість того, щоб чекати, коли до нього прийде сам Prometheus або VMAgent. У VictoriaMetrics з цим набагато простіше, бо ніякого Pushgateway… Читати далі »

Karpenter: Beta version – обзор змін та upgrade v0.30.0 на v0.32.1

4 Листопада 2023
 

 Отже, Karpenter зробив ще один великий шаг до релізу, і у версії 0.32 вийшов з етапу Alpha до Beta. Давайте кратко подивимось на зміни – а вони досить суттєві, а потім виконаємо апгрейд на EKS з Karpneter Terraform module та Karpenter Helm chart. Сам процес установки Karpenter описував у пості Terraform: створення EKS, частина 3… Читати далі »

GitHub Actions: Docker-білд в AWS ECR та деплой Helm-чарту в AWS EKS

2 Жовтня 2023
 

 Отже, маємо розгорнутий кластер Kubernetes – див. серію Terraform: створення EKS, частина 1 – VPC, Subnets та Endpoints. Маємо GitHub Actions workflow для його деплою – див. GitHub Actions: деплой Dev/Prod оточень з Terraform. Прийшов час почати деплоїти наш бекенд в Kubernetes. Тут знов використаємо GitHub Actions – будемо білдити Docker-образ з API-сервісом бекенду, зберігати… Читати далі »

Terraform: створення EKS, частина 4 – установка контролерів

14 Вересня 2023
 

 Остання, четверта частина, в якій ми встановимо решту контроллерів і додамо пару корисних дрібниць. Попередні частини: Terraform: створення EKS, частина 1 – VPC, Subnets та Endpoints Terraform: створення EKS, частина 2 – EKS кластер, WorkerNodes та IAM Terraform: створення EKS, частина 3 – установка Karpenter Планування Що нам залишилось зробити: встановити EKS EBS CSI Addon встановити ExternalDNS контролер… Читати далі »

Terraform: створення EKS, частина 3 – установка Karpenter

14 Вересня 2023
 

 Це вже третя частина по розгортанню кластеру AWS Elastic Kubernetes Service з Terraform, в якій будемо додавати в наш кластер Karpenter. Вирішив винести окремо, бо виходить досить довгий пост. І вже в останній (сподіваюсь), четвертій частині, додамо решту – всякі контроллери. Попередні частини: Terraform: створення EKS, частина 1 – VPC, Subnets та Endpoints Terraform: створення… Читати далі »

Terraform: створення EKS, частина 2 – EKS кластер, WorkerNodes та IAM

9 Вересня 2023
 

 Продовжуємо тему розгортання кластеру AWS Elastic Kubernetes Service за допомогою Terraform. У першій частині підготували AWS VPC  – див. Terraform: створення EKS, частина 1 – VPC, Subnets та Endpoints. В цій частині розгорнемо сам кластер і налаштуємо AIM для нього, а в наступній – встановимо Karpenter та решту контроллерів. Планування В цілому, список TODO наразі… Читати далі »

Terraform: створення EKS, частина 1 – VPC, Subnets та Endpoints

7 Вересня 2023
 

 Отже, з Терраформом трохи розібрались, згадали що до чого – час робити щось реальне. Перше, що будемо розгортати з Terraform – це кластер AWS Elastic Kubernretes Service та всі пов’язані з ним ресурси, бо зараз це зроблено з AWS CDK, і окрім інших проблем з CDK, вимушені мати EKS 1.26, бо 1.27 в CDK ще… Читати далі »

VictoriaMetrics: VMAuth – проксі, аутентифиікація та авторизація

23 Серпня 2023
 

 Продовжуємо розвивати наш стек моніторингу. Див. VictoriaMetrics: створення Kubernetes monitoring stack з власним Helm-чартом. Що хочеться: зробити доступ девелоперам, щоб вони могли в Alertmanager самі виставляти Silence для алертів аби не спамити в Slack, див. Prometheus: Alertmanager Web UI и Silence алертов. Для того, щоб забезпечити безпечний доступ до нього можна використати рішення від VictoriaMetrics… Читати далі »