Библиотека собеса по DevOps | вопросы с собеседований
رفتن به کانال در Telegram
Вопросы с собеседований по DevOps и ответы на них. По рекламе: @proglib_adv Учиться у нас: https://proglib.io/w/d7e18893 Для обратной связи: @proglibrary_feeedback_bot
نمایش بیشتر3 420
مشترکین
اطلاعاتی وجود ندارد24 ساعت
+37 روز
+2530 روز
آرشیو پست ها
Что такое GKE?
GKE, или Google Kubernetes Engine, представляет собой платформу управления, которая обеспечивает поддержку кластеров и контейнеров Docker, функционирующих в облачных сервисах Google.
Библиотека собеса по DevOps
Что представляют собой Puppet Modules и как они отличаются от Puppet Manifests?
Модуль Puppet — это набор данных (шаблонов, файлов и т. д.) и манифестов, организованных в определённую структуру каталогов. Они помогают упорядочить код Puppet, позволяя разделять его на различные манифесты. Применение модулей Puppet для организации большинства манифестов считается наилучшей практикой. В отличие от манифестов, которые представляют собой программы Puppet с кодом, модули предлагают более структурированный подход к организации кода.
Библиотека собеса по DevOps
Можете ли вы сравнить Puppet с другими инструментами управления конфигурациями? Почему вы решили использовать Puppet?
Puppet часто сравнивают с другими инструментами управления конфигурацией, такими как Chef, Ansible, SaltStack и cfengine. Выбор использования Puppet часто зависит от потребностей организации, таких как простота использования, масштабируемость и поддержка сообщества.
Библиотека собеса по DevOps
Что такое пропускная способность?
Пропускная способность — это способность канала связи измерять, какой объем данных он может обработать за определенный период времени. Большая пропускная способность будет означать большую обработку трафика и, следовательно, большую передачу данных.
Библиотека собеса по DevOps
Как Docker ограничивает CPU и почему --cpus может вызвать лаги?
Через cgroups/CFS: --cpus задаёт квоту (cpu.max), при всплесках планировщик «душит» контейнер (throttling) → задержки. Для стабильности — пинning ядёр --cpuset-cpus + разумная квота/period; для мягкого приоритета — --cpu-shares (только вес при конкуренции).
Библиотека собеса по DevOps
Что такое алерт в Prometheus?
В Prometheus алерт — это уведомление, которое активируется при достижении определенного условия или порогового значения. Оповещения можно настроить на срабатывание, когда определенные показатели пересекают определенный порог или происходят определенные события. После срабатывания оповещения его можно перенаправить по различным каналам, таким как электронная почта, пейджер или чат, чтобы уведомить соответствующие группы или отдельных лиц о необходимости принятия соответствующих мер. Оповещения являются важнейшим компонентом любой системы мониторинга, поскольку они позволяют командам активно выявлять проблемы и реагировать на них до того, как они повлияют на пользователей или приведут к простою системы.
Библиотека собеса по DevOps
В чём разница между blue-green deployment и canary deployment в контексте DevOps, и когда каждый из них предпочтительнее?
Blue-green deployment использует две полностью идентичные среды: одна активная (blue), другая подготовленная (green). Переключение трафика происходит мгновенно, что минимизирует downtime и упрощает откат, но требует удвоенной инфраструктуры. Canary deployment выкатывает новую версию постепенно на часть трафика, позволяя обнаружить проблемы без масштабного влияния, но усложняет маршрутизацию и мониторинг. Blue-green подходит для быстрых релизов с жёсткими SLA по доступности, canary — для рискованных изменений, где важна поэтапная проверка.
Библиотека собеса по DevOps
Есть группы пользователей, которые должны заводиться не на всех серверах. Как ограничить заведение пользователей?
Сгруппировать сервера, на которых должны заводиться группы пользователей, в инвентори или написать в плейбуке условие, которому передаётся список серверов, на которых необходимо выполнить задачу.
Библиотека собеса по DevOps
Какова роль сети Ingress?
Сеть Ingress управляет внешним доступом к сервисам в кластере. В частности, она обеспечивает балансировку нагрузки трафика, завершение SSL/TLS и виртуальный хостинг для маршрутов HTTP и HTTPS, открытых извне кластера для служб внутри него. Сеть Ingress помогает оптимизировать связь между приложениями и внешними клиентами, предоставляя единую точку входа для входящего трафика.
Библиотека собеса по DevOps
Что вы знаете о NodePort?
NodePort — это сетевая концепция Kubernetes, которая позволяет внешнему трафику напрямую получать доступ к сервису в кластере. Это делается путем открытия определенного порта на всех узлах и отправки трафика с этого порта в сервис. Когда сервис создается с типом NodePort, Kubernetes назначает статический номер порта сервису. Назначенный порт затем открывается на каждом узле в кластере. Это позволяет перенаправлять любой трафик, отправляемый на этот порт на любом узле, в соответствующий сервис.
Библиотека собеса по DevOps
Что такое главный узел в Kubernetes?
Он контролирует и управляет рабочими узлами, составляет плоскость управления кластером и отвечает за планирование задач и мониторинг состояния кластера. Главный узел имеет несколько компонентов, таких как Kube-APIServer, Kube-Controller-manager, Etcd и Kube-Scheduler, которые помогают управлять рабочими узлами.
Библиотека собеса по DevOps
В Kubernetes-продакшене пользователи жалуются на нестабильность: часть запросов “теряется” при деплое новой версии сервиса. Как вы будете диагностировать и устранять проблему?
Проверить стратегию деплоя (RollingUpdate, Recreate, blue-green/canary), убедиться, что настроены readinessProbe и livenessProbe, а также корректные maxUnavailable и maxSurge. Посмотреть события кластера (kubectl describe pod, kubectl get events) и метрики ingress/load balancer. Решение — правильно настроить пробы, стратегию деплоя и добавить graceful shutdown (preStop hook).
Библиотека собеса по DevOps
В CI/CD пайплайне деплой в Kubernetes часто занимает больше времени, чем ожидалось. Pod’ы создаются, но приложение не готово обслуживать трафик, и пользователи видят ошибки. Как вы будете искать и устранять проблему?
Проверю стратегию деплоя (например, RollingUpdate), наличие корректных readinessProbe и livenessProbe, а также настройки maxUnavailable и maxSurge. Проанализирую логи Pod’ов и события кластера. Для решения — настрою health-check’и, добавлю preStop hook для graceful shutdown и оптимизирую пайплайн так, чтобы трафик шёл только на готовые Pod’ы.
Библиотека собеса по DevOps
Как посмотреть нагрузку на диски?
Установить утилиту sysstat, проверить нагрузку на диски iostat -xtc.
🐸Библиотека собеса по DevOps
В каких случаях не отработает перенос пода на другую ноду?
Если на другой ноде нет ресурсов для размещения пода или нет сетевой доступности до ноды.
🐸Библиотека собеса по DevOps
Почему важно иметь управление конфигурацией в DevOps?
Пример ответа: «Это гарантирует, что конфигурации приложения согласованы в различных средах, уменьшая количество ошибок во время развертывания и гарантируя, что приложения ведут себя должным образом».
🐸Библиотека собеса по DevOps
Что такое Puppet Modules и чем они отличаются от Puppet Manifests?
Модуль Puppet — это просто набор данных (фактов, шаблонов, файлов и т. д.) и манифестов. Эти модули имеют определенную структуру каталогов и помогают организовать коды Puppet, поскольку их можно использовать для разделения кода на различные манифесты. Использование модулей Puppet для организации почти всех манифестов Puppet считается лучшей практикой. Модули Puppet отличаются от манифестов, поскольку последние представляют собой просто программы Puppet, содержащие код.
🐸Библиотека собеса по DevOps
Объясните непрерывное тестирование и опишите его цель.
Непрерывное тестирование — это процесс, в котором автоматизированное тестирование происходит на каждом этапе жизненного цикла разработки продукта. В нем используется стратегия сдвига влево, что означает, что команды проводят тестирование на начальных этапах процесса разработки, а не в конце. Целью непрерывного тестирования является улучшение тестового покрытия для функциональных, нефункциональных и автоматизированных тестовых кейсов, которые представляют собой наборы действий, выполняемых в системах, чтобы определить, удовлетворяют ли они требованиям конечного пользователя. Благодаря этому процессу разные команды могут быстро выявлять проблемы и быстрее их обеспечивать. поставки программного обеспечения.
🐸Библиотека собеса по DevOps
В gitlab CI необходимо, чтобы джоба выполнялась всегда только при ручной активации. Что для этого необходимо сделать?
Необходимо добавить when: manual в описание заданной джобы. По-умолчанию при использовании when: manual параметр allow_failure установлен в true, поэтому данная джоба будет запускаться автоматически. Чтобы такого не было, необходимо также установить параметр allow_failure: false.
🐸Библиотека собеса по DevOps
Какие факторы необходимы для успешного выполнения непрерывной интеграции?
Для успешной непрерывной интеграции необходимо несколько факторов. К ним относятся хорошо поддерживаемая библиотека кода, автоматизированные сборки и тестирование, а также комплексный набор автоматизированных тестов. Перед непрерывной интеграцией важно запустить все тесты на локальном компьютере.
🐸Библиотека собеса по DevOps
اکنون در دسترس! پژوهش تلگرام ۲۰۲۵ — مهمترین بینشهای سال 
