Выдохнули — самая насыщенная неделя завершена. Теперь время для перезагрузки: встречи с друзьями, хобби, любимые сериалы — всё, что поможет восстановить силы.
💬 Как вы справились с этой неделей? Что первым делом сделаете в выходные? Рассказывайте в комментариях 👇
#холиварня
Please open Telegram to view this post
VIEW IN TELEGRAM
📰 Шесть непростых дней
Вспоминаем что было за прошедшую рабочую неделю.
— Критический баг в Ubuntu 25.10
— NGINX Unit больше не разрабатывается
— Bottles 51.25
— Fedora Linux 43
— 14 вопросов, после которых вам не перезвонят
🐸 Библиотека devops'a
#дайджест_недели
Вспоминаем что было за прошедшую рабочую неделю.
— Критический баг в Ubuntu 25.10
— NGINX Unit больше не разрабатывается
— Bottles 51.25
— Fedora Linux 43
— 14 вопросов, после которых вам не перезвонят
#дайджест_недели
Please open Telegram to view this post
VIEW IN TELEGRAM
Anonymous Poll
16%
Новости
32%
Мемы
53%
Пост про requests и limits
30%
Статья про 14 вопросов ред-флагов
47%
Про секреты в Terraform
Please open Telegram to view this post
VIEW IN TELEGRAM
😁4👾1
HashiCorp анонсировал релиз Consul 1.22 и новый MCP-сервер, который меняет способ взаимодействия с платформой service mesh.
Теперь можно управлять сервисами, health checks и конфигурацией через обычный разговор с AI-ассистентом.
Сам Consul 1.22 получил поддержку IPv6 (требование для федеральных агентств США), улучшенную SSO-аутентификацию через private key JWT вместо client_secret, и расширенную телеметрию для IPv6-трафика.
#пульс_индустрии
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
Kubernetes считает контейнер живым, пока процесс не завершился. Приложение может зависнуть, тупить, инициализироваться 5 минут — Kubernetes всё равно отправит трафик.
Что происходит
Liveness probe проверяет, жив ли контейнер. Если нет — перезапускает. Readiness probe проверяет, готов ли контейнер принимать трафик. Если нет — убирает из Service.
Без readiness probe пользователи попадут на ещё не прогретое приложение. Получат таймауты, 500-е, странные ошибки. Вы будете часами искать баг, которого нет.
Как исправить:
livenessProbe:
httpGet:
path: /healthz
port: 8080
initialDelaySeconds: 30
periodSeconds: 10
readinessProbe:
httpGet:
path: /ready
port: 8080
initialDelaySeconds: 5
periodSeconds: 5
Добавьте в приложение два эндпоинта.
/healthz отвечает 200, если приложение работает. /ready отвечает 200, если приложение загрузилось и готово обрабатывать запросы.#арсенал_инженера
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
🍷 Wine: 32 бита на 64-битной системе
Вышла версия Wine 10.18. Основной фокус — доработка WoW64 режима, который позволяет запускать 32-битные Windows-приложения на 64-битной Linux-системе, имитируя нативный Windows WoW64 подсистему.
OpenGL теперь использует Vulkan для отображения в памяти в WoW64 режиме, добавлена поддержка SCSI pass-through, реализована API синхронизационных барьеров (нужна для некоторых игр, например The Obsessive Shadow), поддержка WinRT исключений. Плюс 30 багфиксов для приложений и игр.
➡️ Анонс
🐸 Библиотека devops'a
#пульс_индустрии
Вышла версия Wine 10.18. Основной фокус — доработка WoW64 режима, который позволяет запускать 32-битные Windows-приложения на 64-битной Linux-системе, имитируя нативный Windows WoW64 подсистему.
OpenGL теперь использует Vulkan для отображения в памяти в WoW64 режиме, добавлена поддержка SCSI pass-through, реализована API синхронизационных барьеров (нужна для некоторых игр, например The Obsessive Shadow), поддержка WinRT исключений. Плюс 30 багфиксов для приложений и игр.
#пульс_индустрии
Please open Telegram to view this post
VIEW IN TELEGRAM
Когда Вы копируете большую папку командой cp -r, Вы не видите, что происходит. Процесс может занять часы, а Вы сидите в неведении — копируется ли вообще? Сколько осталось? Если что-то пойдёт не так, часто нужно начинать заново.
rsync — это утилита для копирования и синхронизации файлов. Главное преимущество: показывает прогресс, сохраняет все атрибуты файлов и умеет возобновлять прерванные копирования.
Базовая команда:
rsync -av --progress /path/to/src/ /path/to/dest/
-a — архивный режим. Cохраняет права, временные метки, символические ссылки.-v — подробный вывод--progress — показывает прогресс для каждого файлаЕсли Вы копируете по сети на удалённый сервер, добавьте флаг -z для сжатия:
rsync -avz --progress /local/path/ user@server:/remote/path/
Если копирование прервалось, просто запустите ту же команду ещё раз — rsync пропустит уже скопированные файлы и продолжит с того же места.
#root@prompt
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
kubectl logs показывает логи только из работающих или недавно упавших контейнеров. Логи лежат на диске ноды. Контейнер удалился, нода перезагрузилась, логи ротировались — всё пропало.
Что происходит
Под упал ночью. Утром вы приходите разбираться — логов нет. Или под был в namespace с агрессивной политикой очистки. Или кто-то удалил Deployment.
В production это значит, что вы не узнаете, почему сервис лёг в 3 часа ночи.
Как исправить
Поднимите централизованное логирование. Fluentd или Fluent Bit собирают логи со всех подов и отправляют в хранилище — Elasticsearch, Loki, S3.
Пример sidecar с Fluent Bit:
containers:
- name: app
image: your-app:1.0
- name: fluent-bit
image: fluent/fluent-bit:latest
volumeMounts:
- name: varlog
mountPath: /var/log
Если нужна корреляция логов с метриками — добавьте OpenTelemetry. Если нужны трейсы — Jaeger. Но начните с простого: соберите логи в одном месте.
#арсенал_инженера
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4🥱1
🌐 Grafana Mimir 3.0
Вышла версия Grafana Mimir 3.0 — база данных временных рядов для метрик.
Главное изменение — разделение путей чтения и записи. Раньше один компонент отвечал за обе операции, поэтому тяжёлые запросы замедляли поступление новых данных. Теперь между ними встал Kafka как буфер, и каждый путь масштабируется независимо.
Вторая важная фишка — новый Query Engine для Mimir. Вместо загрузки всех данных в память, он обрабатывает выборку потоком и берёт только необходимые точки на каждом шаге.
➡️ Блог разработчиков
🐸 Библиотека devops'a
#пульс_индустрии
Вышла версия Grafana Mimir 3.0 — база данных временных рядов для метрик.
Главное изменение — разделение путей чтения и записи. Раньше один компонент отвечал за обе операции, поэтому тяжёлые запросы замедляли поступление новых данных. Теперь между ними встал Kafka как буфер, и каждый путь масштабируется независимо.
Вторая важная фишка — новый Query Engine для Mimir. Вместо загрузки всех данных в память, он обрабатывает выборку потоком и берёт только необходимые точки на каждом шаге.
#пульс_индустрии
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
Разработчик создаёт флаг для плавного выката новой фичи. Две недели максимум — думает он. Три месяца спустя флаг всё ещё живёт в кодовой базе. Теперь там две логики работы: старая и новая. Если что-то сломается, непонятно, что именно. Никто не удаляет флаг, потому что вдруг кто-то им пользуется.
Как это решить
Добавляем в каждый флаг срок жизни — дату, после которой он должен исчезнуть. Не данные флага, а сам код его обработки. И конвейер CI останавливает сборку, если срок прошёл.
new_feature_flag:
owner: web-platform
created: 2025-09-08
expires: 2025-11-01
После даты expires случается одно из двух:
• CI выдаёт предупреждение на третий день просрочки
• CI ломает сборку, если просрочка больше недели
Разработчик не может игнорировать проблему, потому что его коммиты просто не пройдут.
Проводите flag burn-down — 15-минутный митинг, где смотрите, какие флаги уже 100% включены в прод.
#арсенал_инженера
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1👍1
Команды копируют манифесты из dev в prod, чтобы было проще. Но в деве 2 реплики и 128Mi памяти хватает. В продц нужно 20 реплик и 2Gi памяти.
Что происходит
В dev запустили 10 реплик для теста — кластер упал. В prod оставили 2 реплики — сервис не держит нагрузку. Или забыли поменять ConfigMap с URL базы — prod подключился к dev-базе.
Как исправить
Используйте kustomize. Создайте base с общими настройками, а окружения описывайте в overlays:
base/
deployment.yaml
service.yaml
overlays/
dev/
kustomization.yaml
prod/
kustomization.yaml
В overlay переопределяете replicas, resources, ConfigMap, Secrets. В dev можете вообще не использовать Secrets — подойдёт mock-конфиг. В prod — настоящий Secret из Sealed Secrets или внешнего Vault.
#арсенал_инженера
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2👍1
Devuan выпустил шестую версию своего дистрибутива. Это операционная система для тех, кто предпочитает OpenRC или runit вместо systemd. Новая версия основана на Debian 13 Trixie и получит поддержку до конца жизненного цикла Debian — в течение нескольких лет.
Главное изменение — теперь обязателен merged-/usr, то есть директория /usr сливается с корневой директорией. Если обновляетесь со старых версий, нужно сначала установить пакет usrmerge в Daedalus, а потом уже переходить на Excalibur.
#пульс_индустрии
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2👍1
Знакомая ситуация: код запускается на ноутбуке, а в CI он сразу же ломается. Причина почти всегда в окружении — где-то не хватает переменной, токен истёк, или указан неправильный регион.
Перед тем как запустить джоб, убедитесь, что все критичные переменные на месте и имеют смысл:
# Проверяем, что все нужные переменные заданы
required=(DB_URL OAUTH_CLIENT_ID OAUTH_SECRET REGION)
for v in "${required[@]}"; do
[ -n "${!v}" ] || { echo "::error::$v missing"; exit 78; }
done
Добавьте это в начало вашего скрипта CI. Код проходит по списку переменных и падает, если какая-то не установлена.
#арсенал_инженера
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3
Open Source в действии: Runtime Radar — первый в России инструмент для защиты контейнерных сред на базе eBPF и Tetragon.
📆 11 ноября, 14:00 (МСК), онлайн, бесплатно
Контейнеры ускорили DevOps, но открыли новые векторы атак.
Узнай, как Runtime Radar помогает выявлять угрозы в реальном времени, расследовать инциденты и защищать Kubernetes без сложной настройки.
Что вас ждёт:
✅ демонстрация Runtime Radar в действии;
✅ интеграция в SOC и мониторинг кластеров;
✅ инсайды от команды PT о развитии проекта.
Open Source — код и документация доступны на GitHub.
Присоединяйтесь и сделайте свою контейнерную инфраструктуру прозрачной и защищенной.
👉🏻 Регистрация на вебинар
📆 11 ноября, 14:00 (МСК), онлайн, бесплатно
Контейнеры ускорили DevOps, но открыли новые векторы атак.
Узнай, как Runtime Radar помогает выявлять угрозы в реальном времени, расследовать инциденты и защищать Kubernetes без сложной настройки.
Что вас ждёт:
✅ демонстрация Runtime Radar в действии;
✅ интеграция в SOC и мониторинг кластеров;
✅ инсайды от команды PT о развитии проекта.
Open Source — код и документация доступны на GitHub.
Присоединяйтесь и сделайте свою контейнерную инфраструктуру прозрачной и защищенной.
👉🏻 Регистрация на вебинар
❤2
Kubernetes не удаляет ресурсы автоматически. Создали тестовый Deployment, Service, LoadBalancer — забыли удалить. Через месяц в кластере 50 неиспользуемых объектов.
Что происходит
Service с типом LoadBalancer создаёт внешний балансировщик в облаке. Вы платите за него каждый день. PersistentVolumeClaim держит диск, даже если под давно удалён. ConfigMap и Secret захламляют namespace.
Как исправить
Добавьте лейблы всем ресурсам:
metadata:
labels:
owner: team-backend
purpose: experiment
expires: 2025-11-15
Теперь можно найти всё, что создала команда:
kubectl get all -l owner=team-backend. Или всё, что просрочено.Настройте сборку мусора. Kubernetes удалит зависимые объекты, если удалить владельца.
Используйте Kyverno для автоматического удаления ресурсов.
Делайте аудит раз в неделю:
kubectl get all --all-namespaces. Ищите незнакомые имена, странные namespace. Удаляйте то, что не нужно.#арсенал_инженера
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3
SRE/DevOPS инженер до 500 000 ₽
Senior DevOps-инженер от 4700 до 5700 $
DevOps-инженер до 400 000 ₽
AppSec инженер на удалёнку
Бустер — Офис у вас дома.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔄 LXQt 2.3.0: больше поддержки Wayland и удобства в работе с файлами
Вышла новая версия LXQt — лёгкого десктопного окружения на основе Qt. Основной фокус релиза на улучшение работы с Wayland, протоколом, который постепенно заменяет X11.
В файловом менеджере PCManFM-Qt появилась функция Safely Remove для безопасного извлечения съёмных носителей, и теперь можно отключить подсказки при наведении на файлы на рабочем столе.
В целом это релиз для тех, кто работает на Wayland или просто хочет больше удобства в повседневной работе с ОС.
➡️ Release notes
🐸 Библиотека devops'a
#пульс_индустрии
Вышла новая версия LXQt — лёгкого десктопного окружения на основе Qt. Основной фокус релиза на улучшение работы с Wayland, протоколом, который постепенно заменяет X11.
В файловом менеджере PCManFM-Qt появилась функция Safely Remove для безопасного извлечения съёмных носителей, и теперь можно отключить подсказки при наведении на файлы на рабочем столе.
В целом это релиз для тех, кто работает на Wayland или просто хочет больше удобства в повседневной работе с ОС.
#пульс_индустрии
Please open Telegram to view this post
VIEW IN TELEGRAM
🎁 И мозг прокачать, и макбук утащить!
Proglib.academy разыгрывает MacBook Pro 14 (M3 Pro, 36 GB, 1 TB SSD) 💻
Условия:
1️⃣ Покупаешь любой курс Proglib до 15 ноября.
2️⃣ Проходишь минимум 2 учебные недели (можно осилить за два вечера).
3️⃣ Пишешь куратору в чат своего курса: #розыгрыш.
Что за курсы?
— Математика для Data Science (6 месяцев боли и просветления).
— Основы Python, ML, алгоритмы, AI-агенты и даже курс для тех, кто в IT, но не кодит.
👉 Участвовать в розыгрыше
Proglib.academy разыгрывает MacBook Pro 14 (M3 Pro, 36 GB, 1 TB SSD) 💻
Условия:
1️⃣ Покупаешь любой курс Proglib до 15 ноября.
2️⃣ Проходишь минимум 2 учебные недели (можно осилить за два вечера).
3️⃣ Пишешь куратору в чат своего курса: #розыгрыш.
Что за курсы?
— Математика для Data Science (6 месяцев боли и просветления).
— Основы Python, ML, алгоритмы, AI-агенты и даже курс для тех, кто в IT, но не кодит.
👉 Участвовать в розыгрыше
Команды сразу ставят Istio, Cilium, кастомные CNI. Хотят mTLS, продвинутый роутинг, observability из коробки. Но не понимают, как работает базовая сетка Kubernetes.
Что происходит
Под не может достучаться до другого пода. Вы не знаете, это проблема в CNI, в service mesh, в DNS, или в самом Kubernetes. Дебажите три дня, гуглите ошибки Istio. Потом удаляете Istio — всё работает.
Service mesh добавляет sidecar в каждый под, свой control plane, свои CRD. Каждый слой — новая точка отказа.
Как исправить
Начните с простого:
apiVersion: v1
kind: Service
metadata:
name: backend
spec:
selector:
app: backend
ports:
- port: 80
targetPort: 8080
Разберитесь, как поды находят друг друга через DNS. Как ClusterIP балансирует запросы. Как работает Ingress.
Когда поймёте базу, добавьте Ingress-NGINX для внешнего трафика.
#арсенал_инженера
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1