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

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

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

Для обратной связи: @proglibrary_feeedback_bot
加入频道
🔥 Последняя неделя перед стартом курса по AI-агентам

Старт курса уже 5го числа! Если вы планировали вписаться — сейчас ПОСЛЕДНИЙ шанс забронировать место

На курсе:
разложим LLM по косточкам: токенизация, SFT, PEFT, инференс
— соберём RAG и научимся оценивать его адекватно
— построим настоящую мультиагентную систему — архитектуру, которая умеет расти
— разберём CoPilot, сломаем через prompt injection (спасибо Максу)
— и наконец, посмотрим, как это работает в MCP и реальных кейсах

📍 Это 5 живых вебинаров + раздатка + домашки + чат с преподавателями

И главное — возможность реально разобраться, как проектировать системы на LLM, а не просто «поиграться с API»

👉 Курс здесь
Что вы знаете о сетевой политике Kubernetes?

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

Библиотека собеса по DevOps
Как удалить развертывание Kubernetes с именем «my-deployment»?

👾
— kubectl delete deployment my-deployment
👍 — kubectl remove deployment my-deployment
🥰 — kubectl rm deployment my-deployment
— kubectl delete deploy my-deployment

Библиотека собеса по DevOps
Please open Telegram to view this post
VIEW IN TELEGRAM
👾6🙏1
Как можно безопасно слить узел K8s?

Мы можем использовать следующие команды:

— «kubectl cordon», чтобы пометить узел как «непланируемый». Это переводит узел в режим обслуживания и предотвращает планирование на нем новых модулей.
— Команда «kubectl drain –ignore-daemon-set» удаляет существующие модули с узла. Параметр «--ignore-daemon-set» пропустит все модули, которые являются частью DaemonSet, что гарантирует, что основные системные службы не будут нарушены.


Библиотека собеса по DevOps
👍1
Как можно защитить кластер Kubernetes?

Следуйте модели безопасности 4C для защиты кластера Kubernetes:
1. Безопасность облачного провайдера: используйте роли IAM и правила брандмауэра.
2. Безопасность кластера: включите RBAC, журналы аудита и безопасность сервера API.
3. Безопасность контейнера: сканируйте образы и используйте некорневых пользователей.
4. Безопасность кода: реализуйте управление секретами и используйте сетевые политики.


Библиотека собеса по DevOps
Что такое bearer token?

Bearer token, также известный как токен учетной записи службы, представляет собой JWT-токен, который генерируется автоматически при создании новой учетной записи службы. Он содержит информацию о конкретной учетной записи службы и подписывается корневым сертификатом кластера. Этот токен сохраняется в объекте типа secret, который затем монтируется в POD по стандартному пути и периодически обновляется. При использовании данного токена процесс, запущенный в контейнере, получает доступ к API Kubernetes и может выполнять только разрешенные действия.

Библиотека собеса по DevOps
Как можно выполнить техническое обслуживание в одном поде?

Вот шаги для выполнения обслуживания в одном модуле:
✔️ Получить имя модуля, для которого вы хотите выполнить обслуживание, с помощью команды;
✔️ Перевести модуль в режим обслуживания, добавив к нему метку;
✔️ Убедиться, что метка была применена к модулю;
✔️ Выполнить обслуживание модуля по мере необходимости;
✔️ Удалить метку обслуживания с модуля, когда закончите;
✔️ Убедиться, что метка была удалена.


Библиотека собеса по DevOps
Что такое хранимая процедура и чем она отличается от функции в SQL?

Хранимая процедура — это предварительно скомпилированный набор операторов SQL, которые могут быть выполнены как единое целое для выполнения определенной задачи. В отличие от функций, хранимые процедуры могут возвращать несколько наборов результатов и изменять объекты базы данных, тогда как функции обычно возвращают одно значение и не могут изменять данные.

Библиотека собеса по DevOps
Вы видите в Kibana после нажатия на «Discover» «561 hits». Что это значит?

Общее количество документов, соответствующих результатам поиска. Если не используется запрос, то просто общее количество документов.

Библиотека собеса по DevOps
Назовите три типичные причины ошибок Pod и способы их устранения

Модули могут зависнуть в состояниях Pending, CrashLoopBackOff или ImagePullBackOff:

✔️ Модуль завис в состоянии Pending: Проверьте доступность узла и ограничения ресурсов. Для получения дополнительной информации см. события модуля.
✔️ CrashLoopBackOff: Проверьте журналы приложения и проверьте правильность конфигурации.
✔️ ImagePullBackOff: Убедитесь, что указаны правильное имя образа и учётные данные для извлечения. Для получения дополнительной информации см. события модуля.

Вы можете проверить события модуля с помощью команды describe:
kubectl describe pod <pod-name>


Библиотека собеса по DevOps
Что такое sidecar-контейнеры Kubernetes и как они используются?

Контейнер sidecar работает параллельно с основным контейнером приложения внутри того же модуля. Он обычно используется для:

Ведения журнала и мониторинга
(например, сбора журналов с помощью Fluentd).
Прокси-серверов безопасности (например, запуск прокси-сервера Envoy от Istio для сервисной сетки).
Управления конфигурацией (например, синхронизации настроек приложения).
Пример контейнера sidecar для обработки журналов:

apiVersion: v1
kind: Pod
metadata:
name: app-with-sidecar
spec:
containers:
- name: main-app
image: my-app
volumeMounts:
- mountPath: /var/log
name: shared-logs
- name: log-collector
image: fluentd
volumeMounts:
- mountPath: /var/log
name: shared-logs
volumes:
- name: shared-logs
emptyDir: {}


Библиотека собеса по DevOps
👍1😁1👾1
Что такое пейджинг по требованию?

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

Библиотека собеса по DevOps
В чем разница между var x int = 2 и x := 2 в Go?

Результат тот же — переменная со значением 2. С помощью var x int = 2 мы устанавливаем тип переменной как целое число, а с помощью x := 2 мы позволяем Go самому определить тип.

Библиотека собеса по DevOps
Знаете ли вы, что такое «теорема CAP»? (так называемая теорема Брюера)

Согласно теореме CAP, распределенное хранилище данных не может одновременно предоставлять более двух из следующих данных:
Доступность: на каждый запрос приходит ответ (не обязательно самые последние данные); Согласованность: на каждый запрос приходит ответ с самыми последними данными.


Библиотека собеса по DevOps
1
Что такое сокет? Где можно увидеть список сокетов в вашей системе?

Сокет — это программная конечная точка, которая обеспечивает двустороннюю связь между процессами по сети. Сокеты предоставляют стандартизированный интерфейс для сетевой связи, позволяя приложениям отправлять и получать данные по сети. Чтобы просмотреть список открытых сокетов в системе Linux: netstat -an Эта команда отображает список всех открытых сокетов, а также их протокол, локальный адрес, внешний адрес и состояние.

Библиотека собеса по DevOps
Какие типы гипервизоров существуют?

Хостинговые гипервизоры и гипервизоры без операционной системы.

Библиотека собеса по DevOps
🤔2😢1