DevOps FM
4.79K subscribers
591 photos
12 videos
10 files
709 links
♾️ Канал для тех, кто живёт DevOps и системным администрированием.

Новости, статьи, best practices, инструменты и чилл-аут контент. Cloud Native, Docker, Kubernetes, CI/CD, БД, мониторинг etc.

По вопросам — Даше @marsycored
Download Telegram
💥 Коллеги из KazDevOps разыгрывают бесплатную консультацию по DevOps-вопросам с топами компании Core 24/7.

👉 3 победителя смогут задать вопросы техлиду и узнать, почему то или иное решение не работает, как настроить процесс эффективнее и от чего стоит отказаться.

Условия конкурса:

Быть подписчиком KazDevOps
Рассказать о своей ситуации вкратце под аналогичным постом в канале KazDevOps — 1-2 предложения о проблеме, задаче или амбициях, связанных с DevOps
Дождаться розыгрыша — победителей объявят 10 августа: проверят условия выше и рандомом определят 3 человек, которые представляют свой бизнес или работают в компании

🤝 Делитесь с коллегами и ожидайте звонка

#devops #devsecops #cloud #kubernetes #docker #terraform #giltab

@DevOpsKaz
👍4🔥3
🖖 Всем DevOps! У вас когда-нибудь воскресали зомби?

🧟 Ресурсы-зомби (zombie resources) — это компоненты облачной инфраструктуры, которые существуют и работают бесцельно.

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

Простаивающие ресурсы опасны по двум причинам. Во-первых, с компании взимается плата за ресурсы, которые она больше не использует. Во-вторых, эти зомби расширяют ту зону инфраструктуры, которую могут использовать злоумышленники.

🗑 Как снизить риски?

1) Сделайте ваши среды максимально наглядными. Визуализация потребления облачных ресурсов будет максимально понятной в виде диаграмм.
2) Присвойте теги ресурсам. Они должны быть ясными и понятными. Будет здорово, если в дополнение вы будете указывать название проекта и дату развёртывания;
3) Обеспечьте безопасность dev-среды. Важно очищать остатки ресурсов после завершения работы;
4) Проводите регулярные аудиты.

👩‍💻 В поисках зомби вам может помочь cAdvisor — инструмент, который анализирует использование контейнерами ресурсов.

#Docker #Ресурсы #Облако
Please open Telegram to view this post
VIEW IN TELEGRAM
👍157🔥2🥱2🤡1
Упс! Мы превратили средовую жабу в подборку релизов и статей за прошедшую неделю.

🟡 Выкатили релиз ядра Linux 6.10. Новая версия включает более 14 тысяч исправлений от 1989 разработчиков.

Что интересного? К примеру, внедрили начальный вариант NTSYNC — драйвера синхронизации Windows NT, прекратили поддержку старых CPU Alpha и добавили системный вызов mseal(), позволяющий процессам выставлять блокировку на изменение определённых частей своего адресного пространства.

Ещё Linux обзавёлся собственным BSoD, который реализовали через компоненты DRM Panic. Вы можете протестировать эту новую опцию с помощью маршрута echo c > /proc/sysrq-trigger. А в комментариях к этому посту мы показали, как выглядит синий экран смерти по-линуксовски.

Посмотреть все обновления вы сможете по этой ссылке. А по этой — скачать новую версию.

⚫️ В блоге Docker Джей Шмидт объяснил, в чём разница между инструкциями RUN, CMD и ENTRYPOINT. В статье вы найдёте наглядные примеры использования этих инструкций в режимах shell и exec. Чтобы начать читать — кликните сюда.

🟡 CIS обновили бенчмарки для Kubernetes, NGINX, OpenShift и многих других. Посмотреть новые показатели можно здесь.

⚫️ Архитектор ПО Саурабх Дашора рассказал и показал, как Reddit обслуживает 100 тыс. запросов метаданных в секунду. Спойлер: помогает им в этом единое хранилище метаданных мультимедиа. Из статьи вы узнаете о нюансах разработки такого хранилища и о том, как команда Reddit решила проблемы при миграции и масштабировании.

#DevOps #Linux #Docker
👍146🔥4
👩‍💻 Это — дерево решений для выбора между инструкциями RUN, CMD и ENTRYPOINT Dockerfile.

Эту и другую полезную информацию вы найдёте в новом переводе статьи от Docker, в которой автор показывает различия этих инструкций в форматах shell и exec.

Читать перевод — на Хабре.

#DevOps #Docker
Please open Telegram to view this post
VIEW IN TELEGRAM
21🥴14🔥4👍2
Далее в эфире DevOps FM — традиционный срединедельный дайджест новостей и статей.

🟡 Вчера состоялся релиз Kubernetes 1.31. Тема этого выпуска — чествование энтузиазма и духа коллективного творчества, благодаря которым k8s живёт и развивается уже более 10 лет. Маскотом этой версии стал жизнерадостный песёль Элли.

Новый релиз включает 45 изменений. Например, реализовали поддержку нового официального бэкенда nftables для kube-proxy. Ещё добавили поддержку селекторов полей для кастомных ресурсов, новое поле unhealthyPodEvictionPolicy для указания действий с нездоровыми подами и два новых флага — --emulation-version и --min-compatibility-version.

Kubernetes v1.31 доступен для скачивания на GitHub и официальном сайте.

⚫️ Джей Шмидт продолжает проводить различия между инструкциями Dockerfile. На этот раз он объяснил разницу между ADD и COPY (к примеру, в их поведении при удаленных контекстах) и на примерах показал, когда и какую инструкцию нужно использовать. Если кратко:

• В большинстве случаев лучше выбирать COPY, так как она проста и довольно безопасна. Она переносит файлы и каталоги из вашего локального контекста в создаваемый вами образ Docker.
ADD же рекомендуется использовать только тогда, когда вам необходим конкретно её функционал (например, возможность обработки URL-адресов).

Если хочется больше деталей, то можете прочитать весь обзор в блоге Docker.

🟡 В своем блоге команда DigitalOcean поделилась опытом переноса продакш-кода в монорепозиторий. Статью можно читать и как интересный кейс, и как полезный гайд.

⚫️ На TheNewStack опубликовали 5 советов по работе с Infrastructure as Code (IaC). Один из них: используйте шаблон The DRY, чтобы изменения в модуле автоматически отражались везде, где используется этот модуль. Остальные 4 совета — здесь.

#devops #kubernetes #docker
🔥12👍42
👩‍💻 Привет! Сегодня — немного best practices по оптимизации производительности Dockerfile.

1. Очищайте промежуточные файлы и удаляйте зависимости сборок после того, как они станут не нужны.
RUN apt-get update && apt-get install -y \
build-essential \
&& apt-get clean && rm -rf /var/lib/apt/lists/*


2. Используйте файл .dockerignore. С его помощью вы сможете уменьшить размер контейнера, ускорить сборку и предотвратить утечку секретов.

3. При выполнении инструкции RUN всегда объединяйте команды apt-get update и apt-get install с помощью &&.

4. Старайтесь избегать ненужных COPY. Они замедляют процесс сборки и увеличивают размер образа. Вы можете скопировать несколько файлов с помощью массивов, например:
COPY [
"config.json",
"index.js",
"package.json"
] /usr/src/app/


#bestpractices #docker
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥13👍124🤣2🤯1
👩‍💻 Начиная с версии 17.5 Docker стал поддерживать multi-stage builds. Этот метод помог разделить сложные технические сборки на несколько этапов, каждый из которых выполняет определённую задачу. Благодаря этому важному обновлению стало легче уменьшать поверхность атаки и размер образов, а также эффективнее использовать кэш Docker.

На Blacksmith вышло понятное руководство по многоэтапным сборкам Docker. В статье вы найдете рекомендации по подбору базового образа для каждого этапа сборки и оптимизации порядка этапов.

#docker #dockerfile #bestpractices
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11🔥53🥴1
Жабы закончились. Остался дайджест интересных новостей за последнюю неделю.

🟡 Вышел релиз OpenSSH 9.9. Из обновлений: теперь во время компиляции ключи DSA отключены по умолчанию, а в ssh, sshd и ssh-agent добавлена защита от оседания закрытых ключей в core-файлах, которая работает в Linux, OpenBSD и FreeBSD. Ещё добавили поддержку нового постквантового стандарта криптографии от NIST (Национального института стандартов и технологий США). Посмотреть все изменения можно по ссылке.

⚫️ У OpenSearch нашли проблему в совместимости с Google Chrome v.129 : при развертывании панели Discover вместо значений отображается красная маска. Будьте аккуратны. Временное решение проблемы – здесь.

🟡 Команда Docker приглашает разработчиков принять участие в уже традиционном опросе Docker State of Application Development, на результаты которого она будет ориентироваться при дальнейшей разработке продуктов. Опрос займет 20-30 минут, дедлайн — 20 ноября. Кстати, среди участников проведут розыгрыш макбука, игровых приставок и не только.

⚫️ Yandex Cloud объявил о запуске нескольких новых сервисов:
- Yandex BareMetal (аренда выделенных физических серверов);
- Security Deck (сервис для комплексного управления безопасностью компаний в облаке);
- Serverless Integrations (сервис для более быстрой разработки продуктов в облаке).

🟡 На Medium рассказали о сложностях и проблемах согласованности данных.

#devops #opensearch #openssh #docker #yandex
🔥11👍41👨‍💻1
👩‍💻 В этот понедельник публикуем несколько лучших практик по работе с сетью в Docker.

1) Сегментируйте сети. Используйте методы сетевой изоляции (настройте iptables правила). Сегментация сети позволит вам изолировать контейнеры, контролировать доступы и защищать конфиденциальные рабочие нагрузки. Даже если контейнер будет скомпрометирован, действия злоумышленника будут ограничены только этим контейнером; вся остальная система будет под защитой.

2) Избегайте перекрытия подсетей в сети Docker, чтобы предотвратить проблемы с подключением. Вы можете проверить текущую конфигурацию сети через команду docker network inspect.

3) Используйте DNS для обнаружения сервисов. Внутренний DNS Docker преобразует имена контейнеров в IP-адреса в одной сети, что значительно упрощает обнаружение сервисов.

4) Обезопасьте связь. Используйте зашифрованные overlay-сети для конфиденциальных приложений, особенно при работе на нескольких докер-хостах.

#devops #docker #bestpractices
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10🔥73
👩‍💻 В каких случаях может понадобиться создать образ Docker без использования Dockerfile? Когда нужно, чтобы слои образа создавались параллельно, вся обработка выполнялась в памяти без обращения к файловой системе, а ещё была возможность использовать собственные правила кэширования данных.

В своем блоге Адольфо поделился опытом работы с dockerfileless-образами контейнеров. Два главных урока, которые вы можете вынести из статьи:

1. It is a true pain to deal with OCI images manually.

2. Рeeking under the hood of container images will not void your warranty, and is a great way to get a better idea of what an OCI image actually is.


#devops #docker #контейнеры
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10🔥54👨‍💻2
👩‍💻 Обновление политик Docker Hub

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

Смотрим на изменения:

1. Оплата за скачивание образов отменена

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

2. Обновление лимитов на скачивание

Теперь для неаутентифицированных пользователей будет доступно 10 pull-запросов в час. Аутентифицированным пользователям увеличили лимит с 40 до 100 запросов в час. Для пользователей с подпиской ограничений не планируется.

3. Отсрочка платы за хранение

Планы по введению платы за хранение данных на Docker Hub отложены на неопределённый срок. Вместо этого Docker сосредоточится на создании инструментов для управления хранилищем. О любых изменениях в политике будет объявлено за 6 месяцев.

Изменения вступают в силу с 1 апреля этого года.

#DevOps #Docker #DockerHub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍19😁52🔥2🆒1
👩‍💻 Docker исполняется 12 лет. Рассказываем историю его создания

Олды помнят, что контейнерами пользовались еще задолго до того как это стало мейнстримом, но как говорится — не все то золото, что блестит.

Создателем Docker считается Соломон Хайкс — основатель компании dotCloud, которая занималась предоставлением PaaS. Внутри dotCloud использовалась технология контейнеризации для изоляции приложений и их зависимостей, именно здесь команда разработала инструмент, который позже стал Docker.

13 марта 2013 года на конференции PyCon в Калифорнии состоялся первый публичный анонс, этот день принято считать днем рождения Docker. Хайкс выступил с презентацией технологии, продемонстрировав ее способность упрощать контейнеризацию и развертывание приложений. Выступление, кстати, можно посмотреть в записи тут.

На начальных этапах Docker представил версию контейнеров, в основе которых лежали технологии LXC (Linux Containers), а затем заменил это собственной библиотекой libcontainer. Теперь же, архитектура Docker состоит из Docker engine, containerd, containerd-shim и runC.

Так просто? Не совсем. После презентации в Калифорнии, пока команда "допиливала" углы, Docker слили на Hacker News. Посыпались как вопросы, так и восторженные отзывы. Но уже через пару недель компания выпустила свой продукт с лицензией Apache 2.0.

Всего за год Docker скачали более 1 млн. раз, dotCloud отказались от своего названия и PaaS услуг, сосредоточившись на набирающем популярность решении, а многие крупные компании, включая Amazon, Google и Microsoft, начали предлагать встроенную поддержку Docker.

📺 В дополнение, советуем вам посмотреть выступление Соломона уже после релиза инструмента, где он рассказывает о мотивации и причинах создания Docker.

#DevOps #Docker
Please open Telegram to view this post
VIEW IN TELEGRAM
👍144🔥3🏆1
Дайджест в среду как хорошо настроенный мониторинг: всегда ловит самое важное.

🟡 Зарелизили Debian 12.11

В релиз вошло 81 исправление ошибок для различных пакетов и 45 обновлений безопасности. Обновили ядро Linux, новые опции монтирования для XFS, добавили поддержку новых устройств и режима восстановления системы. Все обновления можно посмотреть здесь.

Напомним, что Debian 13 уже находится в стадии жесткой заморозки для тестирования и исправления проблем, релиз ожидается этим летом.

⚫️ У Docker появились Hardened Images — безопасные по умолчанию контейнеры, рассчитанные на продакшн. Образы минимальны, регулярно обновляются и поддерживают знакомые дистрибутивы вроде Debian. Поддерживается кастомизация, интеграция с CI/CD и инструментами безопасности. Подключение довольно простое, достаточно заменить базовый образ в Dockerfile.

Больше информации в статье.

🟡 На Faun опубликовали статью о 5 CI/CD-практиках, которые помогают сократить деплой. Автор рассказывает, как команда отказалась от ручных проверок, сделала пайплайн stateless, добавила автоматические гейты между окружениями и настроила безопасное управление секретами. Всё это — с примерами конфигов и скриптов.

⚫️ Microsoft открыли исходный код WSL и запустили сайт wsl.dev для разработчиков. Теперь любой желающий может собрать WSL из исходников, предложить патчи и поучаствовать в развитии подсистемы. Код опубликован под MIT-лицензией. Также в открытый доступ выложили консольный редактор Edit на Rust.

#devops #docker #microsoft #debian
🔥102👍2
📚 Пятничное чтиво на канале DevOps FM.

В прошлом мы уже обсуждали зомби-ресурсы в облаке, теперь пришло время зомби-процессов — и не где-нибудь, а внутри Docker-контейнера с Go-приложением.

Савас Вендова делится кейсом, в котором его сервер стабильно падал с ошибкой Redis Pub/Sub из-за проблем с утечкой памяти. Причиной были зомби: дочерние процессы Node.js не завершались корректно даже после os.Process.Kill() в Go. А поскольку приложение запускалось как PID 1 внутри Docker, оно не собирало съедающие ресурсы зомби-процессы.

Проблему решили с помощью Tini — init-решения для контейнеров. Оно перехватывает SIGCHLD и корректно завершает все процессы. Подробный разбор кейса с примерами читаем здесь.

Желаем всем, кто отдыхает, хороших выходных, а тем, кто дежурит — спокойных смен без серьёзных алертов и зомби!

#devops #docker #go #zombieprocesses
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🔥3🤔1
В эту пятницу рассказываем про онлайн-сервисы для знакомства с Docker и Kubernetes

👩‍💻 Play with Docker — интерактивная площадка для изучения Docker. После авторизации вас перенаправит на облачный хост, где вы можете создавать инстансы Docker-кластера актуальной версии. Сессия длится 4 часа.

Чтобы разобраться было проще, авторы сделали отдельные интерактивные инструкции. В них можно быстро освоить базовые команды Docker, работу с docker-compose, volumes, сетями и даже с Docker Swarm.

👩‍💻 Play with Kubernetes — аналогичная Play with Docker площадка для изучения Kubernetes. На сайте вам предоставляется доступ к виртуальной Linux-машине, где можно баловаться с кластерами и разбираться с основными концепциями оркестратора.

Как и в случае с Docker, у Kubernetes есть собственный обучающий портал, где можно пошагово пройти сценарии развёртывания подов, сервисов, ingress, конфигов и прочих сущностей. Отличный способ разобраться в основах и попрактиковаться без настройки инфраструктуры.

Команда DevOps FM желает приятных выходных. А тем, кто работает или дежурит – спокойных рабочих смен!

#devops #docker #kubernetes
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7👍21💅1
Выкатываем свежую партию релизов и статей за прошедшую неделю.

🟡 Oracle выпустили июльский Critical Patch Update для своих продуктов

Обновления коснулись 309 проблем и уязвимостей в Java SE, MySQL, VirtualBox и некоторых других продуктах. Устранены множество критических уязвимостей, включая те, которые позволяют удаленное выполнение кода без аутентификации. Некоторые их них получили уровень опасности выше 8, поэтому советуем обновиться.

Полный список уязвимостей, CVE и затронутых продуктов можно посмотреть здесь.

⚫️ GitLab улучшает удаление проектов и групп

Какие фичи для этого предлагают:
• Удаление не сразу, все проекты и группы сначала переходят в статус pending deletion и у вас есть 30 дней на восстановление, даже на бесплатном тарифе
• После удаления namespace автоматически освобождается и можно сразу создать новый проект с тем же адресом
• Появится чёткое разделение между временным и окончательным удалением — чтобы никто случайно не потерял важные данные

Полные подробности читаем в официальном блоге.

🟡 2025 Docker: как меняется разработка ПО

Команда Docker провели опрос о состоянии разработки приложений в 2025 года, в опросе участвовало более 4500+ специалистов. Результаты показывают — безопасность больше не является изолированной специализацией, только каждая пятая компания отдает эту задачу на аутсорс.

Использование контейнеров в ИТ-индустрии резко возросло до 92% по сравнению с 80% исследования 2024 года. Однако в других отраслях уровень внедрения ниже — 30%. Python обогнал JavaScript по популярности, а основными трудностями остаются оценка времени и планирование задач.

Интересно отметить, что самостоятельное обучение набирает популярность. Во всех отраслях 85% респондентов обращаются к онлайн-курсам или сертификации, значительно опережая традиционные источники, такие как школа (33%), книги (25%) или обучение на рабочем месте (25%).

⚫️ На dev вышла статья о том, когда стоит использовать API, а когда — вебхуки. Если нужно запрашивать данные по требованию — выбирайте API. Если хотите получать уведомления о событиях в реальном времени — помогут вебхуки. В статье также разобраны плюсы, минусы, безопасность, сравнение с WebSocket и различные кейсы вроде CRM-интеграций. Подходит тем, кто проектирует архитектуру взаимодействия между сервисами.

#devops #docker #api #gitlab
4🔥4
Всем DevOps! Сегодня по плану у нас свежий дайджест новостей:

🟡 Выпустили Linux 6.16

В воскресенье вышел релиз ядра версии 6.16. В новой версии было внесено 15 924 исправлений, среди которых: удаление протокола DCCP, добавление драйвера ovpn для повышения производительности работы OpenVPN; внедрение механизма Kexec HandOver для запуска нового ядра из старого без потери состояния системы; оптимизации в Ext4 и многое другое.

Полный список изменений — тут.

⚫️ Kubernetes рассказали чего ожидать в версии 1.34

Скоро выйдет Kubernetes v1.34 — релиз запланирован на 27 августа 2025 года. В новую версию войдут изменения связанные с Dynamic Resource Allocation для работы с GPU и нестандартным оборудованием, появится podReplacementPolicy в Deployments для настройки запуска новых подов при обновлении и добавят поддержку KYAML — упрощенной версии YAML созданной специально для Kubernetes.

Эти и другие фичи можно посмотреть в анонсе.

🟡 Docker прекращают поддержку Content Trust с 8 августа 2025 года

Docker объявил о прекращении поддержки Docker Content Trust — устаревшего механизма проверки контейнерных образов. Пользователям советуют переходить на современные решения для подписания и верификации, такие как Sigstore и Notation. Рекомендуется убрать переменную DOCKER_CONTENT_TRUST=1, чтобы избежать сбоев при загрузке образов.

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

#devops #linux #microservices #kubernetes #docker
👍53🔥2
Выкатываем срединедельный дайджест новостей и статей на DevOps FM!

🟡 Утечка данных в Debian 13: StarDict передаёт выделенный текст на внешние сервера

Пользователи обнаружили серьёзную проблему с конфиденциальностью в репозитории будущего Debian 13. Через пакет StarDict, реализующий интерфейс для поиска в словарях, приложение отправляет любой выделенный фрагмент на внешние серверы.

Достаточно просто выделить слово в любом окне, и оно автоматически уходит на серверы словарей dict.youdao.com и dict.cn без шифрования по протоколу HTTP. Это может привести к утечке личных данных и паролей, но поведение воспроизводится только на базе протокола X11, в окружениях Wayland действует изоляция.

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

⚫️ Docker опубликовали статью о подводных камнях использования защищённых контейнерных образов.

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

🟡 CNCF поделились результатами отчёта Voice of Kubernetes Experts 2025. Это масштабное исследование среди 500+ экспертов, ответственных за внедрение Kubernetes в крупных компаниях. Из интересного:

• 82% компаний планируют разрабатывать новые приложения на cloud native-платформах;
• 87% используют гибридные облака для гибкости, экономии и снижения зависимости от одного вендора;
• Больше половины опрошенных запускают важные приложения с высокими требованиями к отказоустойчивости и доступности — в контейнерах;
• Основные проблемы, с которыми сталкиваются респонденты: безопасность (72%), наблюдаемость (51%) и отказоустойчивость (35%).

Подробнее — в отчёте.

⚫️ На System Design Codex опубликовали небольшую шпаргалку по метрикам производительности систем. Автор подчёркивает, что архитектура и технологии — лишь часть успеха, а вот показатели вроде пропускной способности, масштабируемости и других метрик дают конкретные ориентиры для оценки качества системы. В статье объясняется каждая метрика, как её измерять и улучшать, а так же практические советы по оптимизации.

#devops #debian #docker #kubernetes
👍6🔥51