13139
Присоединяйтесь к нашему каналу и погрузитесь в мир DevOps Сотрудничество, реклама: @devmangx Менеджер: @Spiral_Yuri РКН: https://clck.ru/3P8kFH
С Kubernetes-сетями довольно быстро становится сложно, как только выходишь за рамки базовых Service.
В этом туториале Ayobami разбирает, как работают сеть между Pod’ами, ClusterIP, Ingress-контроллеры, NetworkPolicy и CNI-плагины.
Также сравниваются разные CNI и показывается, как Cilium использует eBPF для сетевого взаимодействия, observability и возможностей service mesh.
https://freecodecamp.org/news/kubernetes-networking-explained-from-clusterip-to-cilium-service-mesh/
👉 DevOps Portal
Паттерн проектирования sidecar – удобный способ вынести прокси, агенты доставки логов, агенты для provisioning секретов и другие вспомогательные процессы за пределы основного контейнера приложения.
Начиная с Kubernetes 1.28, поддержка sidecar-контейнеров стала нативной – и реализована довольно элегантно: никакого нового типа контейнеров, просто initContainer с restartPolicy: Always.
Попрактиковаться в работе с нативными sidecar-контейнерами Kubernetes можно здесь:
https://labs.iximiuz.com/tutorials/kubernetes-native-sidecars
👉 DevOps Portal
Многие ли знают, что Helm хранит информацию о релизах в Kubernetes Secrets?
Когда вы запускаете helm install или helm upgrade, Helm сохраняет данные о релизе в K8s Secrets в том же namespace.
В Secret хранится, например:
- имя релиза;
- статус деплоя;
- применённые манифесты;
- использованные values;
- информация о chart и другие данные.
Данные в Secret сжимаются с помощью gzip, а затем кодируются в base64.
Имя Secret создаётся по следующему шаблону:sh.helm.release.v1.[release-name].v[revision]
Когда вы запускаете helm rollback, Helm читает эти Secrets, чтобы восстановить приложение до предыдущей версии.
Helm не нужна внешняя база данных.
Вся информация хранится прямо в вашем кластере в виде нативных Kubernetes Secrets.
Примечание: также можно настроить внешнюю SQL-базу данных для хранения релизов, но эта возможность пока находится в beta
👉 DevOps Portal
Как работают мультиплатформенные container images
Когда вы делаете docker pull nginx:1.29 на AMD64-сервере и на ARM64-ноутбуке, Docker подтягивает совершенно разные сборки образа. Но как это возможно, если в обоих случаях используется одно и то же имя образа?
Чтобы представить несколько сборок через одну ссылку на образ (например, nginx:1.29), container registry использует специальный файл — Image Index, в котором перечислены манифесты для отдельных платформенных сборок. Поэтому при pull появляется дополнительный шаг:
- Сначала запрашивается index по адресу https://registry.example[.]com/v2/REPO/manifests/TAG
- Затем в index находится манифест образа для нужной платформы, после чего он запрашивается по digest: https://registry.example[.]com/v2/REPO/blobs/DIGEST
- И уже после этого по digest’ам из манифеста подтягиваются config образа и blobs слоёв файловой системы
Для single-platform image ссылка https://registry.example[.]com/v2/REPO/manifests/TAG указывает сразу на его manifest. То есть здесь на один уровень косвенности меньше.
Подробнее о внутреннем устройстве container images:
https://labs.iximiuz.com/tutorials/container-image-from-scratch
👉 DevOps Portal
🔴В 2025 году Россияне заработали 5,3 млрд рублей на арбитраже криптовалют
По данным Минфин 32% граждан покинули своё место работы, поскольку в среднем уже в первый месяц тут можно зарабатывать от 140 000 рублей, а через 2-3 месяца с легкостью выйти на семизначные числа.
Самое смешное, что лишь 8% россиян что-то слышали об этой профессии, хотя все инструкции бесплатно лежат на канале Арбитраж Криптовалют
Там объясняют, как имея телефон и доступ в интернет, заработать свои первые $2000. Причём разжёвывают так доступно, что поймёт даже ребенок. Кстати, на канале сегодня вышла новая рабочая связка!
Быстрее вступайте, пока это бесплатно — /channel/+yFtPq4VlI-k0OWEy
Как обученная AI-модель превращается в production API в Kubernetes?
KServe — это проект CNCF на стадии Incubating для развёртывания и обслуживания AI-моделей в Kubernetes.
Проще говоря, KServe берёт обученную модель и превращает её в масштабируемый inference-сервис в Kubernetes.
Он берёт на себя деплой, сеть, автоскейлинг и health checks модели.
Важно понимать, что KServe уже давно работает не только с классическими ML-моделями.
Как inference-платформа, он поддерживает две категории AI/ML-нагрузок:
- Predictive AI (классический ML): например, модели на scikit-learn, XGBoost, модели, упакованные через MLflow, и другие.
- Generative AI (LLM): например, запуск и обслуживание LLM через backend vLLM с поддержкой GPU.
Если хотите разобраться, как устроена inference-платформа KServe, можно прочитать свежий выпуск MLOps-рассылки.
В нём разбираются:
- Model Servers и runtimes в KServe
- Как KServe разворачивает AI-модели в Kubernetes
- Деплой MLflow-модели в KServe на практике
- Как выкатывать новые версии моделей
- Rolling Updates, Canary, A/B Testing и Shadow Deployments
И многое другое.
Читать здесь: https://newsletter.devopscube.com/p/kserve
👉 DevOps Portal
20 Kubernetes-челленджей
Итак, вот 20 вопросов (и ответов):
1. danielepolencic/kubernetes-challenge-1-counting-endpoints-9d9c49dac2aa">Подсчёт endpoints
2. danielepolencic/kubernetes-challenge-2-waiting-for-a-miracle-f8448c864397">Ждём чуда
3. danielepolencic/kubernetes-challenge-3-i-said-stop-3323e74002ca">Я сказал стоп
4. danielepolencic/kubernetes-challenge-4-designing-shared-clusters-dc836f087fb2">Проектирование shared-кластеров
5. danielepolencic/kubernetes-challenge-5-kernel-panic-b5409d3db6e4">Kernel panic
6. danielepolencic/challenge-6-hop-little-bunny-b0748c3cd907">Прыгай, кролик
7. danielepolencic/kubernetes-challenge-7-how-many-is-too-many-217cbc2c2b63">Сколько — это слишком много
8. danielepolencic/kubernetes-challenge-8-keeping-the-lights-on-bb2826dba28b">Держим свет включённым
9. danielepolencic/kubernetes-challenge-9-greedy-etcd-ba0e395cac8a">Прожорливый etcd
10. danielepolencic/challenge-10-multiplying-pods-ebd2a65e0ac9">Умножение pod’ов
11. danielepolencic/kubernetes-challenge-11-going-indie-0a91d244b17f">В одиночку
12. danielepolencic/challenge-12-rollin-28abe367e76b">Rollin’
13. danielepolencic/challenge-13-all-you-can-eat-c93045d17388">All you can eat
14. danielepolencic/challenge-14-bounce-2ba683214e7b">Bounce
15. danielepolencic/challenge-15-down-the-rabbit-hole-d1d16121a835">В кроличью нору
16. danielepolencic/challenge-16-throttled-93133f8fd0ad">Throttled
17. danielepolencic/challenge-17-sticky-mess-7f7f00be2636">Липкий бардак
18. danielepolencic/challenge-18-dead-or-alive-16357e0b874e">Жив или мёртв
19. danielepolencic/challenge-19-tied-up-dc16a3786218">Связанный по рукам
20. danielepolencic/challenge-20-one-to-bind-them-all-ca83406d0296">Один, чтобы связать их всех
Canary vs Shadow Deployment vs A/B Testing
Когда мы деплоим модель в production, для неё применяются те же стратегии деплоя, которые обычно используются и для обычных приложений.
Разберём три распространённые стратегии деплоя моделей.
1. Canary Traffic Splitting
Небольшой процент реального трафика, например 10%, направляется на новую модель, после чего отслеживается её работа.
Если с предсказаниями всё в порядке, долю трафика постепенно увеличивают, пока она не достигнет 100%.
2. A/B Testing
Одну группу пользователей направляют на модель A, другую — на модель B с помощью sticky routing, после чего сравнивают бизнес-метрики: CTR, conversion rate, revenue и т. д.
3. Shadow Deployment
Каждый реальный запрос, как обычно, обрабатывается старой моделью, и пользователь получает именно её ответ.
При этом копия того же запроса в фоне также отправляется на новую модель.
После этого можно сравнить залогированные предсказания обеих моделей на одном и том же реальном трафике.
👉 DevOps Portal
DevOps-инструмент недели: Ray
ML-нагрузка может отлично работать на одной GPU.
Сложности начинаются, когда её нужно масштабировать на несколько GPU, работающих на разных нодах.
Именно здесь помогает Ray.
Ray – это опенсорс фреймворк с 43K+ звёзд на GitHub.
Он помогает организовать распределённое выполнение задач: планирование задач, распределение ресурсов, параллельное выполнение, обмен данными между воркерами и обработку сбоев.
Ray можно запускать на ноутбуке, виртуальных машинах, bare-metal серверах, облачных инстансах или в Kubernetes.
Для Kubernetes обычно используется KubeRay – Kubernetes Operator для создания и управления Ray-кластерами.
Ray используют такие компании, как OpenAI, Uber, Spotify и Instacart, для масштабных AI- и ML-нагрузок.
https://github.com/ray-project/ray
👉 DevOps Portal
Уже очевидно, что ВАЙБКОДИНГ — главный навык ближайших лет
Посмотрите сами. ИИ уже забирает на себя работу целых команд: пишет код, закрывает задачи джунов и позволяет стартапам запускать продукты в 2–3 раза меньшим составом. То, на что раньше нужны были несколько разработчиков, сегодня всё чаще делает один человек с ИИ-агентами.
И это только начало. Те, кто освоит вайбкодинг сейчас, смогут быстрее запускать проекты, автоматизировать огромный объём работы, увереннее конкурировать на рынке и зарабатывать больше тех, кто продолжает делать всё вручную.
Начать с нуля поможет канал Вайб-кодинг. Там ребята круглосуточно мониторят более 320 российских и зарубежных источников и публикуют только главное: релизы, инструменты, гайды, курсы и практические кейсы.
Подписывайтесь, нас уже 50 тысяч: @vibecoding_tg
Gang Scheduling в Kubernetes
Это одна из ключевых концепций в MLOps
Фреймворки для deep learning (TensorFlow, PyTorch и т. д.) требуют, чтобы во время обучения были запущены все воркеры.
Допустим, training job требует 8 воркеров, каждый из которых запрашивает по 1 GPU.
В Kubernetes-кластере свободно только 5 GPU.
Без gang scheduling стандартный scheduler обрабатывает каждый Pod независимо.
В результате 5 worker Pod'ов будут запланированы, а ещё 3 останутся в статусе Pending.
При этом 5 запущенных воркеров фактически не смогут начать обучение. GPU будут заняты, пока система ждёт оставшиеся воркеры.
При использовании gang scheduling scheduler сначала проверяет, достаточно ли ресурсов для запуска всего training job.
Если ресурсов хватает, все worker Pod'ы планируются одновременно.
Если нет — не планируется ни один Pod. Пять свободных GPU остаются доступными для других job'ов.
Это можно назвать подходом – «всё или ничего».
В первую очередь gang scheduling позволяет избежать неэффективного использования GPU из-за частично запланированных распределённых workload'ов.
Kubeflow Trainer поддерживает gang scheduling из коробки через podGroupPolicy.
Он работает с установленными в кластере плагинами для gang scheduling, например Coscheduling.
👉 DevOps Portal
Xata — Kubernetes-native платформа для Postgres, предназначенная для запуска большого количества баз данных.
Поддерживает copy-on-write ветвление, scale-to-zero, автоскейлинг, высокую доступность (HA), бэкапы, REST API, CLI и RBAC.
https://github.com/xataio/xata
👉 DevOps Portal
Изучите основы Kubernetes Ingress за 7 минут
В этом подробном материале разберём:
* Что такое Kubernetes Ingress?
* Как работает Kubernetes Ingress?
* Что такое Ingress Controller?
* Как работает Ingress Controller?
* Архитектуру Ingress и Ingress Controller
https://devopscube.com/kubernetes-ingress-tutorial/
Примечание: хотя Ingress по-прежнему остаётся самым распространённым вариантом, Kubernetes постепенно движется в сторону Gateway API для более продвинутого и гибкого управления трафиком.
Если сначала разобраться с Ingress, освоить Gateway API будет значительно проще.
👉 DevOps Portal
Kubeswitch — CLI-инструмент, который упрощает переключение между разными контекстами kubectl.
Kubeswitch можно использовать как полноценную замену kubectx.
➜ https://github.com/danielfoehrKn/kubeswitch
👉 DevOps Portal
🔍Тестовое собеседование с Head of DevOps уже завтра
4 августа(уже завтра!) в 19:00 по мск приходи онлайн на открытое собеседование, чтобы посмотреть на настоящее интервью на Middle DevOps-разработчика.
Как это будет:
📂 Александр Хренников, Head of DevOps в KTS с опытом 14+ лет, будет задавать реальные вопросы и задачи разработчику-добровольцу
📂 Александр будет комментировать каждый ответ респондента, чтобы дать понять, чего от вас ожидает собеседующий на интервью
📂 В конце можно будет задать любой вопрос Александру
Это бесплатно. Эфир проходит в рамках менторской программы от ШОРТКАТ для DevOps-разработчиков, которые хотят повысить свой грейд, ЗП и прокачать скиллы.
Переходи в нашего бота, чтобы получить ссылку на эфир → @shortcut_devops_bot
Реклама.
О рекламодателе.
Добро пожаловать в мир разработки
Проект «Terminal» стал крупнейшей библиотекой бесплатного образования. В одном канале собраны курсы, книги, полезные инструменты и практические тренажёры для всех разработчиков:
• Практические курсы и задания
• Книги и статьи известных авторов
• Полезные инструменты и ресурсы
• IT-новости и инсайды
Обучение по всем направлениям: SQL, Python, ML, Frontend, PHP, C++, Go, Git, Linux, QA, Java, Vibe-coding, InfoSec и др.
⌨️ подписаться
Hubble — полностью распределённая платформа для observability сетевого взаимодействия и безопасности cloud-native workloads.
Она построена поверх Cilium и eBPF и позволяет глубоко анализировать взаимодействие сервисов, их поведение и работу сетевой инфраструктуры.
➜ https://github.com/cilium/hubble
👉 DevOps Portal
🐻 GitFlic — в учебный процесс МГТУ им. Баумана
Кафедра «Защита информации» ИУ10 переводит лабораторные работы с Gitea на GitFlic. Студенты будут изучать практики безопасной разработки (РБПО) на реальном промышленном инструменте — не на учебных упрощенках.
Бауманка готовит специалистов по ИБ, которые через несколько лет придут в компании, где уже стоит задача выстраивать безопасную разработку по российским стандартам. Логично, что инструмент в учёбе должен совпадать с тем, что их ждёт в реальной работе.
Кафедра получила 250 лицензий — этого хватит на несколько учебных групп и потоков. На GitFlic студенты будут вести лабораторные по разработке и осваивать практики безопасного цикла создания ПО.
«Мы хотим дать студентам возможность изучать современные практики безопасной разработки на отечественной платформе, а не на иностранных аналогах»
«Переход на GitFlic — это часть нашей задачи готовить студентов к работе с реальными промышленными инструментами. Уверены, что практика на GitFlic даст выпускникам конкурентное преимущество при выходе на рынок труда»
Model Server — одно из ключевых понятий в MLOps.
Если говорить проще:
* Nginx-сервер обслуживает веб-приложения
* Model Server обрабатывает inference-запросы к ML-модели
Работает это следующим образом.
Model Server загружает артефакты обученной модели в оперативную память или память GPU, чтобы не загружать модель заново при каждом запросе.
Он предоставляет inference-эндпоинты по HTTP и gRPC.
Также он экспортирует метрики и трейсы – например, через Prometheus и OpenTelemetry (OTEL).
Среди часто используемых Model Server – MLServer, TensorFlow Serving, NVIDIA Triton Inference Server и другие.
Теперь важный момент.
Model Server сам по себе не умеет горизонтально масштабироваться.
Для масштабирования и обеспечения высокой доступности поверх него используется оркестрация Kubernetes.
Когда речь идёт о model serving, KServe – один из ключевых serving-фреймворков для Kubernetes.
Model Server отвечает за обработку inference-запросов, а KServe выступает в роли слоя оркестрации.
👉 DevOps Portal
Linux 101: Практика по управлению хранилищами
Отработайте основы управления хранилищами в Linux на серии практических заданий – от монтирования существующих файловых систем до разметки дисков и автоматизации их подготовки:
- Смонтировать диск с уже существующими данными и прочитать его содержимое
https://labs.iximiuz.com/challenges/storage-simple-mount
- Создать файловую систему ext4 на неформатированном диске
https://labs.iximiuz.com/challenges/storage-simple-format
- Создать таблицу разделов GUID Partition Table (GPT) на пустом диске
https://labs.iximiuz.com/challenges/storage-simple-partition-table
- Разбить диск на несколько разделов и отформатировать их в ext4 и Btrfs
https://labs.iximiuz.com/challenges/storage-partition-drive
- Смонтировать существующую директорию по новому пути с помощью bind mount
https://labs.iximiuz.com/challenges/storage-bind-mount
- Настроить постоянное монтирование файловой системы, чтобы оно сохранялось после перезагрузки
https://labs.iximiuz.com/challenges/storage-persistent-mount
- Автоматизировать подготовку диска с помощью shell-скрипта
https://labs.iximiuz.com/challenges/storage-provision-drive-script
KubePlumber проверяет работу сети Kubernetes изнутри кластера, тестируя:
* внутренний DNS,
* трафик между подами,
* внешний DNS,
* пропускную способность между нодами.
➤ https://github.com/David-VTUK/KubePlumber
👉 DevOps Portal
🔍Тестовое собеседование с Head of DevOps уже завтра
11 августа(уже завтра!) в 19:00 по мск приходи онлайн на открытое собеседование, чтобы посмотреть на настоящее интервью на Middle DevOps-разработчика.
Как это будет:
📂 Александр Хренников, Head of DevOps в KTS с опытом 14+ лет, будет задавать реальные вопросы и задачи разработчику-добровольцу
📂 Александр будет комментировать каждый ответ респондента, чтобы дать понять, чего от вас ожидает собеседующий на интервью
📂 В конце можно будет задать любой вопрос Александру
Это бесплатно. Эфир проходит в рамках менторской программы от ШОРТКАТ для DevOps-разработчиков, которые хотят повысить свой грейд, ЗП и прокачать скиллы.
Переходи в нашего бота, чтобы получить ссылку на эфир → @shortcut_devops_bot
Реклама.
О рекламодателе.
📘 Apache Kafka — новый курс на Mentorix
Хотите уверенно говорить о Kafka на собеседовании и спокойно работать с ней в проде? Курс с нуля: от событий и append-only журнала до гарантий доставки, log compaction и потоковой обработки — всё закрепляете задачами в коде.
⚙️ Внутри: события и append-only журнал, партиции, ребалансировка, ISR, гарантии доставки, log compaction, оконные агрегации, потоковая обработка
🧩 Задачи с автопроверкой — моделируете механизмы Kafka в коде (решения на любом из 7 языков)
🎓 Сертификат · доступ навсегда
▶️ Первые уроки открыты — начать можно бесплатно
🏷 −50% — скидка применится по ссылке12 990 ₽ → 6 495 ₽
➜ Забрать курс со скидкой
━━━━━━━━━━━━━━
Курс с нуля, но заходит легче с базой по инфраструктуре и сетям. Если хотите подтянуть — на платформе есть бесплатные курсы:
🐳 Docker: первые шаги
Сети для разработчиков: TCP/IP, HTTP, DNS
SQL с нуля
📚 Все бесплатные курсы Mentorix
KEDA GPU Scaler — это внешний scaler для KEDA, который получает метрики NVIDIA GPU через NVML и автоматически масштабирует vLLM, Triton, training jobs и кастомные inference-нагрузки без необходимости использовать Prometheus.
https://github.com/pmady/keda-gpu-scaler
👉 DevOps Portal
K8up – это Kubernetes Operator, который позволяет:
- Делать бэкапы всех PVC с режимом доступа ReadWriteMany или с определённым label
- Запускать отдельные бэкапы по требованию
- Настраивать регулярный запуск бэкапов по расписанию
И многое другое
➜https://k8up.io/
👉 DevOps Portal
Как понять, подходит ли вам информационная безопасность?
Не увольняясь.
Не покупая дорогой курс.
Не тратя месяцы на изучение теории.
Мы с ТОП экспертом проведём бесплатный вебинар «Как системному администратору перейти в информационную безопасность?» и покажем, как выглядит работа аналитика SOC изнутри.
Вы узнаете:
❓ какие задачи решает аналитик SOC каждый день;
❓ чем его работа отличается от системного администрирования;
❓ какие знания у вас уже есть;
❓ что нужно изучить для перехода;
❓ с чего действительно стоит начать.
🎁 А если останетесь с нами до конца, получите бесплатный мини-курс и сможете попробовать себя в роли аналитика SOC на примерах логов и реальных сценариев.
📅 Дата: 27.08.26 19:00
👉 Зарегистрироваться тут
До вебинара вы можете оценить текущий уровень знаний и получить карту развития по направлениям информационной безопасности.
📋 Пройти Диагностический тест
Реклама.
ИП Кириллова Наталья Викторовна, ИНН 691207795912
Один раз настроить CI/CD по мануалу и понять, как это работает — разные вещи.
Мануал ведёт за руку: вот команда, вот результат. Стоит отклониться от сценария — и уже непонятно, что сломалось и почему.
🎇На курсе «Основы DevOps» от Codeby не рассказывают, что такое DevOps, сразу работают руками: Linux и Bash как основа, потом Git, Ansible, Terraform. Дальше — контейнеризация, Docker, Kubernetes с хранилищем и масштабированием, Helm. CI/CD через Jenkins и GitHub Actions. В финале изучаете мониторинг, логирование, распределённый трейсинг.
31 тема, 7 модулей. Каждый инструмент закрепляется практическими задачами в инфраструктуре.
🪧Подходит, если уже в IT и хотите системно закрыть DevOps, а не просто добавить строчку в резюме.
Старт курса 14 сентября
➡️ Посмотреть программу курса и записаться
✉️Бесплатная консультация: @CodebyAcademyBot
Kubernetes Job и JobSet: в чём разница
Разбираемся
Job/CronJob запускает одну конкретную batch-нагрузку.
Например: ETL-задачу, резервное копирование, генерацию отчётов и т. д.
JobSet, в свою очередь, запускает несколько скоординированных Job как единую распределённую нагрузку.
Каждая Job в наборе может иметь собственный шаблон Pod и связанные с ним настройки, но весь набор при этом работает как единое целое.
Под капотом JobSet запускает дочерние Job в индексированном режиме. Это означает, что каждый Pod получает стабильный индекс и hostname, например worker-0, worker-1 и т. д.
Кроме того, JobSet создаёт headless-сервис, через который Pod могут обнаруживать друг друга.
Основной сценарий использования JobSet — нагрузки AI/ML и HPC.
Например, в Kubeflow Trainer JobSet используется для запуска распределённого обучения моделей.
👉 DevOps Portal
Разбираем MLflow на практических примерах
Вот разбор про MLOps, где рассмотрели MLflow — один из ключевых инструментов в MLOps.
В материале:
- Что такое трекинг экспериментов
- Как устроена архитектура MLflow
- Развёртывание MLflow в Kubernetes — практика
- Локальное обучение модели для прогнозирования оттока сотрудников и трекинг запусков через MLflow — практика
- Регистрация моделей и управление ими в MLflow Model Registry
И многое другое.
https://newsletter.devopscube.com/p/mlfow
👉 DevOps Portal
Трекинг экспериментов в MLOps
В машинном обучении при каждом обучении модели создаётся новый запуск обучения.
Эксперимент - это набор таких запусков.
Трекинг экспериментов - это автоматическое логирование важной информации о каждом запуске обучения.
Например, во время каждого запуска обучения ML-модели сохраняются следующие данные:
- Параметры: алгоритм, гиперпараметры, версия датасета.
- Метрики: точность, F1-мера, время обучения.
- Артефакты: файл модели, файлы окружения и другие материалы.
- Метаданные: информация о расположении артефактов, сигнатура модели, пример входных данных, пользовательские метаданные и другое.
Это похоже на то, как в CI-системах отслеживаются SHA коммита, номер сборки, логи и другие данные.
Трекинг экспериментов выполняет ту же задачу для запусков обучения моделей машинного обучения.
Поэтому запуск обучения без трекинга - это как CI-сборка без истории сборок.
Самый распространённый инструмент для трекинга экспериментов - MLflow.
👉 DevOps Portal