Архів категорії: Configuration/Orchestration

Terraform: менеджмент EKS Access Entries та EKS Pod Identities

15 Липня 2024
 

 Отже, маємо кластер AWS Elastic Kubernetes Service з Authentication mode EKS API and ConfigMap, який ми включили під час апгрейду Terraform-модуля з версії 19.21 на 20.0. Перед тим, як переключати EKS Authentication mode повністю на API – нам потрібно з aws-auth ConfgiMap перенести всіх юзерів і ролі в Access Entries EKS-кластера. І ідея зараз така,… Читати далі »

Terraform: EKS та Karpenter – upgrade версії модуля з 19.21 на 20.0

10 Липня 2024
 

 Наче звична задача – оновити версію модулю Terraform, але в terraform-aws-modules/eks версії 20.0 були досить великі зміни з breaking changes. Зміни стосуються аутентифікації та авторизації в AWS IAM та AWS EKS, які розбирав в пості AWS: Kubernetes та Access Management API – нова схема авторизації в EKS. Але там ми все робили руками, аби взагалі… Читати далі »

AWS: RDS з IAM database authentication, EKS Pod Identities та Terraform

27 Червня 2024
 

 Готуємось мігрувати базу даних нашого Backend API з DynamoDB до AWS RDS з PostgreSQL, і нарешті вирішив спробувати що ж таке AWS RDS IAM database authentication, який з’явився здається ще десь у 2021. IAM database authentication, як, в принципі, можна здогадатись з назви, дозволяє нам виконувати аутентифікацію в RDS за допомогою AWS IAM, а не… Читати далі »

AWS: Karpenter та SSH для Kubernetes WorkerNodes

19 Червня 2024
 

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

Pritunl: запуск VPN в AWS на EC2 з Terraform

31 Травня 2024
 

 Колись вже трохи писав про Pritunl – Pritunl: запуск VPN в Kubernetes. Повернемось до цієї теми ще раз, але цього разу на EC2 в AWS, без Kubernetes. Отже, що треба – це запустити якийсь VPN-сервіс для проекту, або мати доступ до всяких Kubernetes API/Kubernetes WorkerNodes/AWS RDS у приватних мережах. Вибір тут, в принципі, є –… Читати далі »

Dependabot: GitHub та Terraform versions management

29 Травня 2024
 

 З часом, коли проект росте, то рано чи пізно постане питання про апгрейд версій пакетів, модулів, чартів. Робити це вручну, звісно, можна – але тільки до якоїсь межі, бо врешті-решт ви просто фізично не зможете моніторити та оновлювати все. Для автоматизації таких процесів існує багато рішень, але найчастіше зустрічаються два – Renovate та Dependabot. За… Читати далі »

GitHub Actions: деплой Terraform з review запланованих змін

7 Березня 2024
 

 У пості GitHub Actions: деплой Dev/Prod оточень з Terraform я вже описував те, як можна реалізувати CI/CD для Terraform з GitHub Actions, але в тому рішенні є один суттєвий недолік: немає можливості зробити review змін перед тим, як їх застосувати з terraform apply. GitHub Actions має можливість використання Reviewing deployments для approve/reject, проте ця можливість… Читати далі »

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

20 Лютого 2024
 

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

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-сервісом бекенду, зберігати… Читати далі »