
Расскажу про то, как устроен мониторинг в OKD-кластерах, какие у него есть минусы и как мы их побороли, мигрируя основную функциональность на VictoriaMetrics Agent.
DevOps-инженер
Расскажу про то, как устроен мониторинг в OKD-кластерах, какие у него есть минусы и как мы их побороли, мигрируя основную функциональность на VictoriaMetrics Agent.
В крупных компаниях с множеством платформ, например, интерфейсом интернет-магазина и системой обработки данных, часто требуется настроить доступ между системами через единый вход (SSO). Эта статья рассматривает задачу: обеспечить доступ из фронт-системы (reports-frontend
) к API отчётов (reports-api
) через Keycloak, чтобы JWT-токен содержал роль report_user
. В контексте e-commerce это можно представить как интерфейс магазина, где менеджеры запрашивают отчёты о продажах, а Keycloak управляет аутентификацией.
Кому будет полезно?
Аналитики: Узнаете, как составлять заявки (например, в Jira) на настройку Keycloak, координировать с командами и проверять JWT в DevTools, чтобы избежать ошибок, таких как отсутствие роли в токене.
Разработчики: Познакомитесь с примером кода для React-фронтенда и Node.js-бэкенда, реализующим OIDC и PKCE.
Архитекторы: Поймёте, как Keycloak поддерживает SSO, масштабируемость (через PostgreSQL или Active Directory) и безопасность (PKCE, HTTPS).
Что внутри?
Теория: Объясняем SSO, OpenID Connect (OIDC), компоненты Keycloak (realms, хранилища, PKCE) и как JWT с ролью report_user
обеспечивает доступ.
Практика: Показываем проект с React (reports-frontend
), Node.js (reports-api
) и Keycloak, запущенный через Docker Compose. Код включает realm-export.json
, App.tsx
, server.js
, ReportPage.tsx
.
Аналитика: Рассказываем, как аналитик формирует заявки на настройку Keycloak и координирует работу с админами, разработчиками и DevOps.
Привет, Хабр!
Помните то блаженное время, когда для доступа к любому ресурсу хватало простого WireGuard до сервера в Германии? Я тоже помню. Но эта эпоха закончилась. Недавно я заметил, что мой верный VPN стал лагать, рвать соединение и вести себя так, будто его кто‑то целенаправленно «душит». Это был тот самый момент, когда я понял: игра изменилась. Системы глубокого анализа трафика (DPI) стали умнее, и мой трафик для них был как на ладони.
Это стало моим личным вызовом. Я отправился в путешествие по миру современных средств обхода блокировок, наступил на множество граблей (чего только стоит осознание, что «двойное шифрование» — это миф!), но в итоге нашел свое сокровище — рабочую и относительно устойчивую схему на базе VLESS+Reality и Multi‑hop.
Эта статья — не «серебряная пуля». Это честный, подробный и, надеюсь, полезный гайд по постройке сложной VPN‑цепочки. Мы разберем ее архитектуру, честно поговорим о рисках и соберем все по шагам.
Однажды я столкнулся с проблемой, когда почти потерял коммерчески успешный пет-проект из-за устаревших резервных копий БД (ещё до того, как он стал коммерчески неуспешным). При этом, даже после частичного восстановления, все-таки потерял ~30% прибыли от проекта, много нервов и времени.
Это подтолкнуло меня на разработку своего открытого инструмента для бекапа PostgreSQL. С разными хранилищами, уведомлениями при сбоях и health check'ом. Собственно, о том, как я потерял деньги и затем разработал проект — хочу рассказать в статье ниже.
Yandex Cloud использует квоты для мягкого контроля ресурсов. Квоты можно легко увеличить через специальную форму или техническую поддержку. Однако, очень часто бывает, что о необходимости увеличить квоты мы узнаем поздно, например, когда падает джоба с terraform. Это раздражает, а в некоторых случаях даже может сломать стейт и принести ненужные проблемы. Решить проблему поможет маленькая утилита.
В первой части мы разобрали, как в Linux работает процесс разрешения имен — от вызова getaddrinfo()
до получения IP-адреса. Однако если бы каждый вызов требовал нового DNS-запроса, это было бы неэффективно и сильно нагружало как систему, так и сеть. Поэтому используется кэширование.
Кэширование DNS может быть везде — в glibc, в systemd-resolved, в браузерах и даже в приложениях на Go. Кэш помогает увеличить скорость работы, но создает дополнительные сложности при отладке. Например: вы меняете DNS-запись, но сервер продолжает ходить по старому IP-адресу. Или, Dig показывает правильный адрес, а curl всё равно подключается к устаревшему.
В этой статье разберем различные уровни кэшей самой системы, приложений и языков программирования, контейнеров, прокси. А также их мониторинг и сброс.
Этот коротки чек-лист поможет вам структурированно отвечать на вопросы по расчету нагрузки и стоимости системы на собеседовании System Design. Используйте его как пошаговый гайд, чтобы не упустить ключевые моменты.
Привет, Хабр! В эфире Дмитрий Зайцев из Купера. Я отвечаю за Supply&Demand в команде разработки Shopper — мобильного приложения для сборщиков и курьеров. Сегодня я расскажу о том, что можно сделать, если пользователи постоянно жалуются, что ваше приложение тормозит, а вы не знаете, почему.
Привет! Меня зовут Андрей Кисин, я руковожу командой DevOps в CUSTIS. В этой статье расскажу о нашем опыте использования self-hosted Passbolt — open-source-решения для хранения паролей. Расскажу, как мы его адаптировали под свои нужды и с какими трудностями столкнулись. Посмотрим на альтернативы, их преимущества и недостатки, а также поговорим об организации работы по предоставлению доступа к секретам.
Всем привет, меня зовут Кирилл и я Android-разработчик в Scanny. В прошлых статьях мы разобрали, как будет выглядеть наш CI/CD, научились запускать статический анализатор кода, выполнять Android (Marathon Labs и Firebase Test Lab) и Unit-тестирование, собирать различные Build Flavors и отправлять их в нашу Telegram-группу.
В этой статье мы настроим публикацию свежих версий в Play Market на примере Gradle Play Publisher и Fastlane, а так же поработаем с Gitlab Tag'ами.
Так же улучшим наш CI/CD, собрав свой Docker-образ со всем необходимым окружением.
Системным аналитикам часто приходится проектировать процессы авторизации, выбирать протоколы и описывать требования к аутентификации. Но когда дело доходит до SSO (Single Sign‑On) — архитектурных решений становится неожиданно много:
OIDC, SAML, Kerberos… Что из этого выбрать и почему?
В статье — подробный разбор SSO:
• Что это такое, как работает и где мы сталкиваемся с этим каждый день (вход через Google, корпоративные порталы, файловые ресурсы Windows);
• Как устроены OIDC, SAML и Kerberos — и чем они отличаются на каждом этапе: от запроса до logout;
• Кому какой протокол подходит и как избежать архитектурных ловушек (например, использование SAML в мобильном приложении — это боль);
• И, конечно, схемы, псевдокод и чек‑листы выбора.
Наверняка вы все работаете с Kubernetes, публикуете сервисы наружу через Ingress-контроллер. Уверен, что большинство из вас использует ingress-nginx. Создаете манифест, деплоите его в k8s, но не всегда получаете именно тот результат, который хотели бы. Или же все работает, но спустя какое-то время что-то идет не так.
В этой серии статей, созданной по мотивам выступления на DevOpsConf’25, мы подробно разберемся как работает сам ingress-nginx контроллер и почему это не совсем классический nginx. Погрузимся в дебри LUA-кода чтобы понять, как реализована балансировка. А также затронем тему сниппетов, как их включить если они вам очень нужны, и почему этого делать не стоит.
Меня зовут Алексей Колосков, я Lead DevOps из Hilbert Team. Больше 15 лет я в IT: за это время админил, разрабатывал, развивал on-premise инфраструктуру, инфраструктуру в облаках и даже курсы по DevOps, Security и DataTech в Yandex Cloud. Hilbert Team — провайдер IT-решений для крупного и среднего бизнеса в области облачных технологий, DevOps, DevSecOps, DataOps, MLOps и FinOps. Партнёр Yandex Cloud со специализацией Yandex Cloud Professional по направлениям DevOps и Data Platform.
В первой части мы разобрались с принципами работы Ingress-nginx контроллера. Теперь пришло время углубиться в то, как в Ingress-nginx устроен механизм обновления бэкендов и как реализована балансировка нагрузки на примере sticky sessions. Готовы узнать больше? Поехали!
Напомню, если вдруг забыли, эта статья написана по мотивам выступления на DevOpsConf’25, а меня зовут Алексей Колосков, я Lead DevOps из Hilbert Team.
Итак, рассмотрим, как реализовано обновление бэкендов в самом контроллере.
Привет, хабровчане! Сегодня я хочу рассказать вам о своём новом детище — AlertCLI. Это CLI-утилита для работы с Alertmanager, которая превращает ваши страдания от мониторинга в... ну, скажем так, в менее мучительные страдания. Потому что давайте признаем: когда в 3 часа ночи звонит PagerDuty, хочется не решать проблемы, а решить того, кто их создал.
Мы в EasyProTech часто работаем с инфраструктурой, в которой нет места сложным обёрткам, тяжёлым тулзетам и веб-интерфейсам. Нужно просто:
Всем привет,
Команда devhands.io сделала с Владимиром Перепелицей интервью, посвященное сравнению наиболее популярных решений в области очередей и брокеров сообщений — Kafka, RabbitMQ, NATS.
Владимир — эксперт по большим проектам, очередям и Tarantool, Solution Architect в Exness, создатель S3 в VK Cloud, регулярный спикер и член ПК конференций Highload. А мы, R&D-центр devhands.io, разрабатываем образовательные программы по хайлоаду, перформансу, архитектуре, базам данных и другим направлениям.
Под катом – расшифровка интервью.
Десятки тысяч компаний используют Ansible для управления конфигурациями и автоматизации ИТ-процессов. И мы подготовили подборку материалов, которые помогут познакомиться с этим инструментом — от базовых руководств уровня «с чего начать» до продвинутых практик по написанию эффективных плейбуков.
Когда микросервисов становится столько, что в них легко запутаться, а Prometheus уже не справляется с единой картиной мира, пора переходить на новый уровень observability.
Расскажу как именно я внедрял OpenTelemetry в своей инфраструктуре, с какими сложностями столкнулся и какие возможности открывает такой подход.
Спойлер: вышло хорошо