DevOps 413
رفتن به کانال در Telegram
Опыт инженера изнутри: DevOps-практика, инфраструктура, конференции и карьера в IT https://youtube.com/@devops413
نمایش بیشترکشور مشخص نشده استدسته بندی مشخص نشده است
302
مشترکین
+1324 ساعت
+297 روز
+2930 روز
آرشیو پست ها
302
Дорогие коллеги по цеху и подпищеки!
Крайне сердечно поздравляю вас с наступающим 2️⃣0️⃣2️⃣6️⃣ годом!
Зеленых пайплайнов, спокойных дежурств, стоячего прода, легких повышений и исполнения загаданного! Любви, здоровья и деняк!
С последнего поста в канале прошло много времени и этому есть причины. Подводя итоги уходящего года, хочу поделиться своими целями на следущий.👇
За этот год я:
➖очень много работала: засетапила 10 куб кластеров, мигрировала данные одного CSI на другой, внедрила kubelogin для всех юзеров, внедрила kyverno, пилила мониторинг с нуля, мигрировала монолит в куб, писала автоматизацию для инфры, дебажила, поднимала упавшее, много наставничала на работе и вне и много другого
➖ провела 19 консультаций для начинающих инженеров, вот несколько отзывов с платформы
Общение с Юлией было прямое и открытое, сама она приятная в разговоре и хороший слушатель. Как мне показалось, мы нашли общий язык и в целом время пролетело незаметно. Наметили план, по которому я буду развиваться, а она помогать в исполнении по мере возможности. Мне понравилось, обращусь снова. Прекрасный человек, настоящий эксперт в своей области. Вдохновляет не испугаться много умных слов, я обходила тему Сетей стороной, думала, что никогда в ней не разберусь сама, но Юлия в меня вселила надежду и что-то даже пошло 🙂 Так что спасибо ей большое, было бы круто, конечно, таких менторов иметь на постоянной основе, даже за денежку, чтобы было прям обучение. Еще раз спасибо ей и платформе! Огромное спасибо Юле за невероятно полезную сессию! Юля не просто помогла разобрать ошибки, но и доступно объяснила несколько новых технологий (Kubernetes), о которых я только слышал. Чувствую, что мой профессиональный горизонт значительно расширился. Очень мотивирующая и продуктивная встреча! Однозначно рекомендую Юлю как экспертного и отзывчивого ментора. Понравилось, что ментор была инициативна в разговоре и сама развивала темы. Классно, что она имеет обширный опыт в сфере.➖ закончила участие в одном потоке Mentor in Tech и сейчас участвую в другом ➖ побывала на классных конференциях и познакомилась с классными инженерами ➖ съездила в Японию 😭😍🫰 ➖относила брекеты ➖пробежала микромарофон ➖ начала изучать Go ➖ начала вести тг канал 😅 ➖ переехала в Москву ➖ нашла новую работу И вот в связи с последними двумя пунктами в следующем году меня ждут новые приключения 😁 Из новых целей на будущий год я ставлю: ➖ съездить в отпуск ➖ готовиться и попробовать сдать CKA ➖ написать свой оператор ➖ начать свой пет проект ➖ записать подкаст для канала с приглашенным гостем ➖ податься с докладом на конфу Насчет последнего я, конечно, не уверена🤪, но с остальным точно справлюсь! С новым годом, друзья!🎉❤️🔥🎅❄️☃️🎆
302
⁉️Вопросы с собеседований
Я стараюсь следить за трендами на рынке, в том числе при помощи собеседований. Вопросы, которые задают соискателям, ярко отражают портрет идеального кандидата в контексте сегодняшнего дня. А последние пару недель я и сама активно проходила интервью. Ниже подготовила подборку самых попсовых и интересных вопросов.👇
📚 Общая теория
1. Что такое CI/CD? Где заканчивается CI и начинается CD? 2. Чем CDL отличается от CDP, когда какой подход использовать? 3. Чем контейнеризация отличается от виртуализации? 4. Что такое канареечный и blue-green деплои? 5. *Как реализовать zero-downtime deploy? 6. *Назовите четыре золотых сигнала?🐧 Linux 📁 Файловая система
1. Что такое индексные дескрипторы и какую информацию они содержат? 2. Что такое лимиты и какими они бывают? 3. Разница между hard link и soft link? 4. Как посмотреть открытые файлы? 5. Что происходит при удалении файла, если он открыт другим процессом? 6. Какие типы файлов в Linux вы знаете? 7. Какие права должны быть у файла, чтобы его удалить? (вопрос с подвохом)⚙️ Процессы
1. Какой процесс в Linux имеет первый PID? 2. Что такое системные вызовы? 3. Как отследить системные вызовы работающей программы? 4. Что такое systemd? 5. Что такое load average? 6. В каких состояниях могут находиться процессы? По каким причинам процесс может находиться в статусе D (uninterruptible sleep)? 7. Что такое зомби-процесс и чем он опасен?🌐 Сеть
1. Что такое iptables? 2. Как посмотреть открытые порты? 3. Как проверить настройки сетевого интерфейса? 4. Можно ли изменить SSH-порт? Как? 5. Что такое SSH-туннель? 6. *За что отвечает протокол ARP?🖥️ Bash
1. Что делает пайп? 2. Что возвращает переменная "$?" ? 3. В каких ситуациях может пригодиться xargs? 4. Что произойдёт при выполнении export env=test? 5. Что произойдёт при выполнении source ~/.bashrc? В каких ситуациях использовать? 6. Что делает этот однострочник и каков будет результат?
kubectl get po | awk 'NR != 1 { print $1 }' | xargs -n1 kubectl delete po && echo "done" || echo "no pods"
🖼️ Kubernetes
1. Назовите компоненты control plane и worker нод? 2. Какой компонент запускает контейнеры и управляет их жизненным циклом? 3. Где хранится вся информация о кластере? 4. Чем pod отличается от контейнера? 5. Что такое sidecar и init контейнеры и чем отличаются? 6. Какова разница между PV и PVC? 7. Чем DaemonSet отличается от StatefulSet? 8. Что такое limits и requests? 9. Что происходит, если pod упирается в лимиты по CPU и памяти? 10. Какие есть QoS классы? 11. Какие есть пробы и за что они отвечают? 12. Что такое tolerations и taints? 13. Назовите причины, по которым может не запланировать под? 14. Какова разница между delete и rollout? 15. Что произойдёт, если удалить namespace, в котором висят finalizer’ы? 16. *Как работает VPA и HPA?🖼️ Docker
1. Чем Dockerfile отличается от образа? 2. Чем отличаются команды COPY и ADD? 3. Чем отличаются команды CMD и ENTRYPOINT? 4. Что такое слои? 5. Что происходит с образом, когда на его базе запускается контейнер? Изменяется ли он? 6. Перечислите практики оптимизации сборки образа (минимум 4). 7. Как вытащить файл из остановленного контейнера, не запуская его? 8. *Как передать пароли/секреты в Dockerfile во время сборки?Есть еще много специфичных тем, которые варьируются от вакансии к вакансии, но при этом есть общий набор, перечисленный выше 🙂 Собираю свою личную коллекцию вопросов для тех интервью, которые провожу. Если у вас есть классные, нестандартные вопросы - присылайте! 😎
302
У меня есть несколько идей для
постов, но не могу выбрать. Нужен
ваш совет!🤓
302
Repost from Women in Tech (WiT)
5 ноября в 18:00 MSK состоится вебинар на тему «Запуск приложений в Docker»
🚀 Вебинар будет полезен разработчикам, администраторам и инженерам, а также всем, кто хочет познакомиться с Docker.
В роли спикера выступит Юлия Брунер:
✅ DevOps инженер в компании T1
✅ Автор телеграм канала об IT @devops413
✅ Ментор
На вебинаре:
👉 Разберем базовые абстракции докера
👉 Соберем образ и запустим свое приложение в контейнере
👉 Разберем частые ошибки и лучшие практики
🔗Подключайтесь по ссылке
🗓 Добавляйте в календарь
Если вам не хватило места в Zoom, подключайтесь к трансляции в Telegram @wit_streams
⏺️ Запись будет
#DataScience #QA #DevOps
302
+4
Обожаю мемасы, но годных айтишных мало, а про DevOps еще меньше 😭
Я наскребла парочку для вас, поделитесь своими 🙏
302
🖼️ Docker vs Kubernetes 🖼️
На днях ко мне обратились два инженера — обсуждали автоматизацию деплоя в их организации. После нескольких рекомендаций прозвучал классический холиварный вопрос: Docker или Kubernetes? Когда пора переходить на кубер?
Я вижу, что это до сих пор одна из самых горячих тем на конференциях. И не просто так! Я решила сравнить.
🔍 Ключевым параметры:
Кластеризация
🖼️ Да
🖼️ Да
Сложность настройки
🖼️ Низкая
🖼️ Высокая — требует экспертизы
Автомасштабирование
🖼️ Ручное или базовое
🖼️ HPA, VPA, Cluster Autoscaler
Self-healing
🖼️ Ограниченное (restart policy)
🖼️ Продвинутое (liveness, readiness)
Управление конфигами
🖼️ Docker Configs/Secrets
🖼️ ConfigMaps, Secrets + GitOps
Обновления
🖼️ Через docker-compose / скрипты
🖼️ Rolling updates / Canary / GitOps
Экосистема
🖼️ Ограниченная
🖼️ Огромная (Operators, Helm, CRD)
💰 Что насчёт стоимости?
Ведь DevOps — это в том числе про оптимизацию ресурсов.
Kubernetes:
✅ Легковеснее при правильной настройке, оптимальная утилизация = экономия денег
❌ Дорогой специалист: опытный K8s-инженер стоит 250-400k₽+
Docker:
✅ Дешевле на старте: минимальные требования к инфраструктуре и экспертизе, базовые знания Docker есть у большинства
❌ Хуже утилизация ресурсов: нет динамического распределения, часто "резервируют с запасом", ручное управление: масштабирование и балансировка требуют больше времени DevOps'а
📊 Когда пора переезжать на Kubernetes?
Одной причины недостаточно — это всегда совокупность факторов:
1. Динамическое масштабирование
2. Многокластерность и распределённость
3. Рост команды и процессов
4. Self-healing и Zero-downtime
5. Сложная сетевая топология
6. Compliance и изоляция
⚠️ Когда НЕ нужен Kubernetes?
- Монолит или 2-3 микросервиса без планов роста
- Небольшая команда
- Нет особых/специфичных требований к инфраструктуре
В таких случаях Docker + хороший мониторинг закроют 90% задач без оверинжиниринга.
Согласны?) Узнали? 😬Жду холиварные контраргументы в комментариях!!!👇302
👉 Кейс: Мигрируем тома в Kubernetes
Разбираем реальную задачу. Задача для middle и выше: миграция данных между томами в рамках смены CSI.
🎯 Задача: Перенести данные из старого в новый PVC, созданный уже новым CSI-драйвером. Без потерь и с минимальным временем простоя.
Как будете декомпозировать задачу и какие инструменты будете использовать? Предлагаю использовать утилиты pv-migrate и rename-pvc.
🧠 Декомпозиция:
1. Подготовка: Создать новый PVC в целевом хранилище. Убедиться, что поды, использующие старый том, остановлены.
2. Миграция: Перекачать данные из старого PVC в новый.
3. Переключение: "Подменить" старый том новым для рабочей нагрузки.
4. Финал: Протестировать и убрать старые артефакты.
🛠 Инструмент: pv-migrate
Это утилита, которая превращает сложный процесс в одну команду. Её магия в том, что она:
* Автоматически создаёт мигрирующий Pod с доступом к обоим томам (источнику и назначению).
* Сама выбирает стратегию копирования (например, mnt2 — монтирует оба тома в один под и использует rsync).
* Берет на себя: проверки, мониторинг прогресса, очистку за собой.
По сути, вы говорите "скопируй вот этот том в тот", а pv-migrate делает всё остальное. Проще не бывает!
📋 План действий и команды
⚠️ Золотое правило: "7 раз отмерь — 1 раз отрежь". Даже на dev потеря данных — это боль. Не забываем о бэкапах!
1. Останавливаем нагрузку.
kubectl scale deploy -n user-ns app --replicas=0
2. Подготавливаем новый PVC с идентичными labels, используя новый StorageClass.
3. Запускаем миграцию.
NAMESPACE=user-ns
PVC_NAME="app-pv"
kubectl pv-migrate \
--strategies mnt2 \
--source-namespace=$NAMESPACE \
--source=$PVC_NAME \
--dest-namespace=$NAMESPACE \
--dest=$PVC_NAME-new
Ждём успешного завершения. В логах будет виден прогресс.
4. "Переключаем" тома. Переименовываем PVC, чтобы приложение начало использовать новый том.
# Переименовываем старый PVC
kubectl rename-pvc --yes -n $NAMESPACE $PVC_NAME $PVC_NAME-old
# Переименовываем новый PVC
kubectl rename-pvc --yes -n $NAMESPACE $PVC_NAME-new $PVC_NAME
5. Запускаем приложение.
kubectl scale deploy -n user-ns app --replicas=1
6. Проверяем, что под поднялся и данные на месте.
7. Удаляем старый PVC, когда уверены, что он больше не нужен.
💎 Итог
Весь процесс миграции свелся к нескольким командам. Утилита pv-migrate скрывает за собой всю сложность и позволяет делать рискованные операции предсказуемо и безопасно.
Sources: pv-migrate | rename-pvc302
В свободное от работы время я помогаю начинающим специалистам начать или продолжить погружение в DevOps.
Вот мой базовый чек-лист, который я даю каждому менти 👇
🧠 1. DevOps как методология
Стоит понимать, какие задачи решает DevOps и зачем бизнесу нужна эта культура. DevOps это методология, DevOps инженер - специалист, который внедряет эту методологию.
⚙️ 2. CI/CD
Теория, чем CDL отличается от CDP.
🐧 3. Linux
Обязательно. Без уверенного владения Linux двигаться дальше тяжело.
🔗 Полезная карта для навигации по темам: roadmap.sh/linux
🕸 4. Сети
Основы, без которых не получится понимать ни контейнеризацию, ни инфраструктуру:
• DHCP
• DNS
• TCP/IP
• NAT
• iptables
🧩 Для практики сетей рекомендую отличный симулятор: miminet.ru
📦 5. Контейнеризация и виртуализация
Важно знать разницу и когда что использовать.
🖼 6. Docker
Минимальный набор для старта:
• docker image
• docker compose
• docker run
• dockerfile
• docker volumes
🧩 Полная карта компетенций DevOps: roadmap.sh/devops
‼️ Главное — практика.
Почти каждый менти, с которым я общалась, отмечал, что без неё теория не усваивается.
Основные инструменты и технологии — это логические абстракции, и пока не “потрогаешь руками”, в голове не складывается картина.
Если этот пост оказался полезным — поставьте реакцию.
Так я пойму, что стоит подготовить подборку практических задач и список отборных статей для самообучения.
302
Привет! 👋
🧩 Обо мне: в IT 8 лет, в DevOps 4 года, до инженера выросла из техподдержки. Без профильного высшего, все знания - самообучение и практика.
Работала в Yota, Skyeng, X5, Т1 💙.
Помогаю начинающим специалистам — менторю:
👉 Профиль на getmentor.dev
Также являюсь ментором в @womenintechrus.
🖼️ О чём посты
• реальные рабочие кейсы
• советы для тех, кто учится DevOps с нуля
• инциденты и разборы из практики
• заметки о карьере в IT
🎥 Дополнительные материалы:
• Интервью для Slurm
اکنون در دسترس! پژوهش تلگرام ۲۰۲۵ — مهمترین بینشهای سال 
