Откуда в девопс пришли вы?
❤️ — Сисадмин
🔥 — Программист
📍 Навигация: Вакансии • Задачи • Собесы
#лучшее_из_библиотеки_2025
Please open Telegram to view this post
VIEW IN TELEGRAM
❤44🔥17👾5
Осенью мы разбирали эту тему. Повторяем для тех, кто пропустил, и добавляем пару нюансов.
Проблема
Distroless-образы — это минимализм: только приложение и рантайм. Никакого
bash, curl, apt. Меньше размер, меньше уязвимостей, быстрее деплой.Но когда что-то падает — привычный
kubectl exec -it pod -- bash не работает. Шелла просто нет.Решение: эфемерные контейнеры.
Kubernetes умеет подключать временный контейнер к работающему Pod без рестарта:
kubectl debug pod/my-app -it --image=busybox --target=my-container
Эфемерный контейнер делит namespace с приложением — видит его файлы, процессы, сеть. После выхода исчезает.
Для серьёзной отладки лучше взять образ потяжелее:
kubectl debug pod/my-app -it --image=nicolaka/netshoot --target=my-container
netshoot — швейцарский нож для сетевой диагностики: curl, dig, tcpdump, iperf, nmap и ещё 40+ утилит из коробки.📍 Навигация: Вакансии • Задачи • Собесы
#лучшее_из_библиотеки_2025
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15
Стас перенёс две операции на мозге. Сейчас восстанавливается. Параллельно учит C++, собирает портфолио, откликается на вакансии. История о том, что обстоятельства — не приговор.
📍 Навигация: Вакансии • Задачи • Собесы
Please open Telegram to view this post
VIEW IN TELEGRAM
Kubernetes v1.35 сделал стабильным поле .spec.managedBy в джобах. Теперь внешние контроллеры полностью берут на себя согласование заданий, отключая встроенный контроллер заданий. Это открывает межкластерное планирование через MultiKueue.
Управляющий кластер распределяет задания в рабочие кластеры, копируя статус обратно. Пользователи видят прогресс в реальном времени без доступа к рабочим узлам.
Встроенный контроллер пропускает задания с managedBy, оставляя стандартные нетронутыми. Поле неизменяемое, чтобы избежать осиротевших подов.
📍 Навигация: Вакансии • Задачи • Собесы
#пульс_индустрии
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2
🔨 Как не сломать продакшен: 8 основных паттернов распределенных систем
Тогда мы делились статьей про восемь паттернов, которые помогают держать продакшен живым в распределенных системах.
Вспомнили про нее сейчас, потому что в праздники обычно дежурства, релизы и меньше людей на подхвате. Так что хороший момент обновить в голове базу.
➡️ Вспомнить паттерны
📍 Навигация: Вакансии • Задачи • Собесы
🐸 Библиотека devops'a
#лучшее_из_библиотеки_2025
Тогда мы делились статьей про восемь паттернов, которые помогают держать продакшен живым в распределенных системах.
Вспомнили про нее сейчас, потому что в праздники обычно дежурства, релизы и меньше людей на подхвате. Так что хороший момент обновить в голове базу.
📍 Навигация: Вакансии • Задачи • Собесы
#лучшее_из_библиотеки_2025
Please open Telegram to view this post
VIEW IN TELEGRAM
Мы уже делились похожей подборкой с практикой для DevOps и Linux. Сейчас просто самое время достать ее снова, потому что на длинных выходных проще спокойно позаниматься без рабочих митингов.
• Linux Upskill Challenge — челленджи для прокачки навыков работы с Linux.
• OverTheWire Wargames — игровые задания по безопасности и Linux.
• AWS Workshops — интерактивные воркшопы по AWS и DevOps.
• KodeKloud Free Labs — бесплатные лабораторные работы для практики DevOps.
• Sad Servers Scenarios — сценарии для тренировки администрирования.
• Iximiuz Labs — практические задания для DevOps и безопасности.
• DevOps Upskill Challenge — проекты и упражнения для изучения DevOps.
• Engineer KodeKloud Practice — практические задачи по DevOps и облачным технологиям.
• Cloud Resume Challenge — интересный проект по облачным навыкам и инфраструктуре.
• Learn Git Branching — интерактивное обучение Git.
• Play with Docker Labs — sandbox для экспериментов с Docker.
• Kubernetes Goat — тренажёр для изучения Kubernetes.
• DevOps Exercises by Bregman Arie — набор упражнений для практики.
• DevOps Daily — ежедневные задачи и новости DevOps.
• SRE Bootcamp Exercises — упражнения для SRE-инженеров.
📍 Навигация: Вакансии • Задачи • Собесы
#лучшее_из_библиотеки_2025
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
Через 6 лет разработки фича In-Place Pod Resize вышла в GA. Меняйте CPU и память в запущенных подах без рестартов.
spec.containers[].resources теперь желаемые ресурсы, status.containerStatuses[].resources показывает реальные. Запуск через resize subresource.Государственные сервисы, батч-задачи и чувствительные к задержкам нагрузки получают вертикальное масштабирование без простоя.
📍 Навигация: Вакансии • Задачи • Собесы
#пульс_индустрии
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8
SRE-агенты: автоматизация, о которой ты мечтал
Пока ты дежуришь в праздники, ИИ-агенты могут мониторить логи, выявлять аномалии и даже предлагать фиксы. Будущее DevOps в 2026-м — это оркестрация не только контейнеров, но и автономных агентов.
На курсе по AI-агентам мы научим:
— использовать паттерн
— оркестровать процессы в
— внедрять протокол
— строить продвинутый
Выныривай из рутины. До 12 января действует акция «3 в 1»: курс по ИИ-агентам + 2 курса в подарок.
Стать AI-DevOps инженером
Пока ты дежуришь в праздники, ИИ-агенты могут мониторить логи, выявлять аномалии и даже предлагать фиксы. Будущее DevOps в 2026-м — это оркестрация не только контейнеров, но и автономных агентов.
На курсе по AI-агентам мы научим:
— использовать паттерн
ReAct для принятия решений агентами в инфраструктуре;— оркестровать процессы в
n8n для связки систем мониторинга и LLM;— внедрять протокол
MCP для обмена данными между инструментами;— строить продвинутый
RAG по документации и логам.Выныривай из рутины. До 12 января действует акция «3 в 1»: курс по ИИ-агентам + 2 курса в подарок.
Стать AI-DevOps инженером
👍3
Мы уже показывали этот прием раньше, а сейчас напоминаем, потому что он отлично выручает, когда надо проверить API без браузера и лишних тулзов. Смысл простой,
curl делает запрос и печатает только время выполнения через переменную time_total.Пример:
curl -s -w "%{time_total}\n" -o /dev/null https://example.comОпция
-s делает режим silent без прогресс бара, а -o /dev/null выкидывает тело ответа, чтобы оно не мешало замеру. А -w или write out форматирует вывод и подставляет time_total, то есть общее время операции в секундах с дробной частью.📍 Навигация: Вакансии • Задачи • Собесы
#лучшее_из_библиотеки_2025
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
SRE мечты в 2026-м: когда инциденты фиксит ИИ-агент
Пока вы празднуете, ваша мультиагентная система на базе
На курсе научим:
— внедрять паттерн
— использовать
— строить
Проведите 2026 год спокойно.
🔥 До 12 января акция «3 в 1» — курс по ИИ-агентам + 2 курса в подарок.
Автоматизировать дежурства
Пока вы празднуете, ваша мультиагентная система на базе
n8n может анализировать аномалии в Kubernetes и предлагать исправления. В 2026-м DevOps — это не только YAML, но и управление агентами.На курсе научим:
— внедрять паттерн
ReAct для автономного траблшутинга;— использовать
MCP для связи агентов с вашим тулчейном;— строить
RAG по логам и документации проекта.Проведите 2026 год спокойно.
🔥 До 12 января акция «3 в 1» — курс по ИИ-агентам + 2 курса в подарок.
Автоматизировать дежурства
Сообщество etcd нашло неприятный баг: при апгрейде с v3.5 на v3.6 в кластере могут воскреснуть «зомби-участники» — узлы, которые давно удалили, но они внезапно возвращаются и ломают консенсус.
Безопасный путь обновления:
1. Сначала обновиться до etcd v3.5.26+
2. Убедиться, что все узлы здоровы
3. Только потом переходить на v3.6
📍 Навигация: Вакансии • Задачи • Собесы
#пульс_индустрии
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
Контейнер с VS Code можно перенести на другой компьютер или сервер. Это особенно полезно, если вы работаете на разных машинах или хотите поделиться настроенным окружением с командой.
Как настроить Visual Studio Code в Docker
Для настройки можно использовать гайд из статьи. Вот краткое руководство:
1. Создайте файл Dockerfile со следующим содержимым:
FROM ubuntu:latest
# Install prerequisites
RUN apt-get update && apt-get install -y \
curl \
wget \
sudo \
build-essential
# Install Code-Server (VS Code in the browser)
RUN curl -fsSL https://code-server.dev/install.sh | sh
# Expose port for Code-Server
EXPOSE 8080
# Start Code-Server on container launch
CMD ["code-server", "--bind-addr", "0.0.0.0:8080", "--auth", "none"]
2. Запустите контейнер и откройте порт 8080 для доступа
3. Откройте браузер и перейдите по адресу http://localhost:8080. Здесь вы сможете работать в Visual Studio Code.
📍 Навигация: Вакансии • Задачи • Собесы
#лучшее_из_библиотеки_2025
Please open Telegram to view this post
VIEW IN TELEGRAM
С каждой новостью про Windows 11 этот мем всё более и более актуальный🤩
📍 Навигация: Вакансии • Задачи • Собесы
🐸 Библиотека devops'a
#лучшее_из_библиотеки_2025
📍 Навигация: Вакансии • Задачи • Собесы
#лучшее_из_библиотеки_2025
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6😁4
Фича, которую ждали все, кто управляет гетерогенными кластерами:
--config-dir теперь стабилен.Вместо одного монолитного конфига kubelet теперь можно разложить настройки по файлам в директории. Kubelet сам их смержит в нужном порядке.
Как это работает:
/etc/kubernetes/kubelet.conf.d/
├── 00-base.conf # базовые настройки для всех нод
├── 50-gpu-nodes.conf # оверрайды для GPU-нод
├── 50-edge-nodes.conf # оверрайды для edge-нод
└── 99-experimental.conf # тестовые фичи
Файлы применяются в алфавитном порядке — поэтому числовые префиксы.
Как посмотреть итоговый конфиг:
kubectl proxy &
curl http://127.0.0.1:8001/api/v1/nodes/<node>/proxy/configz | jq
📍 Навигация: Вакансии • Задачи • Собесы
#пульс_индустрии
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
⚡️ Redis — не единственный: 3 альтернативы, которые стоит знать
Redis отлично справляется с кэшированием, хранением сессий и очередями сообщений. Но иногда другие инструменты подходят лучше.
🐉 Dragonfly
Современный drop-in replacement для Redis с акцентом на производительность. Использует многопоточную архитектуру и вертикальное масштабирование — один инстанс Dragonfly может заменить кластер Redis.
Когда выбрать: высоконагруженные системы, где важна экономия ресурсов. Совместим с Redis API, миграция минимальна.
🔑 KeyDB
Форк Redis с многопоточностью «из коробки». Развивается Snap и сохраняет полную совместимость с Redis, включая Lua-скрипты и модули.
Когда выбрать: нужна производительность выше Redis, но без смены стека. Особенно хорош для active-replica сценариев.
💾 Memcached
Ветеран in-memory кэширования. Делает одну вещь — и делает её хорошо. Минимум накладных расходов, предсказуемая latency.
Когда выбрать: чистое кэширование без pub/sub, персистентности и сложных структур данных. Проще в эксплуатации, меньше потребляет памяти на единицу данных.
📍 Навигация: Вакансии • Задачи • Собесы
🐸 Библиотека devops'a
#лучшее_из_библиотеки_2025
Redis отлично справляется с кэшированием, хранением сессий и очередями сообщений. Но иногда другие инструменты подходят лучше.
🐉 Dragonfly
Современный drop-in replacement для Redis с акцентом на производительность. Использует многопоточную архитектуру и вертикальное масштабирование — один инстанс Dragonfly может заменить кластер Redis.
Когда выбрать: высоконагруженные системы, где важна экономия ресурсов. Совместим с Redis API, миграция минимальна.
🔑 KeyDB
Форк Redis с многопоточностью «из коробки». Развивается Snap и сохраняет полную совместимость с Redis, включая Lua-скрипты и модули.
Когда выбрать: нужна производительность выше Redis, но без смены стека. Особенно хорош для active-replica сценариев.
💾 Memcached
Ветеран in-memory кэширования. Делает одну вещь — и делает её хорошо. Минимум накладных расходов, предсказуемая latency.
Когда выбрать: чистое кэширование без pub/sub, персистентности и сложных структур данных. Проще в эксплуатации, меньше потребляет памяти на единицу данных.
📍 Навигация: Вакансии • Задачи • Собесы
#лучшее_из_библиотеки_2025
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2❤1
Фича, которая закрывает неочевидную дыру в безопасности — теперь стабильна.
Kubernetes по умолчанию мержит группы из Pod-манифеста с группами из /etc/group внутри образа контейнера. Это происходит неявно.
Пример: вы указали в Pod
runAsUser: 1000, supplementalGroups: [4000]. Запускаете id — а там ещё и группа 50000, которую вы не указывали. Откуда? Из /etc/group в образе, где пользователь 1000 состоит в этой группе.Решение — новое поле supplementalGroupsPolicy:
spec:
securityContext:
runAsUser: 1000
runAsGroup: 3000
supplementalGroups: [4000]
supplementalGroupsPolicy: Strict # ← вот оно
Бонус: теперь в
status.containerStatuses[].user.linux видно реальные UID/GID процесса — можно аудитить.📍 Навигация: Вакансии • Задачи • Собесы
#пульс_индустрии
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
💻 Простая команда для контейнеров
Возвращаемся к теме — базовая вещь, но новички часто спотыкаются. Собираете образ, запускаете — а контейнер не может сходить по HTTPS.
Один RUN в Dockerfile, который и обновляет, и защищает, и чистит. Делайте так и забудьте про SSL-ошибки и мусор в образах:
Разбираем пошагово:
1.
Обновляет кэш доступных пакетов. Это обязательно перед установкой любого ПО через apt-get, иначе система не узнает о последних версиях.
2.
Устанавливает набор корневых SSL-сертификатов удостоверяющих центров (CA), которым система может доверять. Без них HTTPS-соединения могут не работать — будь то curl, wget, git clone, или подключение к внешним API.
3.
Обновляет список доверенных сертификатов в системе. Этот шаг необходим, особенно если вы добавляете свои собственные .crt файлы.
4.
Удаляет французский язык кэшированные списки пакетов, чтобы минимизировать размер итогового Docker-образа. Это best practice для продакшн-сборок, где каждый мегабайт имеет значение.
📍 Навигация: Вакансии • Задачи • Собесы
🐸 Библиотека devops'a
#лучшее_из_библиотеки_2025
Возвращаемся к теме — базовая вещь, но новички часто спотыкаются. Собираете образ, запускаете — а контейнер не может сходить по HTTPS.
curl ругается на сертификаты, git clone падает, API недоступны.Один RUN в Dockerfile, который и обновляет, и защищает, и чистит. Делайте так и забудьте про SSL-ошибки и мусор в образах:
RUN apt-get update && apt-get install -y ca-certificates && update-ca-certificates && rm -rf /var/lib/apt/lists/*
Разбираем пошагово:
1.
apt-get updateОбновляет кэш доступных пакетов. Это обязательно перед установкой любого ПО через apt-get, иначе система не узнает о последних версиях.
2.
apt-get install -y ca-certificatesУстанавливает набор корневых SSL-сертификатов удостоверяющих центров (CA), которым система может доверять. Без них HTTPS-соединения могут не работать — будь то curl, wget, git clone, или подключение к внешним API.
3.
update-ca-certificatesОбновляет список доверенных сертификатов в системе. Этот шаг необходим, особенно если вы добавляете свои собственные .crt файлы.
4.
rm -rf /var/lib/apt/lists/*Удаляет
📍 Навигация: Вакансии • Задачи • Собесы
#лучшее_из_библиотеки_2025
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
Большой шаг для AI/ML нагрузок: kube-scheduler теперь умеет планировать группы подов как единое целое.
Когда запускаете ML-джобу на 8 воркеров — scheduler планирует каждый под отдельно. Результат: 5 подов запустились, 3 ждут ресурсов. Джоба не работает, но ресурсы заняты. Deadlock.
Решение — новый Workload API + Gang Scheduling:
apiVersion: scheduling.k8s.io/v1alpha1
kind: Workload
metadata:
name: training-job
spec:
podGroups:
- name: workers
policy:
gang:
minCount: 4 # все 4 или никто
Как работает gang scheduling:
1. Поды блокируются, пока не наберётся minCount
2. Scheduler ищет места для всей группы
3. Нашёл для всех → все стартуют одновременно
4. Не нашёл за 5 минут → все отклоняются и идут обратно в очередь
📍 Навигация: Вакансии • Задачи • Собесы
#пульс_индустрии
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3