Обновить

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

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

Простая декларативная установка NixOs, часть 1 — Настройка конфигурации

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

Эта статья является прямым продолжением этой статьи, посвящённой декларативной разметке диска через disko.

Что мы будем делать сегодня?

Мы с вами составим минимально-рабочий конфиг для нашей системы. Под "минимально-рабочим" я имею в виду: без графического окружения(XFCE, GNOME и прочее), углублённых настроек(установка zsh, например). Мы настроим: загрузчик, сеть, пользователя, звук, локализацию, подключим наш файл disko-config.nix.

Читать далее

Новости

VPN'ы в упряжке: собираем VPN box с несколькими VPN‑провайдерами на Mikrotik

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

Как повысить надежность VPN доступа для домашней сети, если в случае блокировки VPN нет возможности в разумный срок обновить конфиг и восстановить доступ?

Решение ― multi‑VPN резервированием VPN‑провайдеров, использующих разные VPN‑протоколы. Собственный опыт, собранный в виде гайда.

В этом гайде мы настроим сразу два клиента VPN, AmneziaWG и VLESS+Reality, работающих одновременно как основной и резерв на одном Mikrotik роутере с общим раздельным туннелированием (split‑routing). Хотя таких каналов может быть столько, сколько позволят ресурсы роутера. Этакий VPN‑box, но с резервированием.

Читать далее

Когда конфигов стало слишком много. Как я впервые в жизни собрал панель для Xray и AmneziaWG

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

Мне никогда не нравились тарифы и массовые VPN‑сервисы. Они периодически отваливаются, известные IP быстро получают плохую репутацию, а нормальный VPS на год можно найти немногим дороже тысячи рублей.

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

Я впервые в жизни полез делать панель и собрал SBP: self-hosted-панель для свежей Ubuntu, которая устанавливает компоненты, выдаёт профили, считает трафик и обновляется с проверкой и откатом. Simple здесь только для пользователя. Разработка простой не была.

В статье покажу архитектуру, интерфейс, собранные грабли и замеры, где XHTTP выплёвывает почти 200 Мбит/с.

Что получилось

Выбор Kafka UI: сравнение популярных инструментов для Apache Kafka от VK Data Platform

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

Apache Kafka — популярная система потоковой обработки событий, предназначенная для сбора, хранения и передачи больших объемов данных в режиме реального времени. Она используется тысячами компаний и разработчиков для построения высокопроизводительных, отказоустойчивых и масштабируемых решений в области аналитики данных, IoT, микросервисов и многих других сфер.

Однако у Kafka есть один важный нюанс: «из коробки» у нее нет графического интерфейса (GUI), что затрудняет понимание текущего состояния кластера, диагностику неполадок и эффективное управление инфраструктурой и самим сервисом, особенно для начинающих пользователей или тех, кому сложно взаимодействовать с консольными инструментами.

Поэтому для комфортной работы с Apache Kafka активно используются специализированные UI-инструменты. Например, ранее для облачного сервиса Managed Kafka от VK Cloud мы использовали Provectus Kafka UI, но в рамках развития сервиса решили заменить UI на более современный и функциональный.

Меня зовут Никита Суровегин. Я продукт-менеджер в команде VK Data Platform, VK Tech. В этой статье я расскажу, с чего мы стартовали, какие инструменты проанализировали и что выбрали в итоге.

Читать далее

Что происходит, когда вы открываете сайт в браузере: путь одного запроса

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

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

А происходит немало. Браузер превращает имя сайта в IP-адрес и договаривается с сервером о шифровании. Затем он отправляет запрос, дожидается ответа, разбирает полученный код и превращает его в картинку на экране. Все это укладывается в миллисекунды.

Разбираться в этом пути полезно не только из любопытства. Когда сайт долго грузится, это понимание сразу подсказывает, где искать причину: в DNS, в медленном ответе сервера или в тяжелом JavaScript, который блокирует отрисовку. То же понимание помогает осознанно выбирать хостинг и настройки сервера.

Дальше — весь путь по шагам: от разбора адреса до отрисованной страницы.

Читать далее

А кто-нибудь знает как и почему это работает?

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

Инфраструктура может работать годами, хотя никто уже толком не понимает, как именно она устроена и от чего зависит. Разбираемся, что такое «топологический долг» и можно ли вообще измерить, насколько хорошо мы понимаем собственную инфраструктуру.

Ну давай попробуем...

Wake‑on‑LAN наоборот: как я сделал Windows‑службу для удалённого выключения ПК

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

Я искал простое решение, которое позволяло бы одной кнопкой удалённо включать и выключать компьютер. С включением всё давно решено: отправляешь Wake‑on‑LAN magic packet — и компьютер запускается. Но удобного способа выключать его тем же пакетом я не нашёл.

В итоге я решил по‑быстрому накидать решение с помощью нейросети. Получилась Windows‑служба, которая работает в фоне, принимает стандартный WoL‑пакет и, если компьютер уже включён, запускает его штатное выключение. Проект проверен в работе, поэтому решил привести его в порядок и поделиться со всеми.

Читать далее

Сторож бюджета сработал ровно так, как я его написал. Поэтому за сутки ушло 225 евро при жёстком пороге 150

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

Я сам написал скрипт, который следит за расходом Telegram Ads и глушит кампании при превышении дневного лимита. Двадцать пятого июня он отработал ровно так, как был написан, — и именно поэтому за сутки открутилось 224,98 € при пороге 150. Разбираю по шагам, где именно я ошибся: почему проверка «раз в час» на самом деле проверяла не то, почему остановка кампании не остановила расход, и как алерт о проблеме ушёл туда, где его никто не читал. С кодом до и после.

Читать далее

Omarchy — Arch Linux с красивыми обоями привлёк 10 миллионов долларов и вызвал споры в сообществе

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

В твиттере уже несколько дней не утихают споры по поводу Omarchy — Linux дистрибутива от создателя фреймворка Ruby on Rails. Дистрибутив недавно получил крупное обновление 4.0 Quattro, но не оно стало причиной дискуссий. Создатель основал некоммерческую организацию Omacom Foundation и привлёк 8 миллионов долларов (уже 10) на развитие и поддержку дистрибутива. Проект уже объявил[1][2], что будет спонсировать разработку двух проектов, на которых основан — Hyprland и quickshell чтобы их создатели могли свободно продолжать работу над своими проектами, не думая об источнике финансирования.

Это вызвало споры в сообществе о полезности дистрибутива:

Энтузиасты считают, что дистрибутив создаёт импульс, который приведёт в Linux новых пользователей

Скептики указывают на отсутствие фундаментальной ценности в дистрибутиве (Arch Linux с предустановленными настройками и приложениями) и наличие уязвимостей.

Так кто же из них прав? Сначала приведу короткую информацию о дистрибутиве, аргументы обеих сторон, которые видел, и в конце приведу своё мнение по поводу полезности дистрибутива для сообщества. Сразу скажу - я не пробовал Omarchy, но настольным Linux пользуюсь больше 10 лет и вопросы, поднимаемые в этой дискуссии, не специфичны для дистрибутива, просто он спровоцировал новый виток их обсуждения.

Читать далее

NORA: лёгкий artifact registry для Kubernetes с карантином свежих пакетов и блокировкой CVE

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

Каждый разработчик сталкивался с проблемой хранения артефактов: Docker-образы, npm-пакеты, Maven-артефакты, Python wheels. Вариантов обычно два — использовать публичные реестры (Docker Hub, npmjs.org, PyPI) или поднимать Nexus / Artifactory / Harbor. Публичные реестры ненадёжны из-за rate limit и блокировок. А Nexus и Artifactory — это тяжёлая Java-платформа: JVM, отдельная СУБД (OrientDB/PostgreSQL), 2–4 ГБ RAM уже в простое и десятки минут на старт.

NORA — open-source реестр артефактов на Rust, созданный как прямая альтернатива этим гигантам. Вместо Java-стека — один бинарник < 27 МБ. Вместо 2–4 ГБ RAM — < 50 МБ в простое, т.е. на порядок меньше. Вместо десятков минут на старт — 3 секунды. Внешних зависимостей нет вообще: ни Java 11+, ни отдельной СУБД — метаданные хранятся на файловой системе, а артефакты сразу можно отправлять в S3, чего бесплатные версии Nexus и Artifactory не умеют. При этом поддерживается 15 форматов: Docker, Maven, npm, PyPI, Cargo, Go, Raw, RubyGems, Terraform, Ansible Galaxy, NuGet, Pub (Dart/Flutter), Conan (C/C++), RPM (yum/dnf), Debian/APT. Плюс Helm-чарты через OCI, карантин свежих пакетов (Min Release Age), блокировка уязвимых версий (CVE Blocking) и лицензия MIT.

В этой статье мы развернём NORA в Kubernetes на Yandex Managed Kubernetes, а затем попробуем все основные сценарии использования.

Читать далее

Когда «Просто добавь сайт в прокси» недостаточно или «В поисках внешних зависимостей»

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

Когда используешь корпоративный VPN для рабочих сервисов и локальный прокси для “внешних” сайтов, то иногда просто добавить основной домен в прокси оказывается недостаточно:

YouTube может остаться без превью, Letterboxd — без постеров, а ChatGPT — без загрузки файлов.

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

Читать далее

Декларативная разметка дисков в NixOS с помощью Disko: от конфига до готовой ФС

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

Каждый, кто хоть раз устанавливал Linux вручную, знает этот ритуал: загрузиться с Live‑образа, запустить fdisk или parted, создать таблицу разделов, отформатировать их в btrfs/ext4, создать субтома, а затем вручную примонтировать всё это в /mnt.

Конечно, такой подход можно использовать и при установке NixOs. Но вопрос — зачем?

Это не только полностью противоречит самой сути NixOS — системы, где всё должно быть описано декларативно в коде, но и существенно влияет вообще на удобство использования этой системы в будущем. Стоит вам захотеть развернуть точно такую же конфигурацию на другом сервере или ноутбуке, и весь ручной процесс разметки приходится повторять заново, вспоминая точные флаги монтирования вместо того, чтобы написать всего лишь одну команду.

В этой статье мы этим вопросом и займёмся, а поможет нам в этом известная утилита disko. Мы напишем чистый декларативный конфигурационный файл в ДВУХ вариантах:

Читать далее

OpenTelemetry Filelog Receiver: руководство по приему лог‑файлов

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

OpenTelemetry постепенно становится универсальным пылесосом для телеметрии. Осталось только научить его аккуратно засасывать всё то наследие, которое приложения десятилетиями складывали в файлы. В этом переводе статьи разбирается как использовать filelog receiver на практике — от простого чтения JSON‑логов до продакшен‑сценариев с настройкой производительности. Ещё больше полезных материалов я публикую у себя в авторском телеграм‑канале Мониторим ИТ. Всегда рад новым подписчикам.

Даже в эпоху облачных приложений и распределенного трейсинга обычные файлы логов остаются одним из самых ценных источников достоверной информации в любой системе. От корпоративных приложений и пакетных заданий до NGINX, баз данных и локальной инфраструктуры — критически важная диагностическая информация по‑прежнему записывается на диск.

Получатель filelog в OpenTelemetry Collector позволяет интегрировать эти логи в современный конвейер наблюдаемости. Он непрерывно отслеживает файлы, анализирует их содержимое и преобразует необработанный текст в структурированные записи логов OpenTelemetry.

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

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

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

Начнём!

Читать далее

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

Вечная загрузка: как я запретил Яндекс Браузеру закрываться молча

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

Рука промахивается на Ctrl+Shift+W — и окно с полусотней вкладок закрывается без вопросов. Единственное, что заставляет Яндекс Браузер переспросить, — активная загрузка. Так что теперь systemd кормит мой браузер загрузкой, которая не кончается никогда: 0,4 МБ памяти, 64 КБ на диске, один байт по loopback раз в пять минут. Как я до этого дошёл, почему не спасают настройки и расширения и как тесты чуть не убили то, что защищали, — под катом.

Читать далее

Docker Fundamentals: полный гайд по сетям и драйверам

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

Разбираем сетевые драйверы Docker — bridge, host, overlay, macvlan, ipvlan — DNS, порты и плагины: от основ до продвинутых сценариев.

Читать

Radar: Kubernetes UI, которого не хватало

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

У каждого, кто работает с Kubernetes, рано или поздно возникает потребность «посмотреть на кластер глазами»: кто с кем связан, почему под в CrashLoopBackOff, что изменилось за ночь, какие сертификаты истекают. Вариантов обычно два — Kubernetes Dashboard (слишком бедный) или Lens / Headlamp (десктопное приложение или тяжёлый стек с зависимостями). А kubectl-специалисты откапывают причины инцидентов в простынях YAML, где сигнал тонет в managedFields и status.conditions.

Radar — open-source UI для Kubernetes от Skyhook (YC W23). Один бинарник на Go, без регистрации и аккаунта, бесплатный навсегда. Топология кластера, браузер ресурсов, timeline событий, менеджер Helm-релизов, GitOps для FluxCD, карта трафика, аудит безопасности, анализ impact'а перед апгрейдом K8s и даже встроенный MCP-сервер, чтобы ИИ-агенты могли смотреть кластер глазами Radar вместо сырого kubectl.

В этой статье мы развернём Radar в Yandex Managed Kubernetes через Helm — с ingress-nginx и доменом из публичного IP — и разберём все основные экраны. Разворачиваемый инстанс — общий для команды разработчиков, поэтому конфигурация строго read-only: все write-права выключены, ИИ-агенты подключаются к read-only MCP.

Читать далее

С нуля до Junior DevOps в 2026 году. 8.1. Prometheus. Мониторинг

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

Разбираемся с мониторингом и observability, metrics, logs и traces, time series, labels, scrape, TSDB, PromQL и alerting rules.

Разберём, как Prometheus получает метрики через /metrics, чем target отличается от endpoint и job, зачем нужны exporters, а также почему запуск Node Exporter в Docker требует доступа к ресурсам Linux-хоста.

Читать далее

Файрвол закрыт, порт открыт: как Docker обходит UFW и почему популярный фикс не работает

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

UFW показывает DENY, а контейнер отвечает снаружи за 130 миллисекунд. Разбираю на стенде, почему файрвол тут ни при чём, почему популярный совет с правилом в DOCKER-USER не работает, и что об этом написано в документации Docker.

Читать далее

WinStoreRegion: утилита для установки недоступных в регионе приложений Microsoft Store

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

Началось всё с довольно простой задачи. Мне понадобилось установить приложение из Microsoft Store, но для моего региона оно оказалось недоступно.

Гуглить способы обхода мне было лень, поэтому я отдал задачу ChatGPT вместе с установщиком. В результате регион Windows был временно изменён, приложение установилось.

Сам способ, конечно, не новый. Регион Windows можно поменять вручную в настройках, поставить приложение и вернуть обратно. Но после этого я подумал: если метод давно известный и с такой проблемой явно сталкиваюсь не только я, почему бы это не автоматизировать?

Так появился WinStoreRegion — небольшая утилита для Windows. На момент публикации актуальная версия — 0.1.0.

Читать далее

Сеть kubernetes без магии: трассировка пакета на kind + Cilium

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

Все, кто работал с k8s, знают: что такое CNI, разбираются как его подключить и даже поверхностно могут понимать какой из предлагаемых на «рынке» интерфейсов лучше подходит под определенный кейс. Но между поверхностными абстракциями и пониманием того, что фактически происходит с пакетом пропасть. Пока кластер функционирует стабильно эта пропасть не мешает. Она стреляет, когда начинается полтергейст: пакеты теряются между нодами, latency скачет через раз, NetworkPolicy «отказывается работать», но по всем кажущимся метрикам все зеленое.

Читать далее
1
23 ...