ru
Feedback
Библиотека собеса по DevOps | вопросы с собеседований

Библиотека собеса по DevOps | вопросы с собеседований

Открыть в Telegram

Вопросы с собеседований по DevOps и ответы на них. По рекламе: @proglib_adv Учиться у нас: https://proglib.io/w/d7e18893 Для обратной связи: @proglibrary_feeedback_bot

Больше
3 420
Подписчики
Нет данных24 часа
+37 дней
+2530 день
Архив постов
Какие типы монтирования доступны в Docker? Bind mount: подключаются к любой точке файловой системы сервера; Volume mount: управляются Docker и хранятся как часть файловой системы сервера; tmpfs mount: хранятся в оперативной памяти сервера, поэтому никогда не пишутся на реальную файловую систему сервера. Библиотека собеса по DevOps

Назовите инструменты Ansible Вот список различных инструментов, которые вы можете упомянуть во время собеседования с разработчиком: Ansible Galaxy: веб-сайт Galaxy позволяет вам находить роли в сообществе и делиться ими, чтобы сэкономить ваше время. Ansible Tower: инструмент командной строки (также с графическим компонентом), предоставляющий дополнительные функциональные возможности. Visual Studio Code: разработанный Microsoft редактор кода с поддержкой YAML и Ansible посредством расширений. Atom: текстовый редактор с открытым исходным кодом для отслеживания изменений проекта, полезный для интеграции с файлами YAML. Библиотека собеса по DevOps

Объясните Kubernetes RBAC. Это означает Role-Based Access Control (управление доступом на основе ролей). Он позволяет управлять разрешениями для пользователей и групп внутри кластера Kubernetes. С помощью RBAC можно устанавливать разрешения на доступ и требуемые условия для получения доступа. Роли определяют набор разрешений, предоставляемых пользователям или группам, а привязки ролей связывают роли с определенными пользователями или группами. Используя RBAC, вы можете ограничить доступ к конфиденциальным ресурсам и гарантировать, что только авторизованные пользователи и приложения могут выполнять определенные действия в кластере. Это помогает повысить безопасность и надежность вашей среды Kubernetes. Библиотека собеса по DevOps

Что такое Docker Compose и чем он отличается от Dockerfile? Docker Compose — это инструмент для определения и управления многоконтейнерными приложениями Docker с помощью файла YAML (docker-compose.yml). Он позволяет нам настраивать сервисы, сети и тома в одном файле, что упрощает управление сложными приложениями. Отличия от Dockerfile: — Dockerfile используется для создания одного образа Docker путем определения его слоев и зависимостей. — Docker Compose используется для запуска и оркестровки нескольких контейнеров, которые могут полагаться друг на друга (например, контейнер веб-приложения и контейнер базы данных). Например, файл docker-compose.yml может выглядеть так: version: '3.9' services: web: build: . ports: - "5000:5000" depends_on: - db db: image: postgres volumes: - db-data:/var/lib/postgresql/data volumes: db-data: В этом файле определяются два сервиса: web и db, с конфигурациями сети и томов. Библиотека собеса по DevOps

Что такое Logstash? Logstash — это мощный и гибкий конвейер, который собирает, обогащает и транспортирует данные. Он работает как инструмент извлечения, преобразования и загрузки для сбора сообщений логов. Библиотека собеса по DevOps

В Kubernetes-продакшене вы замечаете, что при пике нагрузки некоторые Pod’ы начинают завершаться с ошибкой OOMKilled, хотя лимиты памяти выставлены корректно. Как будете диагностировать и решать проблему? Проверить метрики Pod’ов (kubectl top, Prometheus/Grafana), проанализировать, не занижены ли requests/limits. Проверить утечки памяти в приложении, использование кэшей и сторонних библиотек. Для решения — оптимизировать код, вынести тяжёлые задачи в sidecar/job, при необходимости поднять лимиты памяти или включить горизонтальное масштабирование (HPA). Библиотека собеса по DevOps

Что такое автоматизация? Чем это связано или отличается от оркестровки? Автоматизация — это процесс автоматизации задач, позволяющий уменьшить вмешательство человека или взаимодействие с ИТ-технологиями и системами. В то время как автоматизация фокусируется на уровне задач, оркестровка — это процесс автоматизации процессов и/или рабочих процессов, который состоит из множества задач, обычно выполняемых в нескольких системах. Библиотека собеса по DevOps

Последний шанс: 3 курса по цене 1 и запуск AI-агентов в продакшн На собеседованиях DevOps-инженеров теперь спрашивают не только про Kubernetes, но и про AgentOps. Как обеспечить Observability мультиагентной системы, отслеживать стоимость токенов и не нарушить 152-ФЗ? Обновлённая программа делает упор на жёсткий инжиниринг и вывод в прод. Вы научитесь строить ReAct-циклы, работать с LangGraph и AutoGen, внедрять продвинутый RAG, протоколы MCP и AgentOps. Все ключевые навыки в одном месте: измеримость систем, time-travel дебаггинг, управление браузером, human-in-the-loop и развёртывание в закрытых контурах. Почему нельзя откладывать: — масштабная акция «3 курса по цене 1» сгорает уже сегодня; — промокод Agent на скидку 10 000 рублей действует последние часы; — сразу после оформления открываются материалы для подготовки — начать учиться можно прямо сейчас. Забронировать место на курсе и забрать бонусы до конца дня

Вы заметили, что контейнеры в продакшене начинают работать медленнее со временем. Мониторинг показывает рост использования диска внутри контейнера, хотя приложение не пишет данные в тома. Как вы будете искать и устранять проблему? Проверить, не накапливаются ли временные файлы или логи внутри контейнера (слои copy-on-write). Использовать docker system df, docker inspect и docker logs для анализа. При необходимости — подключить тома/лог-агрегатор вместо записи в контейнерную ФС. Пересобрать образ так, чтобы данные не сохранялись в контейнере. Библиотека собеса по 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

За год мы провели три потока курса по ИИ-агентам, а теперь запускаем масштабное обновление! В новом, четвёртом потоке мы учли все пожелания студентов, добавили большой блок про AgentOps и сместили фокус с базовых концепций на суровый инжиниринг. Рассказать про CI/CD пайплайны на собеседовании легко, а вот настроить трассировку и лимитировать потребление ресурсов ИИ-агентом в проде — задача со звёздочкой. В программе: — практика с первого занятия: Jupyter-ноутбуки с автопроверкой; — оркестрация в LangGraph: human-in-the-loop и механизм time-travel; — продвинутый RAG для продакшена и парсинг сложных документов; — контроль экономики агентов: маршрутизация и кеширование запросов; — развёртывание локальных опенсорс-моделей с соблюдением 152-ФЗ. В честь старта продаж действует спецпредложение: 3 курса по цене 1 (два дополнительных курса в подарок). Доступ к материалам для предварительной подготовки откроется сразу после оплаты. По промокоду Agent забирайте скидку 10 000 ₽ (89 000 ₽ вместо 99 000 ₽). Успейте занять место до 28 февраля! 👉 Присоединиться к четвёртому потоку и настроить AgentOps

🔥 Кто такой DevOps-инженер? Человек, что стоит на страже покоя. Человек, способный помирить программиста и системного администратора. Человек, способный сохранить бизнесу миллионы. В этом ролике кратко рассказывается про задачи DevOps и про необходимые навыки. Также самое интересное — зарплаты DevOps-инженера. Смотреть видео Библиотека собеса по DevOps

В чем разница между deployment и statefulset? В наименованиях PODов есть различия: в deployment в качестве суффикса используется случайный хеш, а в statefulset — порядковый номер. Каждый POD в statefulset имеет особое доменное имя, по которому к нему можно обратиться (это особенно полезно, например, для mongodb, где клиент должен знать имена всех узлов кластера). При работе с дисками (volume) statefulset использует алгоритм работы at most once, который ожидает завершения работы предыдущего POD с таким же именем, чтобы занять его привязанный диск, в то время как PODы deployment'а могут занять первый доступный диск. В стратегиях перезапуска PODов при обновлении также имеются различия. Библиотека собеса по DevOps

В чем отличие меток (labels) от аннотаций (annotations)? Метки используются для создания механизмов поиска и группировки объектов, в то время как аннотации используются для добавления метаинформации к объекту. Например, с помощью аннотаций можно запретить service mesh внедрять sidecar-контейнеры в определенные поды. Библиотека собеса по DevOps

Что такое CSI-плагин? Это концепция, которая обеспечивает единообразное использование сетевых файловых систем, построенных на различных технологических основах. Мы определяем storageClass, который соответствует дискам определенного типа, и разворачиваем provisioner в кластере — специальное программное обеспечение, способное заказывать сетевые диски в системе, способной их предоставлять (например, NAS или СХД). Затем мы создаем объект persistentVolumeClaim, указывая нужный storageClass. При появлении запроса на persistentVolumeClaim, provisioner заказывает диск необходимого размера в системе, которая их предоставляет, создает объект persistentVolume и связывает его с persistentVolumeClaim. При запуске POD на узле, соответствующий диск монтируется на этот узел по определенному пути, который затем монтируется на файловую систему POD. Библиотека собеса по DevOps

Что такое финалайзеры (finalizers) и для чего они нужны? Это уникальные ключи в манифесте объекта, которые определяют операции, необходимые для выполнения перед удалением объекта. Например, они используются для предотвращения удаления pvc и pv при активном PODе. Библиотека собеса по DevOps

Какие типы volum’ов можно использовать в k8s? Для подключения папки на ноде можно воспользоваться hostpath, однако необходимо учитывать, что POD должен быть привязан к конкретной ноде. В случае перемещения POD на другую ноду, он будет использовать ту же папку, но содержимое в ней может отсутствовать. Другой вариант использования — local-storage, который также использует папку на диске, но привязан к конкретной ноде и автоматически привязывает POD к нужной ноде. Также есть возможность использовать сетевые диски с помощью CSI-плагинов. Библиотека собеса по DevOps

Определите услугу/проект, используемый для каждого из следующих действий: Копирование или снимок инстансов Графический интерфейс для просмотра и изменения ресурсов Блочное хранилище Управление виртуальными инстансами По порядку: Glance, Horizon, Cinder, Nova Библиотека собеса по DevOps

Что такое CNI-плагин и для чего он нужен? Аббревиатура CNI расшифровывается как Container Network Interface. Это представляет собой уровень абстракции над реализацией сети, позволяя работать с верхнеуровневыми абстракциями, такими как IP-адрес PODа и Endpoint. CNI-плагин отвечает за то, как это будет реализовано на физическом уровне. Существует множество CNI-плагинов (например, Flannel, Calico, Cilium), которые предлагают различный функционал и сетевую производительность. Они могут быть простыми, использующими L3-маршрутизацию, iptables и IPVS, а также достаточно сложными, обеспечивающими шифрование внутреннего трафика, поддержку VLAN, маршрутизацию на основе IBGP, поддержку EGRESS и другие функции.Библиотека собеса по DevOps

Что такое CRI? CRI означает интерфейс выполнения контейнера. Это спецификация, описывающая определенный уровень абстракции, позволяющая унифицированно использовать различные версии программного обеспечения для работы с контейнерами, такими как Containerd или CRI-O. Библиотека собеса по DevOps