Обновить

Администрирование

Сначала показывать
Порог рейтинга
Уровень сложности

TSPU Checker: как я написал инструмент для диагностики блокировок

Уровень сложностиСредний
Время на прочтение6 мин
Охват и читатели28K

В этой статье я расскажу, как мы с нуля разработали диагностический инструмент для анализа работы ТСПУ (Технических средств противодействия угрозам) в российских сетях. Скрипт позволяет определить режим блокировок, проверить доступность портов, выявить SNI-фильтрацию и даже диагностировать подмену DNS. Весь код — открытый, под MIT-лицензией.

Читать далее

Canary в Kubernetes с Argo Rollouts и Prometheus: автоматический анализ и откат

Уровень сложностиСредний
Время на прочтение8 мин
Охват и читатели6.8K

Обычный Kubernetes Deployment умеет заменить одну версию приложения другой, но почти ничего не знает о том, как новая версия ведёт себя под реальным трафиком. Контейнер может быть живым, readiness-проба — зелёной, а error rate или latency уже уезжают в красную зону.

В статье разберём, как собрать canary-деплой с Argo Rollouts и Prometheus: настроить пошаговый выкат, подключить AnalysisTemplate, автоматически откатываться по метрикам и не перепутать replica-based canary с настоящим traffic split через ingress или service mesh.

Читать туториал

Как строить отказоустойчивые кластеры Kubernetes: краткий разбор от команды VK Cloud

Уровень сложностиПростой
Время на прочтение8 мин
Охват и читатели8.4K

Миграция в облако и переход к микросервисной архитектуре сделали Kubernetes (k8s) де-факто стандартом для управления контейнерами. По данным 2025 года, технологию уже применяют 60% крупных российских компаний, а ещё 15% планируют внедрение в будущем. Причем 59% компаний называют отказоустойчивость ключевым критерием при выборе Kubernetes, но лишь единицы реализуют его на практике. Проблема кроется в недооценке системных рисков — от отсутствия резервирования control plane до некорректных таймингов readiness-проб, пропускающих «полуживые» поды в балансировщик.

В этой статье мы кратко разберем ключевые принципы проектирования и эксплуатации отказоустойчивых кластеров, типовые сценарии сбоев и рекомендации по исключению рисков на всех уровнях.

Читать далее

Как перестать зависеть от Cloudflare в DNS и не выстрелить себе в ногу

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели8.8K

DNS — это та штука, которую замечаешь только когда она падает. Весь твой трафик, почта, сертификаты, доступ к админкам — всё висит на том, что кто-то корректно ответит на запрос «а где example.com?». У меня этим «кем-то» был Cloudflare. Для большинства это правильный выбор — удобно, быстро, бесплатно. Но в какой-то момент я поймал себя на мысли, что фундамент всей моей инфраструктуры я не контролирую: он живёт в чужом дашборде, по чужим правилам и лимитам.

Я перенёс все свои зоны — несколько десятков доменов — на собственную DNS-инфра- структуру. Ниже — зачем, какая получилась архитектура, и обо что я споткнулся по дороге.

Читать далее

Как я перестал переключать VPN и разделил рабочий и личный интернет архитектурно

Уровень сложностиСредний
Время на прочтение4 мин
Охват и читатели48K

Если вы работаете в большой компании и одновременно живёте там, где есть какие-то региональные ограничения на сервисы, у вас почти наверняка две VPN-конфигурации:

рабочая — для доступа к внутренним ресурсам (GitLab, Jira, Confluence и т.д.)

личная — для личных целей

И постоянное переключение между ними — это, мягко говоря, неудобно.

Читать далее

От виртуальных рук до ИИ для выживальщиков: любопытные открытые агентные ОС [и один хардверный проект]

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели11K

Операционные системы (ОС), в которых ИИ-агенты решают поставленные задачи и взаимодействуют с интерфейсами программ, — это «новый черный». Мы в Beeline Cloud решили рассказать о нескольких таких открытых проектах. Среди них: OpenFang, где за исполнение действий отвечают модули-«руки», проект, позволяющий управлять планировщиками Linux и даже модульный полевой компьютер с ИИ-помощником, который может пригодиться в постапокалипсисе дикой природе без связи с миром.

Читать далее

Best Practices по Dockerfile: от базового образа и кеша до SBOM, Cosign и CI/CD

Уровень сложностиСредний
Время на прочтение30 мин
Охват и читатели17K

Статья получилась большой: практик много, и каждая из них важна по-своему. Я собрал её как набор best practices: не все пункты нужны каждому проекту, но почти каждый пункт однажды всплывает на ревью, в CI или после неприятного инцидента.

Я старался писать для разных грейдов: от базовых ошибок вроде COPY . ., latest и root-пользователя до продовых тем вроде BuildKit, секретов, SBOM, подписи образов и защиты цепочки поставки ПО.
Поэтому язык подачи здесь намеренно сухой, прямой и инженерный: без долгих заходов, без воды и без пересказа документации ради пересказа. Я хотел сделать не обзорную статью, а рабочую памятку, к которой можно вернуться при написании, ревью или доработке Dockerfile.

Чтобы в статье было легче ориентироваться, я разбил её на смысловые блоки. Ниже оглавление: нажали на нужный пункт — сразу перешли к соответствующему разделу.

Оглавление:

1. Базовый образ, версии и управляемое обновление

2. Контекст сборки, .dockerignore, копирование файлов и безопасное получение внешних данных ...

Читать далее

Встречайте: muenvsubst — улучшенный envsubst

Время на прочтение5 мин
Охват и читатели11K

Все мы любим envsubst за простоту, но он примитивен. Переходить на Python с Jinja2 ради шаблонизации конфигов в CI/CD — всё равно что стрелять из пушки по воробьям, да и тащить рантайм ради пары переменных не хочется. В мире Go есть неплохие аналоги, но их вес в 100 МБ вгоняет в тоску, когда стремишься к минимализму в Docker-образах.

Теперь всё изменилось так как появился muenvsubst — замена стандартной утилите, написанная на C++17, заточенная под хардкорную шаблонизацию в инфраструктуре. В этой статье я расскажу, как уместить мощь, близкую к Jinja2 (включая циклы, условия, макросы и вызов shell), в статический бинарник весом менее 400 КБ.

Читать далее

800 серверов за одну ночь: как Нидерланды уронили сразу несколько хостингов

Уровень сложностиСредний
Время на прочтение6 мин
Охват и читатели23K

За две недели до СВО, в Лондоне зарегистрировали хостинговую компанию под названием Stark Industries. 18 мая 2026 года нидерландская FIOD изъяла в двух дата-центрах под Амстердамом более 800 серверов и задержала двух человек.

Между этими датами — четыре названия хостинга, попадание под санкции ЕС, нидерландская фирма-прикрытие, датские выборы и одна молдавская семья. История о том, как санкции против инфраструктуры не закрывают её — а запускают гонку.

Читать далее

Ваш PostgreSQL болеет молча. Десяток запросов, чтобы это увидеть

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели13K

Пятница, вечер. Один эндпоинт начал отвечать восемь секунд вместо двухсот миллисекунд, а в Grafana всё зелёное. PostgreSQL редко падает громко — он неделями копит мёртвые строки, лишние индексы и зависшие транзакции, пока не станет совсем плохо.

В статье — пять SQL-запросов из моего queries.sql, которыми я реально пользуюсь: bloat и dead tuples, топ тяжёлых запросов по pg_stat_statements, неиспользуемые индексы, висящие транзакции и блокировки. Работают на голом PostgreSQL 13+

Читать далее

# Bare-metal Kubernetes на 5 VM: Calico IPIP + MetalLB + GitOps — честный опыт с граблями

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели11K

Поднял Kubernetes кластер на 5 VM с нуля на VMware: Calico IPIP, MetalLB, GitOps через ArgoCD, PostgreSQL HA. Три неочевидные проблемы которые съели много времени — MTU и TLS, нестабильный BGP на VMware, конфликты git push в GitOps.

Читать далее

Мы настроили динамические окружения на ArgoCD под каждую фичу

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели8K

Привет, я Даниил, DevOps-инженер в KTS.

Я работаю над инфраструктурой одной крупной сети. В ее штате несколько команд разработки, которые делят между собой больше 40 микросервисов, составляющих одну систему. Ожидаемо, со временем их dev-стенд сильно отстал от продакшена, и разные команды с трудом протаскивали новые фичи до релиза.

Мы в KTS уже давно продвигаем настройку динамических окружений для подобных систем. Пару лет назад мой коллега описывал, как они работают, и давал несколько рекомендаций по применению. Но это был, скорее, обзор.

Сегодня я расскажу, как мы внедрили динамические окружения на практике через ArgoCD и обтесали их под конкретные запросы разработчиков. Еще я попробую объяснить, почему такой подход здорово экономит время и нервы, и поделюсь соображениями о том, когда он будет только мешать.

Читать далее

Инвентаризация в 2026: чем считать железо, ПО и лицензии

Уровень сложностиПростой
Время на прочтение13 мин
Охват и читатели9.6K

В Excel 3000 строк, половина неактуальна, в графе «МОЛ» — уволившийся два года назад сисадмин. Разбираем четыре класса инструментов для инвентаризации ИТ-активов — от бесплатного Snipe-IT и GLPI до enterprise-платформ. Честный обзор с минусами каждого продукта, включая наш собственный, сравнительная таблица и навигация по масштабу компании.

Найти свои 1200 устройств

Ближайшие события

Центр сертификации в собственной автономной системе

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели9.2K

Привет!

В статье рассмотрим создание центров сертификации для автономной системы в реалиях 2026 года. Такой системой может выступать ваш дом, небольшой офис или другая локальная сеть, которая предоставляет пользователям сервисы. Простоты ради мы будем использовать пакет EasyRSA. Рассмотрим все шаги от создания корневого и промежуточного ЦС до выпуска клиентских и серверных ключей(и бонусом — пример их использования в моей домашней сети). Интересно? Тогда добро пожаловать под кат.

Читать далее

Тест современных компрессоров для HTTP

Уровень сложностиСредний
Время на прочтение12 мин
Охват и читатели9.1K

Сжатие текста уже давно стало стандартом в мире веб‑приложений. Сокращение объёма данных даёт сокращение времени передачи и снижение нагрузки на сетевой канал. Однако, часто настройка компрессии сводится к динамическому сжатию gzip и настройкам по умолчанию. В этой статье разберём вопрос сжатия более глубоко. Для начала вспомним основные технологии сжатия, доступные в вебе.

Читать далее

Как мы превращаем Cloudlink из «надстройки над виртуализацией» в платформу управления мультиоблаком

Уровень сложностиСредний
Время на прочтение8 мин
Охват и читатели6.3K

Привет, Хабр! Меня зовут Дмитрий Гоголев, я директор по развитию платформы для управления виртуальной и облачной инфраструктурой Cloudlink в Orion soft. За последний год это решение прошло довольно заметную эволюцию. Если раньше это была классическая CMP (Cloud Management Platform) для управления виртуализацией, то сейчас платформа все больше становится универсальным слоем управления инфраструктурой и сервисами — как для on-prem, так и для публичных облаков.

В этой статье я разберу, что именно изменилось в Cloudlink, и какие архитектурные и продуктовые сдвиги за этим стоят.

Читать далее

Цепи Маркова для прогнозирования производительности СУБД PostgreSQL

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели5.7K

В работе рассматривается потенциал применения цепей Маркова в качестве инструмента статистического анализа производительности СУБД PostgreSQL. Предлагаемый подход базируется на моделировании корреляционной динамики между операционной скоростью и ожиданиями (wait events), что позволяет перейти от описательной статистики к вероятностному прогнозированию аномалий. В отличие от классического порогового мониторинга, марковская модель даёт возможность оценивать среднее время до отказа (MTTF) и адаптивно реагировать на предвестники деградации системы, что обусловливает её теоретическую и практическую значимость для предиктивного управления базами данных.

Читать далее

MSDSL. Два мегабита по двум проводам

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели12K

Приветствую всех!

Не так давно я уже рассказывал про ADSL и всё, что с ним связано. Когда-то давно благодаря этой технологии многие впервые смогли выйти в интернеты на высокой скорости, а кто-то до сих пор пользуется таким подключением из-за дешевизны или за неимением альтернатив.

Но ADSL — технология асимметричная: скорости приёма и отдачи отличаются, а модем подключается только к провайдерскому оборудованию (DSLAM). Сегодня же мы поговорим кое о чём куда менее известном среди простых пользователей: о симметричных системах. Узнаем, как выглядит их оборудование, где оно применялось и как заставить его работать. Как водится, будет много интересного.

Press F1 to continue

Nexspence — бесплатная альтернатива Nexus Repository, которую помогал мне писать Claude Code

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели5.2K

Привет, Хабр! Примерно полтора года назад я решил обновить наш рабочий Nexus Repository OSS — и был «приятно» удивлён: Sonatype отказались от OSS-версии и перешли на Community Edition с лимитами на количество репозиториев и компонентов. Платить за Pro я не хотел, переходить на Artifactory тоже — JFrog ушёл из России ещё в 2022-м. Так что пообещал себе разобраться с этим «на следующих выходных» и написать что-то своё. Выходные закончились, а я всё ещё пишу код 🙂 Но зато получился нормальный инструмент, которым пользуемся сами — и теперь хочу рассказать про него.

Это статья про Nexspence — open-source менеджер артефактов на Go, который поддерживает 14 форматов пакетов и совместим с Nexus REST API.

Читать далее

Мониторинг с RRD

Время на прочтение5 мин
Охват и читатели11K

Если у вас есть какая-то система мониторинга чего-то - наверняка там есть какие-то показатели, которые актуальны здесь и сейчас: для метеостанции - температура, для роутера - трафик, для сервера - нагрузка, и т.д. - в общем, какая-то актуальная величина. Но кроме онлайн-значений - может быть полезен график, например за ближайшие сутки, или за месяц, или за год - чтобы можно было оценивать тренды.

Или наоборот: иногда происходит какое-то событие, достаточно редкое (сбой, или наоборот срабатывание), но хотелось бы понимать, насколько часто, и не меняется ли его частота в разные периоды - ведь это может быть признаком более серьезной проблемы.

Самое очевидное решение - писать данные в базу. Но такая таблица будет постоянно расти, занимать всё больше места, а выборка за прошлый период может отрабатывать довольно долго, особенно если требуется уместить целый год в 900 пикселей графика.

Когда-то и я наступил на эти грабли - когда база на MongoDB распухла так, что не влезла в 32-битный компьютер. Но это другая история.

При этом мало кому нужно точно знать, какая температура была на датчике 26 июля 2016 года в 14:33:15 - чаще достаточно просто усредненных значений. Вот как раз для подобного давным-давно люди придумали RRD - Round-robin database

Читать далее