13139
Присоединяйтесь к нашему каналу и погрузитесь в мир DevOps Сотрудничество, реклама: @devmangx Менеджер: @Spiral_Yuri РКН: https://clck.ru/3P8kFH
Строю свой домашний лаб. KVM на всех машинах.
Пока развернул DNS-сервер и NTP-сервер. Основной и вторичный DNS с включённым zone transfer. NTP-сервер только внутренний, все остальные сервера берут с него время и дату.
На этой неделе собираюсь поднять Zabbix и AWX. Zabbix - для мониторинга инфраструктуры, AWX - для запуска Ansible.
Nessus для сканирования, load balancer для проброса трафика, registry для хостинга контейнеров
Кластер из 3 нод: 1 master, 2 worker'а.
GitLab помещу внутрь кластера.
Для LDAP-аутентификации буду использовать FreeIPA.
Цель: симулировать air-gapped окружение
👉 DevOps Portal
Почему вам нужно облачное объектное хранилище?
Узнайте про кейсы и выгоды на вебинаре Selectel
🗓26 ноября, 12:00
📍Онлайн
👨💻Для системных администраторов, DevOps-инженеров, руководителей направлений по информационной безопасности и ML/AI.
Смотрите программу и регистрируйтесь: https://slc.tl/f7jiy
Чтобы не пропустить вебинар и узнавать о митапах, воркшопах и бесплатных курсах Selectel, подписывайтесь на @selectel_events
Реклама. АО "Селектел". erid:2W5zFJfhqqa
Интересный симулятор DDoS-атак, чтобы понять, как работают такие атаки и почему защита критически важна.
http://devops-daily.com/games/ddos-simulator
👉 DevOps Portal
Proxmox 9.1 теперь нативно поддерживает OCI-образы (Docker). Это всё меняет
@IT_Portal
K2 Cloud собирает сетевых инженеров на митап 🌐
28 ноября эксперты из K2 Cloud, Positive Technologies, Avitotech, Wildberries & Russ и Точка Банка встретятся на митапе «Поговорим про сети»
Что будем делать:
— разберем метрики, которые спасают продукт;
— научимся «гадать» по сетевым пакетам;
— сыграем в сетевую версию игры «100 к 1».
Опыт из очень разных инфраструктур и LinkMeUp в роли ведущего — регистрация по ссылке
Ассистент для триажа: ИИ теперь не просто вываливает список проблем
Теперь плагины PT AI для IDE предлагают, с чего начать, какие уязвимости подтвердить или отклонить в первую очередь. Похожие — группируются для пакетной обработки.
Ключевые новые функции:
● Массовое управление уязвимостями: Выделите несколько уязвимостей и разом поменяйте им статус.
● Copilot на основе LLM (большая языковая модель): Экспериментальная фича (YandexGPT) для автоматического исправления кода с предпросмотром, пояснением логики и историей рекомендаций.
Большинство обсуждений Docker в итоге приходят к одному вопросу: использовать slim или alpine, какой базовый образ выбрать?
Alpine очень маленький и выглядит привлекательно, если нужно максимально ужать размер образа.
Но он использует musl вместо glibc, поэтому некоторые приложения ведут себя иначе, некоторые библиотеки работают не так, как ожидается, и отладка может быть болезненной.
Отлично подходит для простых статических бинарников, которые почти не завязаны на зависимости уровня ОС.
Slim-образы (например, debian:slim или node:22-slim) больше, чем Alpine, но всё ещё значительно меньше полноразмерных дистрибутивов. Они используют glibc, поэтому большинство инструментов и библиотек просто работают.
Это обычно означает меньше сюрпризов в проде, проще отладку и лучшую совместимость с существующей документацией и примерами.
Для большинства веб-приложений, API и инструментов slim — более безопасный выбор по умолчанию. Вы всё равно получаете меньшие образы, быстрые pull’ы и нормальную безопасность, но без борьбы с странными edge-кейсами musl.
Alpine имеет смысл, когда вы:
- доставляете один статический бинарник,
- полностью понимаете свои зависимости,
- готовы разруливать возможные проблемы совместимости, если они появятся.
👉 DevOps Portal
Kubeshark обеспечивает глубокую видимость и мониторинг всего API-трафика и payload'ов, проходящих внутрь, наружу и между контейнерами и подами внутри кластера Kubernetes
Забираем здесь
👉 DevOps Portal
Kafka-движок: книги для тех, кто не просто слушает, а потребляет топики
⚡️Обнаружили в продакшене LAG=100500 и осознали, что ваш потребитель — это не потребитель, а так, просто подписался на топик? Пора прокачать скилы и перестать бояться слов вроде «стремительный лидер» и «репликация».
➡️Собрали для вас пару проверенных мануалов, которые помогут не просто запустить Kafka, а понять, как она работает изнутри.
👉🏻 Забрать мануалы и ссылки на тему Kafka
⏩ Для углубленного изучения Kafka и прокачки практических навыков:
⚫️Скидка 20% на Курс «Apache Kafka для разработчиков и аналитиков».
Углублённый курс на платформе Docker+Postgres с примерами на Java (но основные принципы и best-practice применимы и к другим языкам).
- 70% практики, усложненные задания со звездочкой
- возможность выбрать тариф с проверкой и обратной связью от экспертов
- старт в любой момент!
🎁Промокод на скидку 👉🏻VIDEO20👈🏻
*ввести его можно в окне оплаты, оно откроется после заполнения формы контактов
➡️Смотреть программу или занять место на курсе
💡 Быстрый совет по Linux
Проверить bash-скрипт на синтаксические ошибки можно командой:
bash -n scriptname
Интерактивные лабораторные по Kubernetes
Проект Kubelab предлагает готовую инфраструктуру для обучения и экспериментов с Kubernetes. Он позволяет реализовать «интерактивный Kubernetes-тренажер» локально и проходить различные задания.
Для лабораторных есть подсказки или готовые решения, если не получилось сделать самостоятельно. Кроме этого, Kubelab обладает Web UI и редактором кода, чтобы упростить обучение
Забираем с GitHub
👉 DevOps Portal
Когда на одной машине крутится несколько контейнеров, один из них легко может начать потреблять больше CPU, чем ожидается.
Docker не балансирует CPU между контейнерами автоматически: если одному контейнеру нужно больше циклов, он их заберёт, пока не заданы ограничения. Это может замедлить другие контейнеры или сделать работу системы нестабильной по ощущениям
Docker предоставляет два основных механизма для контроля CPU:--cpus – задаёт жёсткий лимит CPU (например, --cpus="0.5" позволяет контейнеру использовать не более 50% одного ядра).--cpu-shares – задаёт относительный вес, а не жёсткий лимит. Контейнеры с более высоким значением получают больше CPU только когда несколько контейнеров конкурируют за ресурсы.
Это соответствует модели планировщика Docker: cpu_shares влияет на приоритет, а cpus задаёт фактический потолок.
Без этих параметров один загруженный контейнер может занять столько CPU, сколько ему позволит хост.
В реальных нагрузках такие ограничения делают работу контейнеров более предсказуемой и защищают критичные сервисы, работающие на той же машине.
👉 DevOps Portal
Как повысить защиту приложений с помощью новых функций PT Application Inspector
Регистрируйтесь и присоединяйтесь к вебинару 20 ноября в 14:00 (мск).
PT Application Inspector — инструмент для анализа исходного кода и раннего обнаружения уязвимостей. Теперь он стал еще мощнее:
• JSA DSL* — пишите свои правила анализа прямо из IDE*;
• контроль стабильности кода — отлавливает переполнения, деление на ноль и другие ошибки;
поддержка Scala и .NET 9;
• гибкая группировка правил для разных стримов и проектов;
• работа с Git*-ветками — масштабирование анализа в команде.
Кому будет полезен вебинар: DevSecOps, AppSec, R&D и всем специалистам, кто строит безопасный SDLC*.
* JSA DSL — языки, специфичные для решения задач какой-либо предметной области
* IDE — надстройка или расширение для интегрированной среды разработки
* Git-ветка — независимая линия разработки, представляющая собой указатель на определенный коммит (снимок изменений) в истории проекта
* SDLC — жизненный цикл разработки программного обеспечения
Структура файла pod.yaml в Kubernetes
👉 DevOps Portal
Сообщество Kubernetes официально объявило о выводе ingress-nginx из эксплуатации
Много лет этот контроллер был выбором по умолчанию для маршрутизации HTTP/HTTPS-трафика в бесчисленных кластерах, но в марте 2026 года он перейдёт в архивный режим.
Основная причина этого решения в том, что Kubernetes Ingress API уже давно заморожен. В сам API больше не добавляются новые фичи, что ограничивает дальнейшее развитие ingress-nginx.
Параллельно экосистема смещается в сторону Gateway API, который обеспечивает больше гибкости, лучшую расширяемость и более чёткий дизайн для современных сценариев управления трафиком.
До марта 2026 года ingress-nginx будет получать только best-effort поддержку - без гарантированных релизов, исправлений багов или обновлений безопасности. После этого он больше не будет получать активную поддержку.
Командам, зависящим от ingress-nginx, стоит начать подготовку уже сейчас: определить кластеры, где он используется, оценить альтернативы, протестировать план миграции и рассмотреть контроллеры, поддерживающие Gateway API, чтобы дальнейшие апгрейды проходили безболезненно
@linuxos_tg
💡 Совет дня по Linux
Не нравится бесконечно длинный вывод в команде top?
Используйте опцию -i, чтобы скрыть неактивные процессы и видеть только активные:
$ top -i
OpenTelemetry — это опенсорс стандарт для сбора трассировок, метрик и логов в современных приложениях
Вместо того чтобы каждый язык, фреймворк или библиотека предоставляли собственный способ генерации телеметрии, OpenTelemetry предлагает единый и консистентный подход.
С его API и SDK вы один раз инструментируете свой код и отправляете данные в любой backend по вашему выбору — Grafana, Datadog, New Relic, Prometheus или любой другой. Это означает, что вы не привязаны к какому-то одному вендору и не зависите от конкретного агента.
Он также унифицирует телеметрию между сервисами. Если у вас распределённая система с несколькими микросервисами на разных языках, OpenTelemetry помогает связать их поведение в единый trace, чтобы вы могли понять, откуда берутся задержки или сбои.
Цель проста: сделать наблюдаемость проще, переносимой и последовательной, чтобы командытратили меньше времени на «склейку» инфраструктуры и больше - на понимание своих систем.
👉 DevOps Portal
Разворачиваем кластер Managed Kubernetes бесплатно
Kubernetes упрощает работу с приложениями на базе микросервисов за счет автоматизации развертывания и масштабирования. А Selectel упрощает работу с Kubernetes.
Новые клиенты сейчас могут получить до 30 000 бонусов на использование Managed Kubernetes от Selectel.
Для каких задач он подойдет?
🔹Запустить высоконагруженные сервисы и ML-проекты. В Selectel можно развернуть кластеры на производительном железе и добавить ноды с GPU.
🔹Повысить производительность и изолировать ресурсы. Managed Kubernetes от Selectel позволяет создать кластеры с воркер-нодами на выделенных серверах, а не в облаке. Все ресурсы сервера — ваши.
🔹Сократить затраты на инфраструктуру. Кластеры на базе прерываемых ВМ позволят сэкономить до 70% расходов и подойдут для CI/CD, пакетной обработки данных, дата-аналитики и других задач.
Успейте зарегистрироваться и оставить заявку на участие в акции, чтобы протестировать сервис бесплатно: https://slc.tl/eawuq
Реклама. АО "Селектел". erid:2W5zFGVxLxg
NGINX Gateway Fabric - это опенсорс проект, который реализует Gateway API, используя NGINX в качестве data plane.
Цель проекта: реализовать базовые возможности Gateway API.
GitHub: nginx-gateway-fabric
👉 DevOps Portal
Одна простая привычка, которая делает Dockerfile гораздо проще в поддержке: это алфавитная сортировка многострочных списков пакетов.
Звучит мелочью, но это сильно влияет на читаемость и долгосрочную поддержку
Когда вы ставите пакеты внутри многострочного блока apt-get install или apk add, легко случайно добавить дубликаты или пропустить что-то, затерявшееся в середине списка.
Алфавитный порядок полностью убирает эту проблему: список можно быстро просканировать, моментально найти дубликаты и держать всё единообразным в разных окружениях.
Это также уменьшает «шумные» диффы в код-ревью
Когда пакеты отсортированы, добавление или удаление одного пункта даёт чистое и предсказуемое изменение.
Без сортировки маленькое обновление часто превращается в большой дифф, усложняя ревью больше, чем нужно.
Этот приём помогает и при росте команды.
Когда Dockerfile трогают несколько человек, никто не будет по-разному переставлять пакеты или использовать несогласованное форматирование.
Структура остаётся стабильной, и поддержка со временем становится проще.
Мелкое улучшение, но на сотнях билдов оно экономит массу нервов
👉 DevOps Portal
Быстрый совет по командам Linux
Скорее всего, вы не знали, но команда find позволяет быстро найти все исполняемые файлы в каталоге:
find . -type f -executable
🗓 Как быстро сохранить и восстановить ресурсы в Kubernetes
Иногда нужно забэкапить пачку однотипных ресурсов и потом без боли восстановить.
Делимся двумя проверенными способами.
1️⃣ kubectl-neat + yq
Очищаем YAML от лишних метаданных и превращаем массив в отдельные документы:
kubectl get <resource> -n <namespace> -o yaml \
| kubectl-neat \
| yq eval '.items[] | split_doc' - > resources.yaml
kubectl apply -f resources.yaml
kubedump dump <namespace> --resources <resource> --project <project-name>
kubedump restore --project <project-name>
Многим организациям сложно управлять несколькими Kubernetes-кластерами
Например,
У вас могут быть отдельные кластеры для dev, stage и prod.
Если вы хотите задеплоить что-то вроде стека Prometheus в каждый кластер, вам обычно приходится переключать контексты kubeconfig и накатывать всё по одному.
Вместо этого вы можете использовать Clusternet (открытый проект CNCF) чтобы управлять всеми Kubernetes-кластерами из одного хост-кластера.
Clusternet умеет работать с:
- обычными Kubernetes-кластерами
- managed-кластерами
- on-prem кластерами
- edge-кластерами
В хост-кластере вы поднимаете hub и регистрируете кластеры, которыми хотите управлять, как дочерние.
После регистрации вы можете использовать API-сервер хост-кластера, чтобы деплоить приложения и выполнять операции во всех этих кластерах.
GitHub: clusternet
👉 DevOps Portal
Когда вы собираете контейнерные образы, которые должны запускаться на разном железе, одного тега недостаточно.
Нужно понимать, действительно ли образ поддерживает несколько архитектур, и здесь помогает docker manifest. Команда docker manifest позволяет инспектировать и управлять мультиархитектурными образами.
С её помощью можно точно увидеть, под какие платформы собран образ, например, AMD64 для облачных серверов и ARM64 для edge-устройств, всё это под одним тегом. Это простой способ убедиться, что образ, который вы тянете, будет стабильно работать в разных окружениях.
Это особенно важно для гибридных деплоев. Например, ваш бэкенд крутится в облаке на AMD64, а edge-шлюзы или IoT-устройства работают на ARM.
Проверяя манифест, вы гарантируете, что одна и та же версия контейнера будет корректно работать везде, без необходимости вручную собирать и тегировать отдельные образы.
Для команд, которые доставляют приложения на разнородное железо, использование docker manifest – простой способ избежать ситуации, когда работает на одной машине, но не работает на другой.
👉 DevOps Portal
Зарплата 207.000р у Middle-разработчика в Яндекс
«В день уходит несколько часов на созвоны, в остальное время закрываю задачки из спринта, редко перерабатываю. У компании топовый офис, но с коллективом как-то не заладилось. Радуюсь классному ДМС и стабильной зарплате» - middle разработчик из Яндекса.
Бигтех по-русски - канал с реальными зарплатами и историями IT-специалистов российского БигТеха. Там уже опубликованы рассказы программистов Альфа-банка, Сбера и Тинькофф 🤯
Читайте: @bigtech_russia
⚡️ На Stepik вышел курс по Linux
Ребята сделали крутейший курс по Linux, где понятным языком, шаг за шагом, на реальных примерах и с наглядными схемами обучают работе с этой ОС
Внутри 20+ модулей: от установки Linux и работы с файлами до сетей, прав, дисков, процессов, автоматизации на Bash и многого другого. Всё сразу закрепляется на практике (200+ заданий с автопроверкой).
После прохождения вы получите сертификат, который можно добавить в резюме.
Есть бесплатные демо-уроки для ознакомления. В ближайшие 48ч курс доступен со скидкой 25% по промокоду «DEVOPS25»: открыть курс на Stepik
DevOps vs SRE vs Platform Engineering
DevOps Engineers обеспечивают эффективную и надёжную доставку ПО, сокращая разрыв между командами разработки и операций.
Site Reliability Engineers (SRE) концентрируются на оптимизации надёжности, производительности и эффективности программных систем.
Platform Engineers проектируют, создают и поддерживают инфраструктуру и инструменты для поддержки разработки, деплоя и эксплуатации ПО.
Вот простенькая картинка, чтобы тебе было легче понять.
👉 DevOps Portal
Замечательный туториал: How to Build Smaller Container Images: Docker Multi-Stage Builds.
Основная задача материала научить делать маленькие/тонкие и более безопасные образы для приложений. Одним из основных посылов является: "build and runtime images should also be completely separate!".
В статье:
- Как делать не надо.
- Что такое Multi-Stage сборки
- Примеры Multi-Stage сборки для Node.js, Go, Rust, Java, PHP
👉 DevOps Portal
👩💻 Ищем DevOps. Релокейт, удалёнка, платим много!
Специально для Вас, собираем лучшие вакансии по DevOps с прямыми контактами в Telegram на канале @it_match_devops.
Подпишись чтобы не упустить свой шанс получить лучший оффер!
🔗 Посмотреть вакансии
Как собрать продакшн-готовый образ контейнера для Go-приложения
Достаточно ли тебе FROM scratch? Посмотри эти практические задания, чтобы разобраться с типичными проблемами контейнеризации Go:
- Cтатическая линковка: https://labs.iximiuz.com/challenges/dockerize-golang-application-static-linking
- Динамическая линковка https://labs.iximiuz.com/challenges/dockerize-golang-application-dynamic-linking