Рубрика «devops»

Грейды в DevOps как типы ответственности

Грейды в DevOps как типы ответственности

Читать полностью »

Предисловие

За последние несколько месяцев плотной работы над инфраструктурой для проекта я прошёл путь от первых команд в терминале Linux до настройки полностью отказоустойчивого K3s‑кластера с Zero‑Downtime деплоем. Шишек на этом деле я набил огромное количество, и мне определённо есть чем поделиться.

Сразу оговорюсь: в этой статье не будет монотонных гайдов, слепых копипастов YAML‑манифестов и пересказа официальной документации. С базовой настройкой вы отлично справитесь, прочитав мануалы создателей этих инструментов.

Читать полностью »

Всем привет! Хотел бы поговорить о мониторинге наших web, да и не только web, приложений, в первую очередь, о проблемах, с которыми мы сталкиваемся. В этой статье я буду использовать язык python и популярные сервисы, чтобы содержимое было максимально понятно большинству.

К примеру, мы написали простой проект, ставить Prometheus с Grafana ради одной машины скорее избыточно, поэтому мы используем что‑то типо этого:

curl -sf https://example.com/ >/dev/null || 
curl -s "https://api.telegram.org/bot$TOKEN/sendMessage" 
-d chat_id=$CHAT_ID -d text="Сайт лежит"

Читать полностью »

Стандартная (для многих) история. Отдаём какие‑то данные в реальном времени через server‑side web‑gRPC стримы. Цепочка: балансировщик, дальше Envoy с grpc‑web, дальше бэкенд.

Все проверки зелёные: TCP поднят, хендшейк проходит, /healthz отвечает 200, в графане/slack'e тишина. А фронтенд у клиентов замёрз. И узнали мы об этом от клиентов, а не от мониторинга.

Почему так выходит

Читать полностью »

Карго-культ DevOps: чек-лист самопроверки

Карго-культ DevOps: чек-лист самопроверки

Читать полностью »

Сначала контекст. Я делаю внутреннего read-only агента для инфраструктурных расследований: он может читать данные, но не изменять production. Инженер пишет ему в Mattermost или резервном web-чате обычный вопрос: «почему сервис отдаёт 502?», «кто выкатил эту версию?» или «что изменилось перед инцидентом?». Агент сам собирает данные из Kubernetes, VictoriaMetrics, Elasticsearch, GitLab, Grafana, GSLB и других эксплуатационных источников, а затем возвращает ответ с доказательствами и явно перечисленными пробелами.

Читать полностью »

Расскажу, как за несколько месяцев из простого пайплайна для решения багов с помощью LLM вырос полноценный AI‑ассистент, который живёт прямо в нашем корпоративном Mattermost, умеет сам ходить в десятки внешних систем (GitLab, Jira, Kubernetes, Prometheus и другие), и работает целиком внутри нашего контура — без обращений к внешним сервисам. Все запросы к моделям идут через LLM гейтвей за которым стоит несколько виртуалок с видеокартами для инференса. Сразу скажу что ассистент использовался при написании статьи.

С чего всё началось

Читать полностью »

Как мы перестали копировать .gitlab-ci.yml и спасли пайплайны от хаоса с помощью модулей - 1

Как избежать десятков MR при обновлении пайплайнов и стандартизировать развертывание новых сервисов в GitLab CI? Решение — вынести части пайплайнов в отдельные изолированные модули.

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js