Библиотека девопса | DevOps, SRE, Sysadmin
10.2K subscribers
1.47K photos
73 videos
4 files
2.68K links
Все самое полезное для девопсера в одном канале.

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

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

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

РКН: https://gosuslugi.ru/snet/6798b4e4509aba565
Download Telegram
⚡️ Охота за дубликатами файлов

Иногда на диске копятся одинаковые файлы — архивы, фото, бэкапы. rdfind помогает находить такие дубликаты по содержимому, а не только по имени.

Как работает:

1.Сначала сортирует файлы по размеру.
2. Сверяет первые и последние байты.
3. Проверяет контрольные суммы.
4. Находит клоны и решает, какой оставить «оригиналом».

Примеры:
# Поиск дубликатов в папке ~/Documents
# Ничего не удаляет — только отчёт
rdfind -dryrun true ~/Documents


# Ищет дубликаты в ~/Pictures и заменяет их на hardlink-и
rdfind -makehardlinks true ~/Pictures


Удаление дублей:
rdfind -deleteduplicates true ~/Downloads


Лучшее применение: чистка фотоархивов, бэкапов, NAS-хранилищ. Сначала тестируйте в dry-run, а потом смело освобождайте гигабайты.

➡️ Удалить дубликаты

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

#root@prompt
Please open Telegram to view this post
VIEW IN TELEGRAM
1
🐳 Docker Desktop 4.46

Docker представил новую версию Desktop тихими обновлениями. Теперь компоненты вроде Docker Compose, Scout, Ask Gordon и Model Runner обновляются в фоне без лишних уведомлений и без прерывания работы.

Обновление уже доступно и будет постепенно раскатываться на всех.

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

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

#пульс_индустрии
Please open Telegram to view this post
VIEW IN TELEGRAM
2👍1
🚨 CI/CD как точка входа

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

Один из наших подписчиков спрашивает:
Какая вообще главная дыра в безопасности CI/CD-пайплайнов? Я слышал, что через них можно уронить всю инфраструктуру.

На наш взгляд, самой частой и критичной дырой остаются секреты и права. Очень часто встречаются жёстко прописанные токены или ключи, которые живут годами, а ещё сервисным аккаунтам зачем-то дают права «бог-режима». В результате одно утекшее значение открывает атакующему все двери.

💬 Как вы думаете, что в пайпах самое небезопасное?

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

#dev_null
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥 Не пропустите событие осени для AI-комьюнити

24 сентября, 19:00 Мск — бесплатный вебинар с Максимом Шаланкиным «ИИ-агенты: новая фаза развития искусственного интеллекта»

😤 Пока все спорят, «боты это или нет», мы покажем, как работают настоящие агенты: с планированием, инструментами и памятью. За час Максим разберёт:
— почему ИИ-агенты сейчас на пике инвестиций
— чем они отличаются от ChatGPT и обычных моделей
— цикл агента: восприятие → планирование → действие → обучение
— живое демо простого агента
— как бизнес уже получает ROI до 80%

⚡️ Хотите спросить у Максима всё, что обычно остаётся «за кадром»? Ловите шанс — только в прямом эфире.

Мест мало, регистрация закроется, как только забьём комнату
🔄 Как перестать тратить ресурсы CI/CD впустую

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

В GitHub Actions удобно использовать стандартные триггеры или dorny/paths-filter: он проверяет diff и включает лишь нужные джобы. Меняли api/ — запускается сборка API. Вносили правки в web/ — прогоняются тесты фронтенда. Тронули infra/** — стартует деплой инфраструктуры. Всё остальное CI просто пропускает.

Пример:
# .github/workflows/ci.yaml
name: CI

on:
pull_request:
paths:
- "api/**"
- "web/**"
- "infra/**"
push:
branches: [ main ]
paths:
- "api/**"
- "web/**"
- "infra/**"

jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: echo "Собираем, потому что изменились файлы из paths"


В GitLab этот механизм встроен в rules:changes. Можно настроить как отдельные jobs, так и дочерние пайплайны для разных модулей. Например, API живёт своей жизнью, фронтенд — своей, а объединяет их только Merge Request.

Пример:
stages: [build, test, deploy]

build_api:
stage: build
rules:
- changes:
- api/**
- package.json # глобальный файл, влияющий на сборку API
when: on_success
- when: never
script:
- echo "Build API"; # ваши шаги

test_web:
stage: test
rules:
- changes:
- web/**
- package.json
when: on_success
- when: never
script:
- echo "Test Web"

deploy_infra:
stage: deploy
rules:
- if: $CI_COMMIT_BRANCH == "main"
changes:
- infra/**
- .gitlab-ci.yml
when: on_success
- when: never
script:
- echo "Deploy Infra"


Не забывайте добавлять в фильтры и глобальные файлы — вроде package-lock.json или .gitlab-ci.yml. Они влияют на весь проект, и пропускать их опасно.

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

#арсенал_инженера
Please open Telegram to view this post
VIEW IN TELEGRAM
6👍2
👀 Наглядно про CI\CD

Нашли для вас инфографику по тому, какой инструмент за что отвечает в стандартном CI\CD процессе.

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

#архитектура_на_салфетке
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4🥱1
🤩 ТОП-9 популярных AI-агентов для разработки

ИИ-агенты перестали быть экспериментом и превратились в полноценный инструмент для разработчиков. Они пишут код, проверяют ошибки, помогают с архитектурой и ускоряют рутинные задачи.

К 2025 году сформировался список решений, которые стали самыми востребованными в работе программистов. Одни берут скоростью, другие — точностью, третьи — умением интегрироваться в экосистему команды.

➡️ Выбрать своего агента

🐸Библиотека devops'a
Please open Telegram to view this post
VIEW IN TELEGRAM
1
Сегодня премьера

В 19:00 МСК стартует бесплатный вебинар с Максимом Шаланкиным«ИИ-агенты: новая фаза развития искусственного интеллекта».

В программе:
— почему агенты ≠ чат-боты;
— живое демо простого агента;
— и как эта тема встроена в курс, который разработан под руководством Никиты Зелинского.

Это прямой эфир: подключиться можно через лендинг курса.
Приложение в Pod стартует ~60 сек. Во время деплоя Pod попадает в CrashLoopBackOff: livenessProbe срабатывает раньше, чем сервис успевает подняться. Что сделать правильно?

👾 — Увеличить только readinessProbe и оставить livenessProbe как есть
👍 — Ввести startupProbe, чтобы до инициализации блокировать livenessProbe, а после — оставить строгую livenessProbe/readinessProbe
🥰 — Поставить restartPolicy: Never, чтобы Pod не перезапускался
⚡️ — Добавить initContainer с sleep 60 и не трогать пробы

Библиотека задач DevOps
👍19🥰1
😏 Быстрое переключение контекстов в Kubernetes

Когда работаете с Kubernetes, всегда приходится переключаться между кластерами — dev, staging, test, pre-prod, prod.
И каждый раз вводить длинное kubectl config use-context ... не только утомительно, но и чревато опечатками. За день такие мелочи могут отнять много времени.

Решение — небольшая утилита kubectx. Она делает переключение контекстов быстрым и удобным:
kubectx staging
kubectx prod
kubectx -


В паре с ней идёт kubens — тот же принцип, но для неймспейсов.

Итог: меньше рутины, выше скорость и меньше шансов ошибиться на боевых окружениях.

➡️ Переключить контекст

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

#арсенал_инженера
Please open Telegram to view this post
VIEW IN TELEGRAM
1
🔄 Rufus 4.10: тёмная тема и новые фишки

Вышел свежий релиз популярного USB-утилиты Rufus 4.10. Теперь доступен тёмный режим, добавлена поддержка создания загрузочных носителей для Windows CA 2023, а также возможность сохранять существующий диск в ISO. Переработано отображение ошибок при сохранении в VHD/VHDX, исправлены баги с ISO и долгими путями.

➡️ Затестить обновление

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

#пульс_индустрии
Please open Telegram to view this post
VIEW IN TELEGRAM
2👍1
Если слова «файловое хранилище на HighLoad», «автоматизация репозиториев» и «философия DevOps» заставляют ваше сердце биться чаще, то 2 октября — ваш день! 🚀

Wildberries & Russ запускают свой первый инфраструктурный митап в Москве (и онлайн!). Здесь соберутся те, кто строит и поддерживает мир, который мы не замечаем, пока он работает.

Что в программе:

🟣Иван Волков (CTO CDN Wildberries): «Файловое хранилище Wildberries: бескомпромиссный HighLoad»

Как устроена система, которая выдерживает 1.2+ миллиона RPS на выдачу фото и видео? Иван поделится секретами органического подхода к разработке и покажет, что для Wildberries это далеко не предел. Готовьтесь к порции чистого хардкора!


🟣Владислав Раев (DevOps & DevTools Engineer): «Путь автоматизации репозиториев в Nexus»

«Автоматизация без стандартизации — путь в никуда» — знакомо? Владислав разберёт типичные ловушки: почему то, что работало для 10 репозиториев, ломается на 100, и как меньше состояния ведет к меньшему количеству проблем. Спойлер: явное всегда лучше неявного.


🟣Александр Стовбунский (Tools Team TechLead): «У вас завелся сервис: рекомендации лучших сервисоводов (наверное)»

Метафора про «Пап, можно мы его оставим?» — это про те самые сервисы, которые кто-то принёс, а чинить и выгуливать приходится вам. Александр расскажет, как считать трудозатраты, не дать сервису «вырасти большим» и поделится вредными советами, как гарантированно всё испортить. Будет больно, но смешно и правдиво!


После докладов — продуктивный нетворкинг и афтерпати.

2 октября, сбор с 18:00 МСК

👉 Зарегистрироваться

Реклама. ООО «АРХИТЕКТОРЫ БУДУЩЕГО», ИНН 3662286029. Erid 2VtzqwECxkL
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2🔥1
🍑 Автоматизация как ловушка

Мы любим автоматизацию.
CI/CD, Terraform, Helm, GitOps — список бесконечный.

Но есть проблема: автоматизация сама по себе не всегда = улучшение процесса.
Иногда она экономит часы работы и снижает количество ошибок.
А иногда — рождает монстра из пайплайнов, который ломается при каждом чихе.

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

💬 Как вы оцениваете, что автоматизация действительно улучшает процесс, а не превращается в игрушку для инженеров?

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

#холиварня
Please open Telegram to view this post
VIEW IN TELEGRAM
👍 Дуо вкусных вакансий

Почасовой DevOps/MLOps Engineer — до 3000 ₽ в час.

DevOps Engineer со ставкой от 350 тыс. ₽.

➡️ Еще больше вакансий — в нашем канале Вакансии по DevOps & SRE
Please open Telegram to view this post
VIEW IN TELEGRAM
🤫 Курс «ИИ-агенты для DS-специалистов»

Каждый технологический скачок оставляет позади тех, кто «подождал ещё чуть-чуть». ИИ-агенты — это новый рывок.

Уже через пару лет именно они будут драйвить аналитику и автоматизацию. Хотите остаться на гребне?

🖥️ На курсе «ИИ-агенты для DS-специалистов» мы разберём:

— создание AI-агентов с нуля
— сборку собственной RAG-системы
— интеграцию LLM под задачи бизнеса

📌 Курс подходит:

→ ML/AI инженерам (middle+ / senior)
→ Data Scientists
→ Backend и platform-инженерам
→ Advanced CS/DS студентам

⚡️ Старт уже скоро — 3 октября.

💰 До 28 сентября действует скидка — 57.000 ₽ вместо 69.000 ₽ (по промокоду datarascals).

🔗 Узнать больше о курсе и записаться

З.ы. если вы не успели на вебинар «ИИ-агенты: новая фаза развития искусственного интеллекта» — запись уже доступна
💥 Jenkins снова под прицелом

Представьте: вы открываете Jenkins, даже не авторизовавшись, и видите список агентов, их ОС, состояние очереди и подключённость. Именно так работала страница /securityRealm/signup до версии 2.528.

Почему так вышло

Jenkins когда-то включил туда стандартную боковую панель, а в ней отображались статусы билдов. Никто не заметил, что даже неавторизованный пользователь может глянуть в кухню CI/CD.

Как нашли

Исследователь просто прошёл по URL, получил ответ и увидел всю внутреннюю картину — идеальный старт для атакующего:

— имена агентов → подсказка для lateral movement,
— ОС узлов → выбор эксплойтов,
— статус очереди → понимание нагрузки системы.

В Jenkins 2.528 и LTS 2.516.3 разработчики вычистили include боковой панели из signup.jelly. Теперь любопытный глаз ничего лишнего не увидит.

Иногда уязвимости рождаются не из сложной криптографии, а из банального. Проверяйте даже мелкие шаблоны — иначе ваш CI/CD раскроет инфраструктуру до единого узла.

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

#разбор_полётов
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍1👾1
🚦 Ускоряем GitLab CI/CD

Обычный пайплайн в GitLab идёт «ступеньками»: сначала build, потом test, потом deploy. Даже если задачи никак не связаны, они будут терпеливо ждать друг друга. В итоге лишние минуты и часы простаивания.

Вместо жёстких стадий можно описать зависимости между стадиями. В GitLab CI это называется DAG — Directed Acyclic Graphs.

Например:

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

Выглядит это так:
unit-tests:
stage: test
needs: [ "build-job" ]
script: make test

lint:
stage: test
script: make lint

deploy:
stage: deploy
needs: [ "unit-tests", "lint" ]
script: make deploy


DAG превращает ваш CI/CD из очереди в автомагистраль. Если у вас много джобов — самое время пересмотреть пайплайн.

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

#арсенал_инженера
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1