Skip to content

Latest commit

 

History

History
138 lines (111 loc) · 11 KB

devops.md

File metadata and controls

138 lines (111 loc) · 11 KB

Вопросы для DevOps-инженеров

Вопросы по soft skills

Junior

Общие вопросы

  1. С какими менеджерами задач работал?
  2. Какие инструменты используешь?
  3. Сталкивался ли с ревью кода? Как проходило ревью? По какому принципу бы сам проводил ревью?
  4. Приходилось работать с пайплайнами Gitlab Runner? Какие виды пайплайнов есть?
  5. Набираю в командной строке curl https://example.com/ расскажите детально что происходит дальше.
  6. Почему символ DevOps - бесконечность?
  7. Что такое трассировка, для чего может использоваться?
  8. Работал ли с брокерами сообщений? Можешь рассказать, что это такое?
  9. Работал ли с системами мониторинга и логирования?

Docker

  1. Приходилось самостоятельно писать Dockerfile? Чем отличается команда ADD от COPY?
  2. Для чего нужны CMD, ENTRYPOINT?
  3. В Docker есть понятие слоев. Что это такое?
  4. В слой делаем run yum update. Как Docker понимает, что нужно пересобирать кэш, сбросить кэш или он yum update один раз сделал и больше делать его не будет?
  5. В Docker есть понятие multi-stage? Что это такое, зачем используется?
  6. Мультистейдж в Docker, для чего?
  7. Команда COPY . . Хотим все, что у нас в корне, скопировать в корень контейнера. Мы можем ограничить, что будет копироваться? В Dockerfile не меняем ничего.
  8. Как посмотреть логи работающего контейнера? Как посмотреть определённое количество строк лога?
  9. Как попасть в bash работающего контейнера?
  10. Развернули контейнер, как попасть внутрь? Как обеспечить доступ извне?
  11. Приходилось работать с volume в Docker?
  12. Мы можем примонтировать директорию к контейнеру, а можем указать "используй такой-то volume". В чем разница?
  13. Зачем нужен Docker Compose?

Сети

  1. Необходимо отследить путь от одного хоста к другому, какой командой можно это сделать?
  2. Что такое TTL?
  3. У меня есть клиент-сервер. Как замерить пропускную способность между клиентом и сервером, какой командой?
  4. TCP и UDP, в чем отличия? За счёт чего и какие гарантии доставки?
  5. Клиент что-то отправляет на сервер. Во время соединения был перезагружен роутер. Будет ли доставлен пакет после перезагрузки роутера? В течение какого времени возможна доставка?
  6. Отличия HTTP и HTTPS. Плюсы HTTPS помимо шифрования. За счёт чего нельзя просто подменить запрашиваемый сайт. HTTP это текстовый или бинарный протокол?
  7. Сталкивался с REST? Какие методы есть, чем отличаются, когда используются? Основные 5. Отличия GET и POST.
  8. URL при использовании HTTPS зашифрован? Если взять POST, то в URL мы можем передать информацию?
  9. Basic auth. Что это такое и как оно передаёт свои данные?
  10. Есть URL, тело запроса. Что еще передается при запросе?
  11. Какие типы http-заголовков знаешь?
  12. Что делает балансировщик нагрузки?

Linux

  1. У нас есть какой-то диск, который хотим примонтировать в Linux. Как это можно сделать? Останется ли примонтирован диск после перезагрузки при монтировании командой mount. Опции монтирования fstab - какие есть, зачем нужны?
  2. Метрики. I/O wait time - что оно показывает? Как проверить загруженность диска? Как посмотреть количество свободной оперативной памяти?
  3. Команда free - чем столбец free отличается от available. Что показывают остальные столбцы?
  4. Представим, что есть файл с логами. Внутри него есть сообщения типа Warning, INFO, ERROR и так далее. Как посмотреть только ошибки в файле лога? Как посмотреть саму ошибку и 10 строчек до и после неё?
  5. Какие механизмы ядра Linux используются для виртуализации?

Ansible

  1. Чем плэйбук отличается от роли Ansible?
  2. Какие типы переменных есть у роли Ansible?
  3. Какой приоритет у переменных Ansible? Как переопределить переменную роли?

Базы данных

  1. Что такое реляционная база данных?
  2. Зачем в базах данных нужны транзакции?
  3. Что такое индексы в бд?

Middle

Общие вопросы

  1. Мы хотим собрать проект на Go. Какой порядок действий?
  2. С какими базами данных приходилось работать?
  3. Как поддерживали и разворачивали инфраструктуру с помощью Terraform?
  4. Что такое REST API?
  5. У нас есть инфраструктура полностью без Ansible. Что нужно для того, чтобы начать им пользоваться?
  6. Как бы ты хранил чувствительные данные в Ansible плейбуках?

Docker

  1. Из чего состоит Docker?
  2. Отличие контейнеризации от виртуализации.
  3. Отличие RUN, CMD и ENTRYPOINT.
  4. Без какой инструкции не запустится контейнер?
  5. На каких технологиях построена контейнеризация (Docker)?
  6. Как изменить настройки ядра в контейнере?

Helm

  1. Какие варианты знаешь, как развернуть Helm chart на 3 разные зоны?
  2. Helm писал для проектов один общий или разные для разных проектов? Писал ли зависимости для Helm?
  3. Что такое Helm? Зачем используется?
  4. Мы задеплоили Helm chart и потом в темплейте поменяли значения replicaCount подов в Deployment, и потом пишем helm upgrade --install. Что произойдет в Kubernetes?
  5. Точно такой же кейс, но с ConfigMap. Что будет?

Kubernetes

  1. Работал с Kubernetes? Расскажи про свой опыт.
  2. Из чего состоит Kubernetes (архитектура)?
  3. Что такое pod, для чего он нужен?
  4. Namespace в Kubernetes. Для чего он?
  5. Чем можно разворачивать поды? Отличие Deployment, StatefulSet и ReplicaSet.
  6. Как Kubernetes-сервис находит, куда отправлять запросы?
  7. kube-proxy. Расскажи подробнее.
  8. Какие есть сущности для управления подами?
  9. Отличие ReplicaSet, Deployment, StatefulSet и DaemonSet.
  10. Для какой абстракции не нужен Kube scheduler?
  11. Какие есть ограничения ресурсов в Kubernetes (QoS)?
  12. Минусы request ограничения.
  13. Варианты, как можно выкинуть приложения наружу.
  14. Можно ли сделать так, чтобы pod всегда попадал на определенную ноду?
  15. Отличие label и selector.
  16. Как ты будешь реализовывать скейлинг приложений в кластере?
  17. Допустим, у нас limit и request разные, и в кластере ресурсов меньше, чем в лимите, даст ли нам выложить pod в кластер?
  18. Сколько мне нужно мастер-нод для отказоустойчивого кластера?
  19. Хочу задеплоить сервис и потом увидеть его с ноутбука. Какие минимальные ресурсы мне нужны для этого?
  20. Набираю в командной строке kubectl apply -f nginx.yml расскажи детально, что происходит дальше.
  21. Что такое init и sidecar контейнеры?
  22. Зачем нужны pause контейнеры?
  23. Что такое throttling?

Linux

  1. Процесс и поток в Линуксе, в чем отличие?
  2. Load average. Что это такое? Что делать, если высокий LA?
  3. Как найти процесс и информацию о нем?
  4. Cache в Linux, что это? Почему иногда говорят его выключать?
  5. RAID в Linux, что это?
  6. Сможешь описать полный процесс загрузки OS Linux?.
  7. Userspace и systemspace. Отличия, зачем они нужны?
  8. Почему некоторые сетевые службы запускаются в kernelspace, а не в виде демона?
  9. Вывод команды top. Что означают колонки памяти у процесса?
  10. Как вывести список домашних директорий для пользователей с непустым паролем?
  11. Что такое namespaces, cgroups, capabilities в Linux?