Библиотека собеса по DevOps | вопросы с собеседований
3.07K subscribers
121 photos
4 videos
2 files
156 links
Вопросы с собеседований по DevOps и ответы на них.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/d7e18893

Работать у нас: https://job.proglib.io/

Наши каналы: https://yangx.top/proglibrary/9197
加入频道
🔟🏩 ТОП-10 перспективных студий разработки: лучшие компании для вашего карьерного роста

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

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

🔗 Читать статью
🔗 Зеркало
Перечислите некоторые исходные пространства имен, из которых запускается Kubernetes.

Вот некоторые начальные пространства имен:
Default: это пространство имен включено Kubernetes, чтобы пользователи могли начать использовать новый кластер без необходимости предварительного создания пространства имен.
Kube-system: это пространство имен для объектов, созданное системой Kubernetes.
Kube-public: это пространство имен доступно для чтения как аутентифицированным, так и неаутентифицированным клиентам. Оно зарезервировано в основном для использования в кластере.
Что такое Docker-агент Sematext?

Агент Sematext для Docker представляет собой инструмент для сбора журналов, событий и метрик. Он функционирует в виде компактного контейнера, установленного на каждом хосте Docker. Эти агенты обеспечивают сбор метрик, событий и журналов со всех узлов и контейнеров в кластере.
💻🔍💼 Кризис IT-рынка: как джуны и кадровый голод меняют правила игры

В условиях нехватки опытных специалистов и наплыва джунов, IT-компании вынуждены искать нестандартные подходы к найму. Рассмотрим основные тренды и стратегии адаптации рынка.

Читать статью

#почитать
Объясните, что такое диспетчер облачного контроллера.

Cloud Controller Manager позволяет связать кластер с API облачного провайдера. Cloud-controller manager позволяет поставщикам облачных услуг развиваться независимо от основного кода Kubernetes, абстрагируя специфичный код. Это позволяет поставщикам облачных услуг разрабатывать и поддерживать свой код независимо от основного кода Kubernetes.

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

Kubernetes (K8s) запускает различные службы на узлах, в том числе:

На рабочих узлах:
kubelet: отвечает за управление узлами и обеспечение того, чтобы контейнеры работали должным образом.
kube-proxy: предоставляет службы сетевого прокси-сервера для обеспечения связи между узлами и службами.
На главных узлах:
kube-apiserver: предоставляет API Kubernetes, через который все остальные компоненты взаимодействуют с кластером.
kube-scheduler: назначает вновь созданные модули узлу на основе доступности ресурсов и других ограничений.
kube-controller-manager: отслеживает состояние кластера и выполняет задачи для поддержания желаемого состояния, такие как масштабирование вверх или вниз.
Другие службы, которые могут работать на рабочих узлах, включают kube-dns, который обеспечивает разрешение DNS для служб Kubernetes, и kubelet, который управляет жизненными циклами модулей на узле.
Что вы знаете о сети Ingress и как она работает?

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

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

Мы можем контролировать использование ресурсов модуля с помощью limit и request.

Request контролирует минимальный гарантированный объем ресурсов (ЦП и памяти), необходимых для контейнера.

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

Вы можете думать об этом так: request — это минимальный объем ресурсов, который может использовать модуль, в то время как limit — это максимальный объем ресурсов, который может использовать модуль.
Перечислите инструменты для оркестровки контейнеров, которые знаете.

Docker Swarm, Apache Mesos, Kubernetes.
😮 SQL: от Тетриса до ИИ — неожиданные возможности языка баз данных

Долгое время SQL использовали лишь для запросов и изменения записей в базах данных — для полноценного программирования в привычном смысле слова он не подходил. Однако добавление рекурсивных общих табличных выражений (CTE) сделало SQL полным по Тьюрингу. Рекурсивные CTE состоят из двух частей:

• Нерекурсивная часть (базовый случай) — создает начальные данные.
• Рекурсивная часть — может выполняться много раз, каждый раз используя результат предыдущего шага.

Благодаря CTE на SQL можно при желании реализовать любой алгоритм. Энтузиасты уже сделали:

Визуализацию множества Мандельброта с помощью ASCII-графики.
3D-движок для рисования объемных фигур.
GPT на 500 строках SQL-кода. Подробная статья о реализации этого проекта опубликована здесь.
Трассировку лучей (это метод создания реалистичных изображений).

На прошлой неделе коллекция крутых SQL-проектов пополнилась еще одной интересной разработкой — версией «Тетриса».

Эта реализация демонстрирует несколько нестандартных SQL-техник, о которых стоит знать, даже если вы используете SQL только по прямому назначению:

• игровой цикл;
• вывод игры;
• пользовательский ввод;
• решение проблемы изоляции данных;
• предотвращение кэширования.

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

🔗 Подробнее читайте в статье
🔗 Зеркало
Почему используется Kube-apiserver?

Kube-apiserver используется для настройки и проверки объектов API. Кроме того, он используется для того, чтобы пользователи могли взаимодействовать с кластером Kubernetes, где используется API сервера Kubernetes. Таким образом, это часть интерфейса плоскости управления, и именно этот интерфейс проверяет, является ли входящий запрос легитимным или нет.

Kube-apiserver проверяет и предоставляет данные для объектов API и включает модули, службы и контроллеры репликации. Сервер API отправляет команды REST-операций и предоставляет самый передовой общий статус кластера, через который взаимодействуют все остальные компоненты.
Какие метки есть в Kubernetes?

Метки представляют собой набор ключей, которые включают определенные значения. Эти значения связаны с модулями, контроллерами репликации и сопутствующими службами. Обычно метки присваиваются объекту в момент его создания, но пользователи могут изменять их в процессе работы.
Можете ли вы назвать мне некоторые команды Kubectl?

kubectl annotate
kubectl config
kubectl autoscale
kubectl config current-context
kubectl apply
kubectl config set.
kubectl cluster-info
kubectl attach
Как выполняется обслуживание узла K8?

Это один из самых популярных вопросов интервью по k8s. Когда обновления безопасности становятся доступными, администратор Kubernetes должен выполнить работу по обслуживанию, применив исправление безопасности к работающему контейнеру, чтобы предотвратить его уязвимости. Чтобы безопасно слить узел K8s, используйте следующие две команды:

kubectl cordon
kubectl drain –ignore-daemon set
Как добавить имеющиеся ресурсы в tfstate? (Terraform)

terraform import [options] ADDRESS ID
Как организация может улучшить свои технические операции и снизить затраты с помощью Kubernetes?

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

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

Горизонтальное масштабирование: Kubernetes позволяет организации масштабировать свои приложения горизонтально, добавляя больше контейнеров в кластер. Эта функция позволяет организациям обрабатывать возросший трафик без избыточного выделения ресурсов, что может привести к экономии средств.

Мониторинг и ведение журнала: Kubernetes предоставляет возможности мониторинга и ведения логов, которые позволяют организации быстро выявлять и устранять проблемы. Используя эти функции, организации могут улучшить технические операции и сократить расходы на устранение неполадок.
🎭 Двойная игра в Power BI: как совмещать роли разработчика и администратора

Когда твой руководитель говорит: «А теперь ты еще и администратор сервера Power BI». Гид по выживанию для разработчика, внезапно ставшего многостаночником.

Читать статью
Можете ли вы перечислить некоторые объекты Kubernetes?

Вот некоторые объекты, используемые Kubernetes:

✍🏻 Pods
✍🏻 Контроллеры и набор репликации
✍🏻 Задания Cron
✍🏻 DaemonSets
✍🏻 Отличительные идентификаторы
✍🏻 Наборы с отслеживанием состояния
✍🏻 Развертывания
🚀 Новые возможности React 19: конец эры повторных рендерингов

Новый компилятор React 19 обещает существенное повышение производительности, что станет настоящим прорывом для разработчиков. Но это лишь верхушка айсберга. В этой статье мы не только разберемся, как работает компилятор, но и погрузимся в мир других новейших возможностей React 19.

🔗 Читать статью
🔗 Зеркало
Перечислите различные типы сервисов в Kubernetes.

Вот некоторые сервисы в Kubernetes:

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

Порт узла: этот тип сервиса предоставляет сервис на статическом порту на каждом узле в кластере. Это делает сервис доступным извне кластера.

Балансировщик нагрузки: этот тип сервиса предоставляет внешний балансировщик нагрузки в облачной инфраструктуре и направляет трафик в службу Kubernetes. Это позволяет вам предоставлять свой сервис в Интернете.

Внешнее имя: этот тип службы сопоставляет службу с внешним именем DNS. Это позволяет вам ссылаться на внешние службы по имени из вашего кластера.