Вопросы на собеседовании DevOps-инженера
Linux и сети, Docker и Kubernetes, CI/CD и Terraform, мониторинг и SRE-практики, эксплуатация баз — то, что реально спрашивают инженера эксплуатации. Ниже — вопросы с разбором, полный банк с движком повторения открывается в тренажёре.
- Зачем компании держать собственный реестр образов и пакетов вместо публичных?A)Публичные реестры не поддерживают приватные репозиторииB)Свой реестр автоматически сканирует код на ошибкиC)Права, скорость и независимость от чужих лимитовD)Свой реестр снимает необходимость версионировать образы
показать ответ и разбор
+C)Права, скорость и независимость от чужих лимитов// разбор: Свой реестр (Nexus, Harbor, облачный) решает три задачи: приватность и права, скорость выкатки, потому что образ рядом с нодами, и независимость — внешний реестр может ограничить число скачиваний, подорожать или стать недоступным. В российских контурах добавляется четвёртое: зеркала и проксирование внешних репозиториев, чтобы сборка не зависела от доступности зарубежных источников.
- В пайплайне есть и кэш, и артефакты. В чём разница?A)Кэш живёт в реестре образов, артефакты — на раннереB)Кэш доступен всем проектам, артефакты — только текущей веткеC)Кэш хранится вечно, артефакты чистятся после каждой сборкиD)Кэш ускоряет повторные сборки, артефакты передают результат дальше
показать ответ и разбор
+D)Кэш ускоряет повторные сборки, артефакты передают результат дальше// разбор: Кэш — расходный ускоритель: зависимости, скачанные пакеты, промежуточные объекты. Его потеря делает сборку медленной, но не ломает. Артефакт — результат работы стадии: собранный бинарь, отчёт тестов, образ; он передаётся следующим стадиям и хранится по политике. Отсюда правило: если без этого следующий шаг не соберётся, это артефакт, а не кэш.
- Чем blue-green отличается от канареечного выката?A)Blue-green выкатывает по нодам, канарейка — по namespaceB)Blue-green переключает целиком, канарейка — долюC)Blue-green применяется к базам, канарейка — к приложениям без состоянияD)Blue-green не требует отката, канарейка откатывается только вручную
показать ответ и разбор
+B)Blue-green переключает целиком, канарейка — долю// разбор: Blue-green: рядом с рабочим окружением поднимают полную копию новой версии, прогревают, проверяют и переключают трафик целиком — откат сводится к обратному переключению, но нужен двойной запас ресурсов. Канарейка: новая версия получает небольшую долю трафика, метрики сравнивают с базовой и постепенно увеличивают долю. Дешевле по ресурсам, зато требует хорошей наблюдаемости.
- Чем rebase отличается от merge при обновлении ветки от main?A)Rebase переносит коммиты поверх новой базыB)Rebase удаляет коммиты ветки, оставляя только последнийC)Rebase применим лишь к ветке без конфликтов с основнойD)Rebase сохраняет хэши коммитов, merge их пересчитывает
показать ответ и разбор
+A)Rebase переносит коммиты поверх новой базы// разбор: Merge оставляет обе истории и добавляет коммит слияния — история точная, но ветвистая. Rebase переписывает коммиты ветки поверх свежего main: содержимое то же, хэши новые, история линейная. Отсюда правило: перебазировать можно свою ветку до публикации, а общую переписывать больно — у коллег останется старая версия тех же коммитов.
- В чём суть GitOps по сравнению с выкаткой командой из пайплайна?A)Состояние описано в git, агент сводит расхождениеB)Пайплайн получает права на кластер и катит манифесты напрямуюC)Манифесты хранятся в реестре образов рядом со сборкойD)Выкатка запускается только вручную после ревью дежурного
показать ответ и разбор
+A)Состояние описано в git, агент сводит расхождение// разбор: В GitOps репозиторий — источник правды: там лежат манифесты, а агент внутри кластера (ArgoCD, Flux) постоянно сравнивает их с фактическим состоянием и подтягивает изменения. Плюсы: история изменений и ревью как у кода, откат обычным revert, видимый дрейф при ручных правках. И отдельно про безопасность: наружу не нужно выдавать доступ к кластеру, агент сам ходит за конфигурацией.
- Когда для задачи берут функцию (serverless), а не контейнер в кластере?A)Когда нужна максимальная предсказуемость задержки под нагрузкойB)Когда нагрузка редкая и рваная, а холодный старт терпимC)Когда сервису нужен постоянный пул соединений к базеD)Когда требуется полный контроль над рантаймом и версиями
показать ответ и разбор
+B)Когда нагрузка редкая и рваная, а холодный старт терпим// разбор: Функции хороши там, где нагрузка появляется эпизодически: обработчики событий, вебхуки, редкие задания. Платите за вызовы, инфраструктуры не держите. Расплата — холодный старт, ограничения по времени и памяти, отсутствие состояния и сложности с пулами соединений к базе. Ровный поток запросов и жёсткие требования к задержке дешевле и предсказуемее обслуживать контейнерами.
- Счёт за облако вырос вдвое, кто именно потребляет — неясно. С чего начинают наводить порядок?A)С обязательных меток на ресурсах: команда, сервис, окружениеB)С перехода на годовую оплату со скидкойC)С запрета создавать ресурсы всем, кроме дежурных инженеровD)С отключения мониторинга: он тоже стоит денег
показать ответ и разбор
+A)С обязательных меток на ресурсах: команда, сервис, окружение// разбор: Пока ресурсы безымянные, разговор о расходах превращается в гадание. Обязательные метки (владелец, сервис, окружение) плюс проверка их наличия при создании дают разбивку счёта по командам и сервисам — дальше видно, что дорожает и кто за это отвечает. Только после этого имеет смысл торговаться за тарифы и резервировать мощности.
- Где проходит граница ответственности между вами и провайдером в IaaS и PaaS?A)В IaaS провайдер отвечает за приложение, в PaaS — за железоB)В обоих случаях провайдер отвечает за всё, кроме сетиC)В IaaS ваша зона — с ОС и вышеD)Разница только в способе оплаты, ответственность одинаковая
показать ответ и разбор
+C)В IaaS ваша зона — с ОС и выше// разбор: IaaS даёт виртуальную машину и сеть: обновления ОС, настройка, бэкапы и мониторинг сервиса на вас. PaaS поднимается выше — управляемая база, очередь, кластер: провайдер держит версии, отказоустойчивость и обслуживание, вы отвечаете за данные, схему, запросы и права доступа. Ответственность за данные и настройки доступа не переходит к провайдеру ни в одной модели.
- Чем группа безопасности облака отличается от фаервола на самой машине?A)Группа безопасности фильтрует по содержимому пакетов, фаервол — по портамB)Правила группы применяются лишь при перезапуске машиныC)Группа безопасности заменяет сетевые правила внутри кластераD)Она работает до машины, на уровне сети, и не зависит от её настроек
показать ответ и разбор
+D)Она работает до машины, на уровне сети, и не зависит от её настроек// разбор: Группа безопасности — фильтр на стороне облачной сети: трафик отсекается ещё до виртуальной машины, правила меняются мгновенно и живут отдельно от ОС. Локальный фаервол — второй рубеж внутри машины, полезный, когда группа настроена широко или машина скомпрометирована. Обычная практика — держать оба: сеть режет по источникам и портам, хост защищает себя сам.
это девять из 434
В тренажёре ещё 425 вопросов по теме — с движком повторения.
Разбор прочитать мало: навык ставится практикой. В Сеньорчике вопросы идут сессиями, а движок возвращает темы, где вы плывёте, пока не начнёт отскакивать от зубов. Роль «DevOps» — 13 тем, 434 вопросов. Начать можно бесплатно.