Архів автора: setevoy

AWS: CDK та Python, IAM OIDC Provider, та Kubernetes Controllers

12 Липня 2023

Отже, маємо AWS EKS кластер, створений з AWS CDK та Python – AWS: CDK – створення EKS з Python та загальні враження від CDK та маємо уявлення, як працює IRSA – AWS: EKS, OpenID Connect та ServiceAccounts. Наступним кроком після розгортання самого кластеру треба налаштувати OIDC Identity Provider в AWS IAM, та додати два контролери… Читати далі »

AWS: EKS, OpenID Connect та ServiceAccounts

7 Липня 2023

Зараз сетаплю новий ЕКС кластер, і серед інших компонентів запускаю в ньому ExternalDNS, який використовує Kubernetes ServiceAccount для аутентифікації в AWS, щоб мати змогу вносити зміни до доменної зони в Route53. Однак забув налаштувати Identity Provider в AWS IAM, і ExternalDNS видав помилку: level=error msg=”records retrieval failed: failed to list hosted zones: WebIdentityErr: failed to… Читати далі »

AWS: CDK – створення EKS з Python та загальні враження від CDK

23 Червня 2023

Terraform то чудово, але поки що вирішили перші кластера AWS EKS створювати за допомогою AWS CDK, бо по-преше – він вже є на проекті, по-друге – самому цікаво спробувати новий інструмент. Тож сьогодні розглянемо що з цього вийшло, та як створювався кластер і необхідні ресурси. Про перше знайомство з СDK писав тут – AWS: CDK… Читати далі »

VictoriaMetrics: знайомство та використання замість Prometheus

8 Червня 2023

Давно і багато чув про VictoriaMetrics, і нарешті настав час, коли її можна спробувати. Отже, в двох словах – VictoriaMetrics це “Prometheus на стероідах”, і повністю з ним сумісна – може використовувати його файли конфігурації, експортери, PromQL тощо. Тож як для людини, яка завжди користувалась Prometheus, перше питання – в чьому різниця? Єдине, що пам’ятаю,… Читати далі »

Prometheus: GitHub Exporter – пишемо власний експортер для GitHub API

1 Червня 2023

Прийшла досить цікава задачка – побудувати в Grafana дашборду, в якій би відображався статус процессу розробки, а саме – перформанс, тобто ефективність наших DevOps-процесів. Потрібно це тому, что ми намагаємось побудувати “true continuous deployment”, щоб код автоматично потрапляв у Production, і нам важливо бачити як саме проходить процес розробки. Загалом для оцінки ефективності процессу розробки… Читати далі »

Loki: збір логів з CloudWatch Logs з використанням Lambda Promtail

20 Травня 2023

Збирати логи у Grafana Loki з Kubernetes дуже просто – запускаємо Promtail у DaemonSet, йому вказуємо читати всі дані з /var/logs – і готово (насправді взагалі нічого не вказуємо – з Helm-чарту все працює з коробки). А от як бути з CloudWatch Logs? На новому проекті маємо купу AWS Lambda, API Gateways і т.д, і… Читати далі »

Terraform: початок роботи та планування нового проекту – Dev/Prod та bootsrap

14 Травня 2023

Треба запланувати використання Terraform у новому проекті, а це включає в себе і планування структри файлів для проекті, і як створити бекенд (тобто bootstrap) і інші потрібні для початку роботи ресурси, і подумати на тему роботи з кількома оточеннями і AWS-аккаунтами. Взагалі, цей пост спочатку писався чисто про створення AWS SES, але я почав додавати… Читати далі »

AWS: CDK – знайомство та приклади на Python

12 Травня 2023

AWS Cloud Development Kit (AWS CDK) дозволяє описувати інфрастуктуру використовуючи мови програмування TypeScript, JavaScript, Python, Java, C# або Go. “Під капотом” створює CloudFormation стек, в якому створються ресурси, описані в вашому коді. Відповідь на питання “Нашо CDK, коли є Terraform?” можна знайти ось тут – 4 ultimate reasons to prefer AWS CDK over Terraform. Але… Читати далі »

AWS: Fargate – можливості, порівняння з Lambda/EC2 та використання з AWS EKS

3 Травня 2023

AWS Fargate – ще одне serverless-рішення від Amazon, яке бере на себе управління інфраструктурою, позбавляючи користувача необхідності витрачати час на налаштування ЕС2-інстансів, операційної системи, систем управління контейнерами тощо. Взагалі, коли знайомився з Fargate, натрапив на чудове відео з AWS re:Invent 2022, де дуже добре розказано (і показано) про Shared Responsibility model у AWS – за… Читати далі »

Kubernetes: вертикальний скейлінг подів з Vertical Pod Autoscaler

29 Квітня 2023

Окрім Horizontal Pod Autoscaler (HPA), який створює додаткові поди якщо наявні починають використовувати більше CPU/Memory, ніж налаштовано у лімітах HPA, існує і Vertical Pod Autoscaler (VPA), який працює за іншою схемою: замість горизонтального масштабування, тобто збільшення кількості подів, він змінює resources.requests поду, що призводить до того, что Kubernetes Scheduler “переселяє” цей под на іншу WorkerNode,… Читати далі »