Библиотека собеса по DevOps | вопросы с собеседований
رفتن به کانال در Telegram
Вопросы с собеседований по DevOps и ответы на них. Учиться у нас: https://clc.to/nLEtvA По рекламе: @proglib_adv Для обратной связи: @proglibrary_feeedback_bot
نمایش بیشتر3 443
مشترکین
+124 ساعت
-27 روز
+530 روز
آرشیو پست ها
В чём разница между blue-green deployment и canary deployment в контексте DevOps, и когда каждый из них предпочтительнее?
Blue-green deployment использует две полностью идентичные среды: одна активная (blue), другая подготовленная (green). Переключение трафика происходит мгновенно, что минимизирует downtime и упрощает откат, но требует удвоенной инфраструктуры. Canary deployment выкатывает новую версию постепенно на часть трафика, позволяя обнаружить проблемы без масштабного влияния, но усложняет маршрутизацию и мониторинг. Blue-green подходит для быстрых релизов с жёсткими SLA по доступности, canary — для рискованных изменений, где важна поэтапная проверка.
Библиотека собеса по DevOps
Что такое ARP? Как это работает?
ARP означает протокол разрешения адресов (Address Resolution Protocol). Когда вы пытаетесь проверить IP-адрес в локальной сети, скажем, 192.168.1.1, ваша система должна преобразовать IP-адрес 192.168.1.1 в MAC-адрес. Это предполагает использование ARP для разрешения адреса, отсюда и его название. Системы хранят справочную таблицу ARP, в которой хранится информация о том, какие IP-адреса с какими MAC-адресами связаны. При попытке отправить пакет на IP-адрес система сначала сверится с этой таблицей, чтобы узнать, знает ли она уже MAC-адрес. Если значение кэшировано, ARP не используется.
Библиотека собеса по DevOps
✍🏻 Что такое service account?
Это уникальные элементы в API Kubernetes, которые называются учетными записями служб (ServiceAccounts) и связаны с определенным пространством имен и набором учетных данных, хранящихся в объектах Secrets в кластере. Эти пользователи (ServiceAccounts) предназначены главным образом для управления правами доступа к API Kubernetes для процессов, работающих в кластере Kubernetes.
Библиотека собеса по DevOps
Как работает Kubernetes control plane при split-brain-сценарии, и что будет, если etcd частично доступен?
Control plane остановит планирование и любые изменения, если etcd не имеет кворума (n/2+1). Если часть etcd-ноды недоступна, но кворум есть, кластер продолжит работу. Если кворума нет, API-сервер может обслуживать только кэшированные GET-запросы, но не сможет выполнять записи.
Библиотека собеса по DevOps
✍🏻 Что такое «зависшие» образы в Docker и как их удалить?
Это неиспользуемые слои образов, с которыми больше не связаны никакие теги. Они часто накапливаются, когда вы создаете новые образы с тем же именем и тегом, оставляя старые слои без ссылок. Эти образы могут занимать значительное дисковое пространство, поэтому важно очищать их. Вот как это сделать:
1. Запустите команду
docker images -f dangling=true, чтобы найти образы.
2. Затем выполните команду docker image prune -f, чтобы удалить все образы за один раз.
3. Если вы хотите удалить образы вручную, используйте команду docker rmi -f $(docker images -f dangling=true -q).
Эти шаги помогут вам поддерживать чистоту системы и эффективно освобождать память.
Библиотека собеса по DevOpsЧто содержится в статусе ноды?
Статус узла содержит адрес, состояние, емкость и информацию. Он определяет состояние узлов в системе.
Адрес: использование зависит от вашего облачного провайдера или конфигурации bare metal.
Состояние: описывает состояние или условия всех работающих узлов.
Емкость: этот блок сообщает об общих ресурсах, обработанных узлом.
Информация: описывает общую информацию об узле, такую как версия Kubernetes, версия ядра, сведения о среде выполнения контейнера и текущая операционная система, которую использует узел.
🐸Библиотека собеса по DevOps
Для чего нужна команда git commit --amend?
commit --ammend используется для исправления сообщения последнего коммита. Также возможно использовать, чтобы добавить файлы в индекс (git add), после добавить файлы в коммит git commit --ammend.
🐸Библиотека собеса по DevOps
Что такое веб-перехват мутационного допуска Kubernetes и как он работает?
Вебхук мутационного допуска позволяет изменять объекты Kubernetes в режиме реального времени до их применения в кластере и сохранения. Он запускает динамический контроллер допуска в Kubernetes, который перехватывает запросы API до сохранения объектов в etcd. Он может изменять полезную нагрузку запроса, внедряя, изменяя или удаляя поля, прежде чем разрешить выполнение запроса.
Они обычно используются для:
✍🏻 Внедрения дополнительных объектов (sidecars).
✍🏻 Установки значений по умолчанию для модулей (pod), развертываний (deployments) и других ресурсов.
✍🏻 Применения передовых практик (например, автоматического назначения ограничений ресурсов).
✍🏻 Добавления настроек безопасности (например, требования меток для отслеживания аудита).
Библиотека собеса по DevOps
Чем различаются blue-green deployment и canary deployment, и в каких ситуациях один предпочтительнее другого?
Blue-green deployment переключает весь трафик с текущей (blue) версии приложения на новую (green) мгновенно, обычно через изменение маршрутизации. Это даёт возможность быстро откатиться, но не позволяет обнаружить проблемы под реальной нагрузкой до полного переключения. Canary deployment вводит новую версию поэтапно: сначала на малую долю пользователей, затем на большую. Это позволяет протестировать новую версию в живом окружении с минимальным риском. Canary предпочтительнее, если важно выявить баги или деградацию производительности под реальной нагрузкой, а blue-green удобен, когда критична скорость переключения или инфраструктура ограничена в поддержке нескольких версий одновременно.
Библиотека собеса по DevOps
В чем разница между SQL и NoSQL?
Базы данных SQL являются реляционными, структурированными и используют таблицы с предопределенными схемами, в то время как базы данных NoSQL являются нереляционными, не имеют схем и предназначены для обработки неструктурированных или полуструктурированных данных.
Библиотека собеса по DevOps
Что такое Docker-агент Sematext?
Агент Sematext для Docker представляет собой инструмент для сбора журналов, событий и метрик. Он функционирует в виде компактного контейнера, установленного на каждом хосте Docker. Эти агенты обеспечивают сбор метрик, событий и журналов со всех узлов и контейнеров в кластере.
Библиотека собеса по DevOps
Микросервисы захватили мир → а вы готовы управлять их общением?
Пока одни разработчики борются с падающими сообщениями и блокировками в очередях, другие элегантно строят отказоустойчивые распределённые системы. Разница — в глубоком понимании RabbitMQ.
Большинство программистов знают брокеры сообщений поверхностно: отправил → получил → «работает, не трогай». А когда система начинает расти, начинаются проблемы: потерянные сообщения, узкие места в производительности, сложности с масштабированием.
Курс «RabbitMQ для разработчиков и администраторов» — это advanced-погружение для тех, кто хочет стать экспертом. Три месяца практики под руководством профессионалов, и вы научитесь не просто «подключать очереди», а проектировать архитектуру, которая выдержит любые нагрузки.
Что получите:
→ Навыки разработки сложных правил маршрутизации
→ Умение планировать и масштабировать RabbitMQ-кластеры
→ Опыт настройки «Infrastructure as a code»
→ Знания по устранению узких мест и оптимизации производительности
Владение RabbitMQ — это билет в мир высокооплачиваемых позиций архитектора и senior-разработчика микросервисов.
Старт уже 31 июля, но сначала — вступительное тестирование. Скидка 10% действует только до конца месяца.
Проверьте свой уровень и получите доступ к advanced-программе: https://clc.to/ODNoMg
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
🤖 Каковы недостатки монолитной архитектуры?
— Не подходит для частого изменения кода и возможности развертывания новых функций
— Не предназначена для современной инфраструктуры (например, публичных облаков)
— Масштабирование команды для работы с монолитной архитектурой более сложное
— Если один компонент в этой архитектуре выходит из строя, то выходит из строя все приложение.
Библиотека собеса по DevOps
В чем разница между Registry и Repository?
Registry — это сервис хранения и распространения образов, также DockerHub — это Registry по умолчанию. Repository — это набор связанных образов. У них одно и то же имя, но разные метки.
Библиотека собеса по DevOps
Что такое сервисная сетка и почему она используется в Kubernetes?
Сервисная сетка управляет взаимодействием между сервисами, обеспечивая:
✍🏻 Управление трафиком (балансировка нагрузки, канареечные развертывания).
✍🏻 Безопасность (шифрование mTLS между сервисами).
✍🏻 Наблюдаемость (трассировка, метрики, ведение журнала).
Все эти функции включены в инфраструктурный уровень, поэтому вносить изменения в код не требуется. mК популярным решениям относятся: Istio, Linkerd и Consul.
Библиотека собеса по DevOps
В чём разница между Docker-сетями: bridge, overlay и macvlan?
Bridge — для связи контейнеров на одном хосте.
Overlay — для связи между хостами в кластере.
Macvlan — даёт контейнеру IP на уровне физической сети.
Библиотека собеса по DevOps
Что такое Bulk API? Для чего бы вы его использовали?
Bulk API используется, когда вам нужно проиндексировать несколько документов. Для большого количества документов было бы значительно быстрее использовать отдельные запросы, поскольку в сети меньше обращений туда и обратно.
Библиотека собеса по DevOps
В чем разница между ConfigMaps и Secret?
В то время как Secret хранит критически важные данные в зашифрованном виде, ConfigMaps хранит конфигурацию приложения в обычном текстовом формате. Однако оба этих формата можно использовать в качестве тома и монтировать в модуль через файл определения модуля.
Библиотека собеса по DevOps
Поясните разницу между docker run и docker create
Основное различие между этими двумя командами заключается в том, что вторая создаст контейнер в остановленном состоянии. Кроме того, docker create может быть использована для сохранения и вывода идентификатора контейнера для последующего использования. Рекомендуется использовать docker run с опцией --cidfile FILENAME, чтобы избежать перезаписи файла при повторном запуске.
Библиотека собеса по DevOps
Объясните концепцию Sudo в Linux.
Команда sudo (superuser do) в Linux — это мощная утилита, которая позволяет пользователям выполнять команды с привилегиями другого пользователя, обычно суперпользователя или root. Концепция sudo обеспечивает контролируемый способ управления тем, какие пользователи могут выполнять административные задачи, не предоставляя им неограниченный root-доступ.
Библиотека собеса по DevOps
