HR-блог про IT рекрутинг от ИТ Кадрового агентства

Вопросы на собеседовании DevOps: Kubernetes

Вопросы для собеседования
Kubernetes происходит от греческого слова «капитан», «рулевой» или «губернатор». Этот термин теперь также используется в мире DevOps и локальной разработки программного обеспечения для обозначения мощного набора решений, которые позволяют инженерам по эксплуатации легко масштабировать и настраивать серверные (и коробочные) службы.
Эта статья с вопросами об интервью с Kubernetes поможет вам подготовиться к любому собеседованию. Итак, без лишних слов, давайте пропустим вперед и ознакомимся с главными вопросами и ответами на интервью Kubernetes.
Как Рекрутер помимо найма может зарабатывать от 1 млн. рублей в месяц? Скачивайте бесплатно полный гайд по ссылке!

Что такое Кубернетес?

Это один из основных вопросов на собеседовании в Kubernetes, но один из самых важных! Kubernetes — это инструмент или система оркестрации (или оркестрации) контейнеров с открытым исходным кодом, которая используется для автоматизации таких задач, как управление, мониторинг, масштабирование и развертывание контейнерных приложений. Он используется для простого управления несколькими контейнерами (поскольку он может обрабатывать группы контейнеров), что дает вам возможность обнаруживать логические единицы и управлять ими.

Что такое К8с?

K8s — это еще один термин для Kubernetes.

Что такое оркестровка, когда речь идет о программном обеспечении и DevOps?

Оркестрация относится к интеграции нескольких служб, которая позволяет им автоматизировать процессы или своевременно синхронизировать информацию. Например, предположим, что у вас есть шесть или семь микросервисов для запуска вашего приложения. Если поместить их в отдельные контейнеры, это неизбежно создаст препятствия для общения. Оркестрация поможет в этой ситуации, позволяя всем службам в каждом контейнере работать беспрепятственно для достижения цели беспрепятственного развертывания приложений.

Как связаны Kubernetes и Docker?

Docker — это платформа с открытым исходным кодом для поддержки разработки программного обеспечения. Его главное преимущество заключается в том, что он «упаковывает» настройки и зависимости, необходимые для запуска программного обеспечения/приложения, в контейнере, что обеспечивает переносимость и некоторые другие преимущества. Kubernetes позволяет вручную подключать и организовывать несколько многоузловых контейнеров, созданных с помощью Docker.

Каковы основные различия между Docker Swarm и Kubernetes?

Docker Swarm — это собственная платформа Docker для оркестровки контейнеров с открытым исходным кодом для кластеризации и планирования контейнеров Docker. Swarm отличается от Kubernetes следующим образом:
  • Он более удобен в настройке, но не имеет надежного кластера, в то время как Kubernetes сложнее в настройке, но его преимущество заключается в гарантии надежного кластера.
  • Не может выполнять автомасштабирование (как Kubernetes); однако масштабирование Docker в пять раз быстрее, чем у Kubernetes.
  • Графического интерфейса нет. Kubernetes имеет графический интерфейс в виде панели инструментов.
  • Выполняет автоматическую балансировку нагрузки трафика между контейнерами в кластере, в то время как Kubernetes требует ручного вмешательства для балансировки нагрузки такого трафика.
  • Docker требует сторонних инструментов, таких как стек ELK, для ведения журнала и мониторинга, в то время как Kubernetes имеет встроенные инструменты для того же.
  • Он может легко совместно использовать тома хранилища с любым контейнером, в то время как Kubernetes может совместно использовать тома хранилища только с контейнерами в одном модуле.
  • Docker может развертывать последовательные обновления, но не может выполнять автоматический откат. Kubernetes может развертывать последовательные обновления , а также автоматические откаты.

В чем разница между развертыванием приложений на хостах и ​​в контейнерах?

Развертывание приложения состоит из архитектуры с операционной системой. Операционная система будет иметь ядро, содержащее различные библиотеки, установленные в операционной системе, необходимые для приложения.
Принимая во внимание, что контейнерный хост относится к системе, в которой выполняются контейнерные процессы. Этот вид изолирован от других приложений; поэтому приложения должны иметь необходимые библиотеки. Двоичные файлы отделены от остальной системы и не должны мешать другим приложениям.

Каковы особенности Kubernetes?

  • Kubernetes дает пользователю контроль над тем, где на сервере будет размещаться контейнер. Он будет контролировать, как он начинается. Итак, Kubernetes автоматизирует различные ручные процессы.
  • Kubernetes одновременно управляет разными кластерами.
  • Он предоставляет различные дополнительные услуги, такие как управление контейнерами, безопасность, сеть и хранилище.
  • Kubernetes самостоятельно отслеживает работоспособность узлов и контейнеров.
  • С Kubernetes пользователи могут слишком легко и быстро масштабировать ресурсы не только по вертикали, но и по горизонтали.

Каковы основные элементы архитектуры Kubernetes?

В архитектуре Kubernetes есть два основных компонента: главный узел и рабочий узел. Каждый из этих компонентов имеет отдельные компоненты внутри него.

Объясните, как мастер-узел работает в Kubernetes?

Главный узел идентифицирует узел, который контролирует и управляет набором рабочих узлов. Это похоже на кластер в Kubernetes. Узлы отвечают за управление кластером и API, используемым для настройки и управления ресурсами в коллекции. Мастер-узлы Kubernetes могут работать с самим Kubernetes, ресурсом выделенных модулей .

Какова роль Kube-apiserver?

Проверяет и предоставляет данные конфигурации для объектов API. Включает модули, сервисы, контроллеры репликации. Он также обеспечивает операции REST, а также внешний интерфейс кластера. Это общее состояние, в котором взаимодействуют все остальные компоненты.

Что такое узел в Kubernetes?

Узел — это наименьшая базовая единица компьютерного оборудования. Представляет одну машину в кластере, которая может быть физической машиной в центре обработки данных или виртуальной машиной от облачного провайдера. Любая машина может заменить любую другую машину в кластере Kubernetes. Мастер в Kubernetes управляет узлами, имеющими контейнеры.

Что содержит статус узла?

Основными компонентами состояния узла являются адрес, состояние, пропускная способность и информация.

Какой процесс запущен на главном узле Kubernetes?

Серверный процесс kube-api запускается на головном узле и используется для масштабирования развертывания дополнительных экземпляров.

Что такое pod в Kubernetes?

Pod — это абстрактный объект Kubernetes, представляющий группу из одного или нескольких контейнеров (например, Docker) вместе с общими ресурсами для этих контейнеров. Ресурсы могут быть:
  • Общее пространство для хранения, например тома
  • Сетевые ресурсы, такие как уникальный IP-адрес кластера
  • Информация, используемая для запуска каждого из контейнеров ⏤ версия образа для контейнера или используемые номера портов.

Для чего нужен kube-scheduler?

Kube-scheduler назначает узлы вновь созданным подам.

Что такое контейнерный кластер в Kubernetes?

Контейнерный кластер — это набор машинных элементов, которые являются узлами. Кластеры инициируют определенные маршруты, чтобы контейнеры, работающие на узлах, могли взаимодействовать друг с другом. В Kubernetes механизм контейнера (а не сервер API Kubernetes) размещает сервер API.

Что такое Google Container Engine?

Google Container Engine — это платформа управления с открытым исходным кодом, предназначенная для контейнеров и кластеров Docker для поддержки кластеров, работающих в общедоступных облачных службах Google.

Что такое наборы демонов?

Набор модулей, который работает только один раз для каждого хоста. Они используются для атрибутов уровня хоста, таких как сеть, или для мониторинга сетей, которые не нужно запускать на хосте более одного раза.

Что такое «Heapster» в Kubernetes?

Heapster — это система мониторинга производительности и сбора метрик для данных, собираемых Kublet . Этот агрегатор изначально поддерживается и работает как любой другой модуль в кластере Kubernetes, позволяя ему обнаруживать и запрашивать данные об использовании со всех узлов в кластере.

Что такое Миникуб?

С Minikube пользователи могут использовать Kubernetes локально. Этот процесс позволяет пользователю запускать кластер Kubernetes с одним узлом на персональном компьютере, включая компьютеры Windows, macOS и Linux. Это позволяет пользователям опробовать Kubernetes и для своей повседневной работы по разработке.

Что такое пространство имен в Kubernetes?

Пространства имен используются для совместного использования ресурсов кластера несколькими пользователями. Они предназначены для сред с большим количеством пользователей, распределенных по проектам или группам, и предоставляют широкий спектр ресурсов.

Исходные пространства имен Kubernetes?

  • По умолчанию
  • Куб - система
  • Куба - общественный

Что такое диспетчер контроллеров Kubernetes?

Диспетчер контроллеров — это демон, используемый для внедрения базовых циклов управления, сборки мусора и создания пространства имен. Позволяет запускать несколько процессов на головном узле, даже если они скомпилированы для запуска как один процесс.

Какие бывают типы менеджеров контроллеров?

Менеджеры первичных контроллеров, которые могут работать на главном узле:
  • конечные точки,
  • сервисные счета,
  • пространство имен,
  • морской узел,
  • жетоны,
  • контроллер репликации

Что такое etcd?

Kubernetes использует etcd как распределенное хранилище для всех своих данных, включая метаданные и данные конфигурации, и позволяет узлам в кластерах Kubernetes читать и записывать данные. Хотя etcd был специально создан для CoreOS, он также работает в различных операционных системах (например, Linux, BSB и OS X), поскольку имеет открытый исходный код. Etcd представляет состояние кластера в определенный момент времени и является каноническим центром управления состоянием кластера и координации кластера Kubernetes.

Доступны ли сервисы Kubernetes?

Различные типы сервисов Kubernetes включают в себя:
  • IP-адрес кластера
  • порт узла
  • создание внешнего имени
  • балансировщик нагрузки

Что такое кластерный IP?

ClusterIP — это служба Kubernetes по умолчанию, которая предоставляет службу внутри кластера (без доступа извне), к которой могут обращаться другие приложения в кластере.

Что такое NodePort?

Служба NodePort — это самый простой способ маршрутизации внешнего трафика непосредственно к вашей службе. Открывает указанный порт на всех узлах и перенаправляет весь трафик, отправленный на этот порт, службе.

Что такое LoadBalancer в Kubernetes?

Служба LoadBalancer используется для предоставления услуг в Интернете. Например, балансировщик сетевой нагрузки создает один IP-адрес, который перенаправляет весь трафик в вашу службу.

Что такое сеть Ingress и как она работает?

Ingress — это объект, который позволяет пользователям получать доступ к сервисам Kubernetes из-за пределов кластера Kubernetes. Пользователи могут настраивать доступ, создавая правила, определяющие, какие входящие соединения достигают каких служб.
Как это работает. Это объект API, предоставляющий правила маршрутизации для управления доступом внешних пользователей к службам в кластере Kubernetes по HTTPS/HTTP. Это позволяет пользователям легко настраивать правила маршрутизации трафика без создания нескольких балансировщиков нагрузки или компрометации каждого сервисного узла.

Что вы подразумеваете под диспетчером облачных контроллеров?

Вы наверняка слышали о публичных, частных и гибридных облаках. Используя технологию облачной инфраструктуры, вы можете запустить на них Kubernetes. В контексте Cloud Controller Manager это компонент панели управления, в который встроена логика управления для конкретного облака. Этот процесс подключает кластер к API облачного провайдера и отделяет компоненты, взаимодействующие с облачной платформой, от компонентов, взаимодействующих только с кластером.
Это также позволяет облачным провайдерам выпускать функции не так быстро, как в основном проекте Kubernetes. Он построен с использованием механизма подключаемых модулей и позволяет различным поставщикам облачных услуг интегрировать свои платформы с Kubernetes.
Хотите узнать, насколько хорошо у вас налажены HR-процессы по найму? Скачивайте бесплатно Чек-лист здоровья найма!

Что такое мониторинг ресурсов контейнера?

Это относится к действию, которое собирает метрики и отслеживает работоспособность контейнерных приложений и сред микрослужб. Это помогает улучшить здоровье и производительность, а также обеспечивает бесперебойную работу.

В чем разница между набором реплик и контроллером репликации?

Контроллер репликации обозначается аббревиатурой RC. Это пакет стручков. Он предоставляет дополнительную функциональность ресурсам, которые предлагают реплики.
Он отслеживает модули и автоматически перезапускает их в случае сбоя. Если узел выйдет из строя, этот контроллер перезапустит все модули этого узла на другом узле. Если стручки умирают, они не будут появляться снова, если только они не обернуты вокруг набора реплик.
С другой стороны, Replica Set сокращенно обозначается как RS. Говорят, что это контроллер репликации следующего поколения. Этот тип поддержки имеет несколько типов селекторов и поддерживает селекторы на основе равенства и на основе набора.
Позволяет фильтровать по метке и ключевым значениям. Чтобы соответствовать объекту, он должен соответствовать всем указанным ограничениям метки.

Что такое безголовый сервис ?

Эта служба используется для связи с механизмами обнаружения служб без привязки к ClusterIP, что обеспечивает прямой доступ к модулям без необходимости доступа к ним через прокси. Это полезно, когда не требуется ни балансировка нагрузки, ни один IP-адрес службы.

Что такое федеративные кластеры?

Объединение нескольких кластеров, которые рассматривают их как один логический кластер, относится к федерации кластеров. В этом случае несколькими кластерами можно управлять как одним кластером. Они остаются с помощью федеративных групп. Кроме того, пользователи могут создавать различные кластеры в центре обработки данных или облаке и использовать федерации для контроля или управления ими из одного места.
Объединение кластеров можно выполнить, выполнив следующие действия:
Межкластерный, который обеспечивает возможность иметь DNS и Load Balancer с серверной частью из участвующих кластеров.
Пользователи могут синхронизировать ресурсы в кластерах, чтобы развернуть один и тот же комплект развертывания в кластерах.

Что такое Кубелет?

kubelet — это сервисный агент, который контролирует и поддерживает набор модулей, просматривая спецификации модулей через API-сервер Kubernetes. Он поддерживает жизненный цикл модуля, гарантируя, что заданный набор контейнеров работает должным образом. Kubelet работает на каждом узле и обеспечивает связь между ведущими и подчиненными узлами.

Что такое Кубектл?

Kubectl — это CLI (интерфейс командной строки), используемый для запуска команд в кластерах Kubernetes. Таким образом, он управляет диспетчером кластера Kubernetes с помощью различных команд сборки и управления в компоненте Kubernetes.

Меры безопасности в Kubernetes?

Примеры стандартных мер безопасности Kubernetes включают определение лимитов ресурсов, поддержку аудита, ограничение доступа и т. д., регулярные обновления безопасности среды, сегментацию сети, определение строгих политик ресурсов, непрерывное сканирование на наличие уязвимостей и использование образов из авторизованных репозиториев.

Что такое kube-прокси?

kube-proxy — это балансировщик нагрузки и реализация сетевого прокси для абстрагирования службы от других сетевых операций. Kube-proxy отвечает за направление трафика в соответствующий контейнер на основе IP-адреса и номера порта входящих запросов.

Как получить статический IP-адрес для балансировщика нагрузки в Kubernetes?

Статический IP-адрес балансировщика нагрузки Kubernetes можно получить, изменив записи DNS, поскольку мастер Kubernetes может назначить новый статический IP-адрес.
Наше агентство по подбору ИТ-персонала предлагает вам найти квалифицированных DevOps инженеров за срок менее 2 недель. Свяжитесь с нами прямо сейчас, чтобы узнать подробнее о возможностях расширения вашего будущего проекта. Мы обеспечиваем подбор лучших кандидатов по разумной цене. За 10 лет работы в этой сфере мы успешно заполнили свыше 5500 вакансий и сформировали 25+ команд с нуля. Проверьте отзывы от наших клиентов об агентстве и убедитесь в нашей компетентности! Если требуются дополнительные рекомендации, пишите нам в Telegram.