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

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

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

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

Наши каналы: https://yangx.top/proglibrary/9197
加入频道
Что такое метаданные?

Данные о данных. По сути, они описывают тип информации, которую будут содержать базовые данные.
Для чего нужна команда git commit --amend?

commit --ammend используется для исправления сообщения последнего коммита. Также возможно использовать, чтобы добавить файлы в индекс (git add), после добавить файлы в коммит git commit --ammend.
Вакансии «Библиотеки программиста» — ждем вас в команде!

Мы постоянно растем и развиваемся, поэтому создали отдельную страницу, на которой будут размещены наши актуальные вакансии. Сейчас мы ищем:
👉контент-менеджеров для ведения телеграм-каналов

Подробности тут

Мы предлагаем частичную занятость и полностью удаленный формат работы — можно совмещать с основной и находиться в любом месте🌴

Ждем ваших откликов 👾
🐧🎭 10 дистрибутивов Linux на грани безумия и гениальности: от Windows-клона до самоуничтожающейся ОС

Мир Linux полон сюрпризов, и эти 10 дистрибутивов — яркое тому подтверждение.

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

#гайд
Зачем нужен балансировщик нагрузки?

Балансировщик нагрузки играет важную роль, так как он обеспечивает эффективное распределение сетевого трафика между различными сервисами, работающими на стороне сервера.
🔟🏩 ТОП-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