Деплой развалился, kubectl get pods показывает ошибку, но молчит о деталях. События в кластере хранят настоящую правду о проблемах.
Запускаете
kubectl get events --sort-by='.lastTimestamp', и логи выстраиваются по времени. Последние ошибки вроде BackOff, FailedMount или ImagePullBackOff всплывают в самом низу.Добавьте
--field-selector involvedObject.name=your-pod-name, чтобы видеть только события вашего пода. Или --namespace=prod для пространства.📍 Навигация: Вакансии • Задачи • Собесы
#aрсенал_инженера
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
Один баг в проде — от 25 тысяч рублей. Релизы раз в неделю, в каждом 5–20 уязвимостей. Итого: до 150 миллионов в год на хотфиксы.
За 2024-й в российском ПО нашли втрое больше уязвимостей, чем годом ранее. 85% компаний с контейнерами уже словили инцидент.
📍 Навигация: Вакансии • Задачи • Собесы
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
Tmux ускоряет работу в терминале, но дефолтные префиксы Ctrl-b тормозят. Настраиваем хоткеи на Ctrl-a или CapsLock.
В ~/.tmux.conf добавьте:
set -g prefix C-a
unbind C-b
bind C-a send-prefix
Перезапуск tmux kill-server; tmux. Теперь Ctrl-a вместо Ctrl-b для всех команд.
Разделение окон:
bind | split-window -h
bind - split-window -v
Ctrl-a | горизонтально, Ctrl-a - вертикально. Без префикса Ctrl-b % или ".📍 Навигация: Вакансии • Задачи • Собесы
#aрсенал_инженера
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2👍1
Копировать base64 из секретов в онлайн-декодеры — плохая привычка. Данные улетают на чужие серверы, рискуя утечкой.
Команда
kubectl get secret <secret-name> -o jsonpath='{.data.password}' | base64 --decode решает проблему. Jsonpath вытаскивает точный ключ из data, пайп декодирует в терминале. Получаете чистый текст локально, без посредников.Дебаг ускоряется, комплаенс соблюден.
📍 Навигация: Вакансии • Задачи • Собесы
#aрсенал_инженера
Please open Telegram to view this post
VIEW IN TELEGRAM
🥱4👍3
Линус Торвальдс выпустил третий релиз-кандидат ядра 6.19. Разработка замедлилась из-за праздников, но в патч добавили поддержку CPU idle detection для POWER11 процессоров IBM.
В архитектуре powerpc включили детекцию состояний простоя CPU на POWER11. Это позволит ядру эффективно управлять энергопотреблением, переводя ядра в idle при отсутствии нагрузки.
Другие фиксы: обновления PMU-тестов, исправления syscall/exit прерываний, драйверы ASoC для Freescale (fsl_easrc, fsl_sai), SCSI mpi3mr, USB storage.
📍 Навигация: Вакансии • Задачи • Собесы
#пульс_индустрии
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
Terraform хорош для IaC, но в больших проектах код копируется по регионам и окружениям. Terragrunt решает это через terragrunt.hcl поверх main.tf.
В папке с main.tf добавьте terragrunt.hcl. Вместо
terraform init && apply пишите terragrunt apply. Auto-init сам подтянет провайдеры, работает с Terraform/OpenTofu.Пример:
# main.tf
variable "content" {}
resource "local_file" "file" { content = var.content; filename = "hi.txt" }
# terragrunt.hcl
inputs = { content = "from terragrunt" }
terragrunt apply создаст .terragrunt-cache (в .gitignore) и файл.
Вынесите логику в shared/main.tf с переменными. В env/ terragrunt.hcl:
terraform { source = "../shared" }
inputs = { content = "env-specific"; output_path = "${get_terragrunt_dir()}/hi.txt" }Логика одна, запускайте из dev/prod. Backend/provider дубли не нужны — Terragrunt генерит.
📍 Навигация: Вакансии • Задачи • Собесы
#root@prompt
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3🥱2
Релиз добавляет 60 улучшений, включая стабильные обновления Pod-ресурсов и сертификаты для подов. Тема релиза вдохновлена Иггдрасилем, мировым деревом.
Pod generation с .metadata.generation трекает изменения. Сертификаты для подов теперь с авто-ротацией без cert-manager. HPA получил кастом tolerance для точного скейлинга. StatefulSet добавил maxUnavailable для быстрых обновлений. Downward API выдает топологию ноды без API запросов.
📍 Навигация: Вакансии • Задачи • Собесы
#пульс_индустрии
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
Сервер сам подтягивает свежий код и перезапускает сервис. Но голый
git pull в проде часто превращается в лотерею, потому что меняет рабочую директорию прямо на месте и может оставить полусобранное состояние.Как сделать чуть безопаснее
Вместо
pull лучше делать fetch и жестко ставить нужный коммит или ветку. Так меньше сюрпризов с мержами и конфликтами. А еще обязательно чистить мусор, иначе старые файлы могут остаться в каталоге и влиять на запуск.Скрипт на python:
import os
import subprocess
def run(cmd):
subprocess.run(cmd, check=True)
def deploy(repo_path, branch="main"):
os.chdir(repo_path)
run(["git", "fetch", "origin", branch])
run(["git", "reset", "--hard", f"origin/{branch}"])
run(["git", "clean", "-df"])
print(f"Код обновлен до origin/{branch}")
deploy("/path/to/repo")
Этот вариант повторяемее, чем
git pull, потому что не пытается мержить локальные изменения.📍 Навигация: Вакансии • Задачи • Собесы
#арсенал_инженера
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4😢1
apiVersion: life/v2026
kind: NewYear
spec:
fridayDeploys: false
productionIncidents: 0
blame: "/dev/null"
status:
phase: TooGoodToBeTrue
message: "CrashLoopBackOff на реальность"
С Новым годом! Пусть единственным rollback будет откат к оливье за добавкой.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤8👍1
Помните тот пост, который хотели перечитать, но потеряли? Все праздники публикуем хиты 2025 — самые сохраняемые, самые пересылаемые.
📍 Навигация: Вакансии • Задачи • Собесы
Please open Telegram to view this post
VIEW IN TELEGRAM
Откуда в девопс пришли вы?
❤️ — Сисадмин
🔥 — Программист
📍 Навигация: Вакансии • Задачи • Собесы
#лучшее_из_библиотеки_2025
Please open Telegram to view this post
VIEW IN TELEGRAM
❤41🔥16👾4
Осенью мы разбирали эту тему. Повторяем для тех, кто пропустил, и добавляем пару нюансов.
Проблема
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
👍12
Стас перенёс две операции на мозге. Сейчас восстанавливается. Параллельно учит 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
👍3
Через 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
👍1