Библиотека девопса | DevOps, SRE, Sysadmin
10.4K subscribers
1.88K photos
76 videos
5 files
3.29K links
Все самое полезное для девопсера в одном канале.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/25874ec4

Для обратной связи: @proglibrary_feeedback_bot

РКН: https://gosuslugi.ru/snet/6798b4e4509aba56522d1787
Download Telegram
💻 Топ-вакансий для девопсов за неделю

Junior DevOps engineer — от 90 000 ₽, удалёнка

DevOps Engineer — до 300 000 ₽, офис в Санкт-Петербурге

Middle DevOps Engineer — до 6 000 $, удалёнка

➡️ Еще больше топовых вакансий — в нашем канале Devops Jobs

🐸Библиотека devops'a

#вакансия_недели
Please open Telegram to view this post
VIEW IN TELEGRAM
🔄 PowerShell 7.6 вышел с опозданием

Релиз PowerShell 7.6 запланировали намного раньше, а вышел он в марте 2026 года. Команда опубликовала разбор того, что пошло не так.

Суть проблем сводится к нескольким факторам. В октябре 2025 года в систему сборки внесли изменения, из-за которых сломался Alpine-пакет. Библиотека Microsoft.PowerShell.Native собиралась новым инструментом, несовместимым с Alpine.

Следом в ноябре добавились новые требования по комплаенсу: пришлось менять инструменты упаковки пакетов для не-Windows-платформ. Это сдвинуло выход исправлений с октября на декабрь.

В декабре вышел preview.6, но из-за заморозки изменений на праздники и ограниченной доступности ключевых людей не удалось опубликовать пакеты в PMC и NuGet.

В январе 2026-го всплыла ещё одна проблема: библиотека libpsl-native на RHEL 8 требовала сборки под glibc 2.28, а не 2.33, которую использовали для RHEL 9 и выше.

Команда честно признала системные сбои в процессе. Не было чёткого владельца релиза, не хватало структурированного отслеживания состояния, а замедление цикла preview-версий означало, что проблемы обнаруживались поздно, когда их исправление обходилось дороже.

Что теперь меняется: команда назначила явного ответственного за каждый релиз, настроила внутренний трекинг блокеров, восстанавливает регулярный график preview и упрощает систему сборки пакетов.

➡️ Блог разработчиков

📍 Навигация: ВакансииЗадачиСобесы

🐸 Библиотека devops'a

#разбор_полётов
Please open Telegram to view this post
VIEW IN TELEGRAM
👀 Просмотр истории команд в терминале

Если вы часто работаете в терминале, вы знаете это чувство: нужная команда была, но куда делась. Прокручивать весь history неудобно. Вот два простых bash-алиаса, которые решают эту проблему.

Последние N команд:
h() {
history | tail -n "$1"
}


Вызываете h 20 и получаете последние 20 команд.

Поиск по истории:
hg() {
history | grep "$1"
}


Когда помните только часть команды, hg docker или hg ssh быстро находит всё, что вы когда-либо запускали с этим словом.

Положите обе функции в ~/.bashrc или ~/.zshrc и перезагрузите конфиг:
source ~/.bashrc


📍 Навигация: ВакансииЗадачиСобесы

🐸 Библиотека devops'a

#root_prompt
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
Как и зачем эффективно интегрировать legacy-системы через Apache Kafka?

Ждем вас на открытом практикуме «Интеграция legacy-систем через Apache Kafka: быстрый старт без переписывания всего» от ОТУС! Расписание эфира:
• Проблема: почему просто переписать — это рискованно, а P2P-интеграции ведут к спагетти-архитектуре
• Решение: Apache Kafka как слой реального времени — обзор паттерна «труба и фильтры» для Legacy
• Разбор паттернов: как обмануть старую систему: дуалирование записи (Dual Writes) и чтение из журналов транзакций
• Дорожная карта: 3 шага к отказу от монолита с сохранением работоспособности старой системы (Strangler Fig Pattern)

Ведущий: Сергей Прощаев — ведущий инженер в компании ПАО «Сургутнефтегаз».
Бонусы для участников:
7% скидка на любой курс ОТУС
Доступ к бесплатному пробному периоду корпоративной платформы
Экспертные разборы по Kafka

Ссылка на регистрацию: https://clc.to/-YTpeg

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
🌐 Контроль сетевого трафика CI-runner'ов

У большинства команд нет никакой видимости того, что их CI-runner'ы делают в сети. Это серьёзная слепая зона.

Step Security выпустили GitHub Action, который логирует или блокирует исходящие соединения прямо во время билда.

Добавляется одним шагом в начало каждой джобы:
jobs:
build:
runs-on: ubuntu-latest
steps:
# Добавьте этот шаг ПЕРВЫМ в каждом job
- uses: step-security/harden-runner@v2
with:
egress-policy: audit # 'audit' только логирует, 'block' блокирует
allowed-endpoints: > # белый список разрешённых эндпоинтов
registry.npmjs.org:443
github.com:443
objects.githubusercontent.com:443

- uses: actions/checkout@v4
- run: npm ci
# Любое соединение с sfrclak.com теперь попадёт в логи безопасности


Два режима работы

В режиме audit Harden-Runner пишет в лог все исходящие соединения, ничего не блокируя. Это безопасный старт: билды не ломаются, но вы видите реальный сетевой профиль своего пайплайна.

Когда понимаете, какие соединения для вас нормальные, переключаетесь на block с белым списком. Любое неожиданное исходящее соединение сразу роняет билд.

Начните с audit, посмотрите на трафик неделю, потом переходите на block. Большинство легитимных билдов ходят в три-пять известных эндпоинтов, и белый список для них составляется за пять минут.

📍 Навигация: ВакансииЗадачиСобесы

🐸 Библиотека devops'a

#арсенал_инженера
Please open Telegram to view this post
VIEW IN TELEGRAM
2
🛠 Логирование с временными метками в bash-скриптах

Когда скрипт падает на проде в три ночи, первый вопрос: что именно произошло и в какой момент. Без логов остаётся только гадать.

Три функции вместо голого echo:
#!/bin/bash
set -euo pipefail

LOG_FILE="/var/log/myscript.log"

log() { echo "[INFO] $(date '+%H:%M:%S') $1" | tee -a "$LOG_FILE"; }
warn() { echo "[WARN] $(date '+%H:%M:%S') $1" | tee -a "$LOG_FILE"; }
error(){ echo "[ERROR] $(date '+%H:%M:%S') $1" | tee -a "$LOG_FILE"; exit 1; }

log "Script started"
warn "Config file missing, using defaults"
error "Database connection failed" # здесь скрипт остановится


Три уровня: log для обычных событий, warn для подозрительного, error для критического с немедленным выходом.

tee -a пишет одновременно в терминал и в файл. Флаг -a означает append, то есть каждый запуск дописывает в конец, а не перезаписывает лог с нуля.

📍 Навигация: ВакансииЗадачиСобесы

🐸 Библиотека devops'a

#root_prompt
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
Вопрос с собеса

ConfigMap обновлён. Что происходит дальше в работающем поде?


piVersion: v1
kind: ConfigMap
metadata:
name: app-config
data:
LOG_LEVEL: "info"
DB_POOL_SIZE: "10"


Вы меняете LOG_LEVEL на debug. Применяете через kubectl apply. Под работает, не перезапускался.

Приложение видит info или debug?

➡️ Ответ тут

📍 Навигация: ВакансииЗадачиСобесы

🐸 Библиотека devops'a

#задача_со_звёздочкой
Please open Telegram to view this post
VIEW IN TELEGRAM
🤖 Ваш ИИ-агент съедает бюджет на токены и падает при сбоях API?

Пора переходить на новый уровень. Открыли продажи курса по AgentOps — управлению ИИ-агентами в рабочих процессах.

Рынок требует инженеров, которые умеют:

• Контролировать метрики и качество ответов;
• Эффективно работать с RAG-архитектурой;
• Строить системы, готовые к реальным нагрузкам.

Обучение займет 6-12 недель под руководством практиков с опытом в AI и Data Science в крупных IT-компаниях, таких как Яндекс, Сбер, МТС, Huawei, Raft и др.

🎁 Можно подождать, пока про AgentOps начнут говорить все. Или зайти сейчас — НА 30% ДЕШЕВЛЕ!

Работа с AI начинается с систем.
Системы — с AgentOps.


🔥 Забрать скидку и изучить программу.
😁1
Пересаживаем технику на ПП — Правильное Питание

Первые в мире ПП-ИБП (как ЗОЖ, но для оборудования) делает Systeme Electric.

ПП-ИБП Systeme Electric с онлайн-топологией (нулевым временем переключения на батареи):

✓ Тотальный онлайн-ЗОЖ — онлайн Защита от Отключений Железа.
✓ Повышенная БЖУ — Бесперебойность Жизненно-важных Устройств. Тянут нагрузку в 150% от номинальной.
✓ Настоящий суперфуд для оборудования — высочайший КПД 95%.
✓ Самое полное ПП-меню — поддерживают все возможные интерфейсы и протоколы (EPO, SNMP, RS-485, RS-232, USB, RJ45/RJ11, EMBS).

Правильное электро-Питание — без перегрева, без риска перегрузить систему, с защитой от ВСЕХ возможных проблем (не только отключений, но и помех и скачков напряжения).

Systeme Electric — бывшее российское подразделение Schneider Electric, производителя легендарных бесперебойников APC. Лейбл новый — технологии и лучшая команда инженеров прежние, «эйписишные».

Гарантия целых 3 года — такую на свои APC не давал даже «Шнайдер» до ухода из РФ, а сейчас и вовсе 3-летней гарантии не найти: у «китайского электро-фастфуда» год, у «серозавезенных» APC оф. гарантии нет.

Поддержка круглосуточная, после 6 — можно!

ПП-ИБП Systeme Electric — потому что на здоровье техники не экономят!
1🌚1
🔄 Вышел Trisquel 12.0

Trisquel — это Linux дистрибутив без проприетарных компонентов, основанный на Ubuntu. Новый релиз получил несколько значимых обновлений.

Вышел Trisquel 12.0 с кодовым именем Ecne.

APT обновился до версии 3.0 с поддержкой формата репозиториев deb822. Обновление затронуло все пути установки: текстовый инсталлятор, графический Ubiquity, Synaptic и другие инструменты управления пакетами.

Trisquel Mini на базе LXDE получил заметные улучшения. Ubuntu официально отказалась от LXDE во всех своих релизах, так что Trisquel теперь фактически один из основных проектов, который его поддерживает.

Начата предварительная работа по поддержке архитектуры RISC-V.

➡️ Источник

📍 Навигация: ВакансииЗадачиСобесы

🐸 Библиотека devops'a

#пульс_индустрии
Please open Telegram to view this post
VIEW IN TELEGRAM
🦾 Надоело чинить «упавших» ИИ-агентов после каждого микросбоя внешних сервисов?

Анонсируем старт продаж большого курса по AgentOps. Мы собрали опыт десятков разработчиков и сделали программу, которая учит выводить ИИ в стабильный прод.

🗓 Ждем вас 28 апреля в 19:00 МСК на эфире: «Как эффективно управлять контекстным окном LLM в мультиагентных системах и не сливать бюджет на токены».

👉 Кто вещает и в чем польза?

Спикер Кирилл Кухарев (Senior AI Engineer в Raft, спикер AI Conf и Highload++). Он реализовал более 50 коммерческих проектов в GenAI и на вебинаре покажет, как взять под контроль работу нескольких агентов, чтобы они не перекидывали друг другу лишний контекст и не сжигали ваши деньги.

В прямом эфире разберем:
• Как формируется контекст в LLM при маршрутизации между агентами;
• Куда утекают лишние токены и возникает перерасход;
• Практические методы: как сжимать историю, грамотно делить задачи, лимитировать передачу контекста и собирать промпты прямо в процессе запроса пользователя.

🔥 Два способа получить максимум:

1. Приходите на вебинар 28 апреля. Дарим участникам промокод на 5.000 ₽ (работает 3 дня после эфира - это шанс забрать курс по самому низу рынка).

2. Выбирайте Инженерный трек. В подарок к нему идет полный доступ к записям и автопроверкам завершенного курса «Разработка ИИ-агентов».

👉 Занять место на вебинаре и стать профи в AgentOps
Please open Telegram to view this post
VIEW IN TELEGRAM
😁1
📎 Bash-функции, которые ускорят работу в терминале

Разработчики проводят в терминале много времени. Часть этого времени уходит на мелкие, повторяющиеся действия: создать папку, зайти в неё, найти файл где-то в дереве проекта. Несколько простых функций в .bashrc или .zshrc убирают эти паузы.

Создать папку и сразу зайти в неё:
mkcd() {
mkdir -p "$1" && cd "$1"
}


Флаг -p создаёт все промежуточные директории, если их нет. Работает с вложенными путями без дополнительных усилий.

Подняться на несколько уровней вверх:
up() {
local d=""
for ((i=1;i<=$1;i++)); do
d+="../"
done
cd "$d"
}


Если вы глубоко внутри проекта, up 3 заменяет cd ../../... Не нужно считать точки и слэши вручную. Просто передаём число уровней.

Найти файл по имени:
ff() {
find . -type f -iname "*$1*"
}


Обёртка над find с поиском без учёта регистра. Удобно, когда помним часть имени файла, но не знаем точный путь. В больших репозиториях работает быстрее, чем ручная навигация.

Найти директорию по имени:
fd() {
find . -type d -iname "*$1*"
}


То же самое, но ищет только директории. Заменяет несколько попыток cd с угадыванием пути.

Как подключить

Добавьте функции в конец файла ~/.bashrc или ~/.zshrc, затем выполните:
source ~/.bashrc


После этого функции доступны в любом новом терминале.

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

📍 Навигация: ВакансииЗадачиСобесы

🐸 Библиотека devops'a

#root_prompt
Please open Telegram to view this post
VIEW IN TELEGRAM
3🤔2👍1🎉1
🔒 Закрыли пять уязвимостей, которым десятки лет

Вышел X.Org Server 21.1.22 и xwayland 24.1.10. Основное в этом релизе это патчи безопасности. Их пять, и часть из них закрывает баги, которые живут в коде с 2001 года.

Уязвимости опасны прежде всего там, где X-сервер запущен с правами root, или там, где пользователю доступна переадресация X11 через SSH.

Что закрыли:

CVE-2026-34001 — use-after-free в функции miSyncTriggerFence(). Баг появился в xorg-server 1.9.0 в 2010 году.

CVE-2026-33999 — integer underflow в XkbSetCompatMap(), позволяет читать или писать за пределы буфера при определённых параметрах клавиатурного расширения. Присутствует с X11R6.6, то есть с 2001 года.

CVE-2026-34000 — чтение за пределами буфера в XkbAddGeomKeyAlias из-за некорректной проверки длины входных данных. Появилось в xorg-server 21.1.4 и xwayland 22.1.3 в 2022 году.

CVE-2026-34002 — чтение за пределами буфера в CheckModifierMap(), причина — неверная проверка длины модификаторов при нестандартном числе поддерживаемых устройств. Тоже с 2001 года.

CVE-2026-34003 — некорректная логика в CheckKeyTypes() в XKB, ведёт к чтению за пределами буфера из-за неверной проверки размера массива элементов. С 2001 года.

Обновление стоит поставить тем, кто использует X-сервер с повышенными привилегиями или разрешает пользователям X11-forwarding по SSH.

➡️ Источник

📍 Навигация: ВакансииЗадачиСобесы

🐸 Библиотека devops'a

#пульс_индустрии
Please open Telegram to view this post
VIEW IN TELEGRAM
🏃‍♀️ Уже завтра стартует курс по разработке AI-агентов.

Про AI-агентов часто думают, что это просто модная обертка над джпт для пет-проектов. Кажется, прикрутил API к скрипту и типа готово. А вот и нет! Когда дело доходит до прода, начинаются настоящие проблемы.

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


Эту инженерную часть мы и будем разбирать на курсе. Будем учиться интегрировать внешние API, работать с RAG, LangGraph, CrewAI и деплоить всё это так, чтобы работало как часы.

Стартуем завтра. Для участия и доступа к программе переходите по ссылке.
👨‍💻 В Linux 7.1 удалят поддержку процессоров i486

В ветку Linux 7.1 принят патч, который убирает из ядра поддержку архитектуры i486. Из Kconfig исчезнут опции CONFIG_M486, CONFIG_M486SX и CONFIG_MELAN, а из Makefile уберут флаг компиляции -march=i486.

Сами процессоры i486 перестали производить ещё в начале 2000-х. Поддержка их в ядре держалась только благодаря инерции, но технически она давно стала проблемой. i486 не умеет выполнять инструкции для атомарного обмена 8 байт и не имеет счётчика тактов процессора, нужного планировщику.

➡️ Источник

📍 Навигация: ВакансииЗадачиСобесы

🐸 Библиотека devops'a

#пульс_индустрии
Please open Telegram to view this post
VIEW IN TELEGRAM
👨‍💻 Vercel взломали

19 апреля 2026 года Vercel признались, что кто-то получил несанкционированный доступ к внутренним системам компании.

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

Пока неизвестно, что именно утекло и как злоумышленники попали внутрь. Но Vercel уже дали всем клиентам одну конкретную рекомендацию: проверьте переменные окружения и переведите чувствительные данные в режим Sensitive Environment Variables.

📍 Навигация: ВакансииЗадачиСобесы

🐸 Библиотека devops'a

#разбор_полётов
Please open Telegram to view this post
VIEW IN TELEGRAM