Архив рубрики: Kubernetes

Kubernetes is an open-source container orchestration system for automating application deployment, scaling, and management.

GitLab: Helm-чарт values, зависимости и деплой в Kubernetes с AWS S3

4 февраля 2023

Продолжаем сетапить GitLab в Kubernetes. Первая часть – GitLab: компоненты, архитектура, инфраструктура и запуск из Helm-чарта в Minikube, теперь давайте готовиться деплоить в AWS Elastic Kubernetes Service. Что будем делать и где: деплоим в AWS из Helm-чарта, для начала какой-то “test env” Kubernetes – AWS EKS object store – AWS S3 PostgreSQL – из operator Redis –… Читать далее »

GitLab: компоненты, архитектура, инфраструктура и запуск из Helm-чарта в Minikube

2 февраля 2023

Так как GitLab недавно изменил политику предоставления Free-доступа, и теперь по Free подписке будет доступно только 5 пользователей, то решили мы переезжать на self-hosted версию. Вообще с лицензией у них интересно: цена зависит от количества пользователей, купить можно минимум на год, и после покупки уменьшить количество пользователей в лицензии нельзя (но можно увеличить). Крутить будем… Читать далее »

Kubernetes: мониторинг стоимости кластера – Kubernetes Resource Report и Kubecost

23 января 2023

Очень полезное дело – мониторить то, насколько эффективно используется кластер, особенно, если приложения деплоятся девелоперами, которые не сильно вникают в requests, и устанавливают завышенные значения “про запас”. Запас, конечно, нужен – но и просто так реквестить ресурсы идея плохая. К примеру, у вас есть WorkerNode у которой 4 vCPU (4.000 milicpu) и 16 GB RAM,… Читать далее »

Kustomize: управление манифестами Kubernetes – обзор, примеры

15 января 2023

Kustomize – система управления конфигурациями (configuration management tool) для Kubernetes, позволяющая использовать общие наборы манифестов которые могут быть изменены для каждого конкретного окружения/кластера, и может быть альтернативой шаблонам Helm (или дополнять его). Общая концепция Kustomize – “where, what, and how” – “где, что и как”: “где” – это наш базовый манифест, например deployment.yaml “что” –… Читать далее »

Grafana Loki: алерты с Ruler и labels из логов

15 декабря 2022

Пока пост по архитектуре и запуску Loki ещё в черновиках – посмотрим, как в Loki создавать алерты, за которые отвечает сервис ruler. Документация по алертам в Loki – Rules and the Ruler. Идея простая: создаём файл с алертами в Prometheus-like формате подключаем его к ruler ruler парсит логи по заданным в конфиге выражениям, и пушит… Читать далее »

Pritunl: запуск VPN в Kubernetes

5 октября 2022

Pritunl – VPN-сервер с пачкой дополнительных возможностей по безопасности и управлению доступами. По сути – является просто обёрткой над OpenVPN, добавляя к нему такие себе Access Control Lists в виде Организаций, юзеров и роутов. Задача – развернуть тестовый инстанс Pritunl в Kubernetes, что бы потрогать его изнутри. Пока использовать будем бесплатную версию, попозже глянем платную.… Читать далее »

Kubernetes: Minikube, и LoadBalancer в статусе Pending

5 октября 2022

После запуска Pritunl в Minikube невозможно подключиться к ВПН: … 2022-10-03 13:50:32 TCP/UDP: Preserving recently used remote address: [AF_INET]194.168.3.100:1194 2022-10-03 13:50:32 UDP link local: (not bound) 2022-10-03 13:50:32 UDP link remote: [AF_INET]194.168.3.100:1194 … Проверяем его Kubernetes Service: [simterm] $ kubectl -n pritunl-local get svc NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE pritunl LoadBalancer 10.102.129.25 <pending> 1194:30166/TCP… Читать далее »

PostgreSQL: запуск в Kubernetes з PostgreSQL Operator и мониторинг с Prometheus

5 октября 2022

Итак, Друид мы запустили. Apache Druid: обзор, запуск в Kubernetes и мониторинг с Prometheus . Пока что в дефолтном виде, то есть в роли сторейджа для метаданных используется локальная база Apache Derby . Дальше будем переключать Друид на PostgreSQL, еще позже – убирать оттуда ZooKeeper. Ну а для начала – запустим кластер PostgreSQL в Kubernetes, добавим PostgreSQL Exporter для Promethues и настроим сбор метрик.… Читать далее »

Apache Druid: обзор, запуск в Kubernetes и мониторинг с Prometheus

14 сентября 2022

Apache Druid – колоночная база данных, ориентированная на работу с большими объемами данных, сочетающая в себе возможности и преимущества Time-Series Database, Data Warehouse и поисковой системы. Общая задача – настроить мониторинг кластера Druid в Kubernetes, для чего сначала посмотрим что это вообще такое и как оно всё работает, а затем запустим Друид и потрогаем его… Читать далее »

Kubernetes: менеджер плагинов Krew и полезные плагины для kubectl

1 октября 2021

Одна из наиболее приятных возможностей kubectl – это его расширяемость за счёт плагинов. Конечно, есть Lens, который прям отлично заходит разработчикам, которые не очень любят консоль, или есть k9s, но плагины kubectl – отдельная тема. В этом посте установим Krew для управления плагинами, и рассмотрим несколько наиболее интересных, с моей личной точки зрения, плагинов. Krew… Читать далее »