ru
Feedback
DevOps | Вопросы собесов

DevOps | Вопросы собесов

Открыть в Telegram
5 511
Подписчики
-224 часа
-47 дней
-330 день
Архив постов
🤔 Что такое OpsWorks? AWS OpsWorks — это сервис управления конфигурациями, который: - Поддерживает Chef и Puppet. - Используется для автоматизации серверной инфраструктуры. - Позволяет управлять слоями, версиями, скриптами и зависимостями. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

🤔 С каким максимальным кол-ом адресов ОП может провзаимодействовать процессор? Максимальное количество адресов оперативной памяти (ОП), с которыми может взаимодействовать процессор, зависит от ширины адресной шины процессора. Адресная шина определяет, сколько уникальных адресов памяти процессор может адресовать. 🚩Формула вычисления Количество адресуемых ячеек памяти определяется по формуле: \text{Максимальное количество адресов} = 2^{\text{ширина адресной шины (в битах)}} 🚩Примеры 🟠Процессор с 32-битной адресной шиной Максимально возможное количество адресов: 2^{32} = 4,294,967,296 \, (\approx 4 \, \text{Гбайт}) 🟠Процессор с 64-битной адресной шиной Теоретический максимум 2^{64} = 18,446,744,073,709,551,616 \, (\approx 16 \, \text{эксабайт}) Однако современные процессоры обычно поддерживают меньше, например Архитектура x86-64 (например, Intel и AMD): ограничена 48–57 битами для адресов памяти, что позволяет адресовать от 256 Тбайт до 128 Пбайт. 🚩Почему реальная адресуемая память меньше? 🟠Ограничения архитектуры Производители процессоров могут использовать меньшее количество адресных линий, чтобы снизить сложность и стоимость. Например, современные 64-битные процессоры адресуют только часть 64-битного пространства (например, 48 бит). 🟠Ограничения ОЗУ Даже если процессор поддерживает большое количество адресов, максимальная память ограничивается количеством слотов памяти и их емкостью на материнской плате. 🟠Системные резервы Некоторые адреса зарезервированы для системных нужд (например, для ввода/вывода или BIOS). Ставь 👍 и забирай 📚 Базу знаний

🤔 К чему приведёт запуск двух Terraform одновременно? Если два Terraform одновременно используют один и тот же tfstate, это может привести к: - конфликтам изменений; - потере состояния; - рассинхронизации инфраструктуры. Чтобы избежать этого, используют блокировки (например, через backend S3 + DynamoDB в AWS). Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

🤔 Динамическая маршрутизация и разные протоколы динамической маршрутизации, ebgp ibgp, константы bgp. На чём сейчас принято строить bgp-пиринги? 🟠Динамическая маршрутизация Динамическая маршрутизация – это механизм автоматического выбора маршрута на основе изменяющихся сетевых условий. В отличие от статической маршрутизации, она автоматически адаптируется к изменениям в сети. Протоколы динамической маршрутизации делятся на: Протоколы внутреннего шлюза (IGP – Interior Gateway Protocol) RIP (Routing Information Protocol) – устаревший, работает на алгоритме дистанционно-векторного маршрутизации. OSPF (Open Shortest Path First) – основан на SPF (Dijkstra) и работает по принципу линк-стейт. IS-IS (Intermediate System to Intermediate System) – аналог OSPF, но чаще используется в провайдерских сетях. Протоколы внешнего шлюза (EGP – Exterior Gateway Protocol) BGP (Border Gateway Protocol) – основной протокол маршрутизации в интернете. 🟠BGP: Основной протокол глобальной маршрутизации eBGP vs iBGP BGP бывает двух типов: eBGP (External BGP) – маршрутизация между автономными системами (AS). Используется для обмена маршрутами между разными организациями или провайдерами. iBGP (Internal BGP) – работает внутри одной AS, передавая BGP-маршруты между роутерами этой сети. 🚩Константы BGP (Attributes) BGP использует атрибуты маршрута для выбора наилучшего пути. Основные атрибуты: 🟠Local Preference приоритетный маршрут внутри AS (чем выше, тем лучше). 🟠AS Path список AS, через которые проходит маршрут (короче – лучше). 🟠MED (Multi-Exit Discriminator) предпочтение одного из выходов из AS (меньше – лучше). 🟠Origin источник маршрута (IGP < EGP < Incomplete). 🟠Community метки маршрутов для упрощения политики маршрутизации. 🟠Weight (Cisco-only) локальный параметр (чем больше, тем лучше). 🚩На чём сейчас строят BGP-пиринги? BGP можно развернуть на разных платформах, включая аппаратные и программные решения: 🟠Оборудование (Аппаратные маршрутизаторы) Cisco (IOS, IOS-XE, IOS-XR, NX-OS) – классика для крупных сетей. Juniper (Junos OS) – мощное решение для дата-центров и операторов. Arista (EOS) – высокопроизводительные маршрутизаторы для ЦОДов. Huawei (VRP) – популярно в крупных корпоративных сетях. 🟠Программные решения (SOFT-router) FRRouting (FRR) – open-source, поддерживает BGP, OSPF, IS-IS. BIRD – лёгкий BGP-демон для Linux, используется в IX (Internet Exchange). GoBGP – BGP-демон, написанный на Go. VyOS – Linux-маршрутизатор с поддержкой BGP. MikroTik (RouterOS) – бюджетное, но мощное решение. Ставь 👍 и забирай 📚 Базу знаний

🤔 Может ли быть несколько контейнеров в поде? Да, в поде может быть несколько контейнеров. Они: - Разделяют одно и то же пространство имён (IP, volume). - Используются, когда нужно тесное взаимодействие между процессами (паттерн sidecar). - Пример — основной контейнер + логгер или прокси. Все контейнеры внутри пода запускаются одновременно и работают как единое целое. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

Вы чувствуете? Праздники совсем близко! Что делать уже сейчас:✨ • Соберите в приложении SOKOLOV вишлист с украшениями мечты.
Вы чувствуете? Праздники совсем близко! Что делать уже сейчас:✨ • Соберите в приложении SOKOLOV вишлист с украшениями мечты. • Поделитесь им с близкими — так будет легче угадать ваши желания. • Выбирайте подарки для любимых: для него, для неё, для себя. –69% на всё в SOKOLOV Успейте выполнить весь чек-лист, пока скидка ещё действует! Заказать #реклама 16+ sokolov.ru О рекламодателе

🤔 Поды висят в pending, в чем проблема? Pod в Pending означает, что он не может быть запущен, потому что Kubernetes не может его назначить (schedule) на ноду. Нет свободных ресурсов на нодах (CPU, RAM) Неподходящие nodeSelector, affinity или taints Нет доступных узлов (все NotReady) Проблемы с PersistentVolume (PVC не привязан) Ошибки в CNI (сеть Kubernetes) 🚩Проверяем статус подов (`kubectl get pods`) Команда
kubectl get pods -A
🚩Нет свободных ресурсов на нодах Команда:
kubectl describe pod my-app-1
🚩Проблема с `nodeSelector`, `affinity`, `taints` Если под настроен только на определенные ноды, он может не найти подходящую.
kubectl describe pod my-app-1
Вывод:
0/3 nodes are available: 3 node(s) didn't match pod affinity/selector.
🚩Все ноды в состоянии `NotReady` Проверяем статус нод
kubectl get nodes
Ставь 👍 и забирай 📚 Базу знаний

Сезон скидок для неё Думаете, что выбрать на 8 марта? Зачем выбирать, когда на Wildberries скидки до 60%. Перейти на сайт #реклама wildberries.ru О рекламодателе

🤔 Через что делается создание неймспейсов и запуск деплойментов? - Всё делается через kube-apiserver, к которому обращаются: - kubectl - другие компоненты - CI/CD пайплайны Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

Целевые кибератаки 2025: аналитика и кейсы Ландшафт киберугроз в России меняется. Злоумышленники используют более продвинутые инструменты, а разработка ВПО стала гораздо доступнее благодаря AI. К чему готовиться бизнесу? 11 марта в 12:00 команда Solar 4RAYS проведет вебинар по итогам расследований целевых атак 2025 года и прогнозам на 2026-й. В программе: ✅Актуальные методы защиты на 2026 год. ✅Акцент на отраслях, которые злоумышленники атакуют чаще всего. ✅Интересные техники киберпреступников из реальных расследований. Регистрируйтесь на вебинар, чтобы строить надежную эшелонированную защиту с помощью актуальных данных. Узнать больше #реклама 16+ rt-solar.ru О рекламодателе

🤔 Как в линуксе посмотреть список дескрипторов файлов? В Linux список дескрипторов файлов можно посмотреть, используя утилиты и команды, которые позволяют работать с процессами и их открытыми файлами. Основным методом является использование файловой системы /proc, которая содержит информацию о процессах, включая их открытые файловые дескрипторы. 🚩Основные способы 🟠Команда `ls` в каталоге `/proc/[PID]/fd` Каждый процесс в Linux имеет свой подкаталог в /proc с идентификатором процесса (PID). В подкаталоге fd хранятся ссылки на открытые дескрипторы файлов.
ls -l /proc/$(pidof <имя_процесса>)/fd
Вывод
lrwx------ 1 user user 64 Dec 23 12:00 0 -> /dev/pts/0
lrwx------ 1 user user 64 Dec 23 12:00 1 -> /dev/pts/0
lrwx------ 1 user user 64 Dec 23 12:00 2 -> /dev/pts/0
🟠Использование `lsof` Команда lsof (list open files) отображает список всех открытых файлов в системе.
lsof -p <PID>
Пример для всех процессов
lsof
Вывод
COMMAND    PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
bash      1234 user  cwd    DIR  8,1     4096  256 /home/user
bash      1234 user  rtd    DIR  8,1     4096    2 /
bash      1234 user    0u   CHR  136,0       0    3 /dev/pts/0
bash      1234 user    1u   CHR  136,0       0    3 /dev/pts/0
bash      1234 user    2u   CHR  136,0       0    3 /dev/pts/0
🟠Использование `lsfd` Утилита lsfd (из пакета util-linux) удобна для просмотра файловых дескрипторов.
lsfd
Вывод
PID    FD TTY      TYPE      DEVICE SIZE/OFF   NODE NAME
1234   0  /dev/pts/0 CHR      136,0       0      3 /dev/pts/0
1234   1  /dev/pts/0 CHR      136,0       0      3 /dev/pts/0
1234   2  /dev/pts/0 CHR      136,0       0      3 /dev/pts/0
🚩Полезные флаги и фильтрация Список дескрипторов определенного пользователя:
lsof -u <имя_пользователя>
Список файлов определенного типа (например, сокеты):
lsof -i
Фильтрация по определенному файлу или устройству:
lsof /path/to/file
🚩Почему важно знать про дескрипторы? 🟠Отладка приложений Определение, какие файлы, сокеты или устройства использует процесс. 🟠Устранение утечек Проверка, остаются ли ненужные дескрипторы открытыми. 🟠Администрирование Диагностика проблем, связанных с блокировкой файлов. Ставь 👍 и забирай 📚 Базу знаний

Аукцион выделенных серверов! Серверы дешевеют у вас на глазах! Новые лоты каждый день, скидки до -35% на весь срок аренды. Успейте арендовать, пока лот не ушел другому! Получить предложение #реклама 16+ selectel.ru О рекламодателе

🤔 Как сирота отличается от зомби процесса? 1. Сирота: процесс, у которого родитель завершился, но сам процесс продолжает работать. Управление сиротой передаётся init. 2. Зомби: процесс завершён, но его запись остаётся в таблице процессов до тех пор, пока родительский процесс не обработает статус завершения. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

🤔 Как сделать донастройку контейнера? Донастройка контейнера может понадобиться, если: Нужно изменить файлы конфигурации. Установить дополнительные пакеты. Задать переменные среды. Подключить тома или сети. Варианты донастройки: через Dockerfile, docker-compose, exec, тома и Entrypoint/CMD. 🟠Донастройка через Dockerfile (Лучший способ) Если контейнер нужно модифицировать перед запуском, создаем свой Dockerfile на основе существующего образа.
FROM nginx:latest
COPY my-nginx.conf /etc/nginx/nginx.conf
CMD ["nginx", "-g", "daemon off;"]
Собираем новый образ
docker build -t my-nginx .
docker run -d -p 80:80 my-nginx
🟠Донастройка через `docker-compose` (Гибкость) Можно задать окружение, тома, команды.
version: '3'
services:
  db:
    image: postgres:15
    environment:
      POSTGRES_USER: admin
      POSTGRES_PASSWORD: secret
      POSTGRES_DB: mydb
    volumes:
      - ./custom-postgres.conf:/etc/postgresql/postgresql.conf
    command: postgres -c config_file=/etc/postgresql/postgresql.conf
Запуск
docker-compose up -d
🟠Донастройка запущенного контейнера (`docker exec`) Если контейнер уже работает, можно внести изменения прямо в него.
docker exec -it my-container bash
apt update && apt install -y vim
🟠Донастройка через тома (Volumes) Если нужно изменять файлы без пересборки образа, подключаем тома.
docker run -d -p 80:80 -v $(pwd)/nginx.conf:/etc/nginx/nginx.conf nginx
🟠Использование `ENTRYPOINT` или `CMD` Можно задать скрипт донастройки, который выполнится при старте контейнера.
FROM postgres:15
COPY setup.sh /docker-entrypoint-initdb.d/setup.sh
RUN chmod +x /docker-entrypoint-initdb.d/setup.sh
В setup.sh:
#!/bin/bash
psql -U postgres -d mydb -c "CREATE TABLE test (id SERIAL PRIMARY KEY);"
Ставь 👍 и забирай 📚 Базу знаний

На картах — Азия, на самом деле — РазнообрАзия! Яндекс Путешествия открывают секреты отличного отдыха по-восточному, дарят ск
На картах — Азия, на самом деле — РазнообрАзия! Яндекс Путешествия открывают секреты отличного отдыха по-восточному, дарят скидку 5000 ₽ на отели и программу для путешествия по вашим интересам. Забронировать #реклама special.travel.yandex.ru О рекламодателе

🤔 Для чего нужны пробы в Kubernetes? Пробы (probes) используются для определения состояния контейнера. - Liveness — показывает, жив ли контейнер (если нет — будет перезапущен). - Readiness — показывает, готов ли контейнер принимать трафик. - Startup — определяет, когда приложение полностью загрузилось, особенно полезно при долгом старте. Они помогают Kubernetes принимать решения о перезапуске, маршрутизации и health-чек. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

🤔 Как можно визуализировать логи? Визуализация логов — это процесс представления лог-файлов в удобном графическом виде для более легкого анализа, поиска аномалий и устранения проблем. Для этого используются различные инструменты, которые собирают, агрегируют и отображают логи в виде графиков, дашбордов и диаграмм. 🚩Почему нужна визуализация логов? 🟠Упрощает анализ вместо просмотра тысяч строк логов можно быстро увидеть тенденции и аномалии. 🟠Помогает в мониторинге можно отслеживать изменения в режиме реального времени. 🟠Ускоряет диагностику проблем легче выявить причину ошибки, если видеть всплески или изменения в логах. 🟠Облегчает работу с большими объемами данных миллионы строк логов можно представить в виде сводных диаграмм. 🚩Какие инструменты используются? 🟠ELK Stack (Elasticsearch + Logstash + Kibana) Logstash – собирает и обрабатывает логи. Elasticsearch – хранит и индексирует логи для быстрого поиска. Kibana – визуализирует данные, строит графики и дашборды. Пример: Можно создать график с количеством ошибок 500 за последние 24 часа. 🟠Grafana + Loki (альтернатива ELK) Loki – хранит и обрабатывает логи. Grafana – строит красивые дашборды с логами и метриками. Пример: Можно создать панель с последними логами приложений, используя tail-подобное обновление. 🟠Graylog Обрабатывает логи, хранит их в Elasticsearch, строит графики и отправляет алерты. Пример: Можно отфильтровать логи по уровню ERROR и вывести их в виде диаграммы. 🟠Datadog, Splunk, New Relic Коммерческие решения с мощными инструментами аналитики логов. Пример: Автоматическая корреляция логов с метриками системы. 🚩Простой пример работы с ELK Logstash конфиг (сбор логов из файла)
   input {
     file {
       path => "/var/log/app.log"
       start_position => "beginning"
     }
   }
   output {
     elasticsearch {
       hosts => ["http://localhost:9200"]
     }
   }
Ставь 👍 и забирай 📚 Базу знаний

Нужны актуальные вопросы с собеседований ? DevOps | Собеседования - твой незаменимый помощник в подготовке к собеседованиям.
Нужны актуальные вопросы с собеседований ? DevOps | Собеседования - твой незаменимый помощник в подготовке к собеседованиям. 🔊Обзоры собеседований c вилками на позиции: 🔵DevOps инженеров (Junior, Middle, Senior). 🔵С комментариями автора, как человека, который активно собеседует кандидатов. 🔊В ближайшее время: 🔵Записи реальных собеседований (не моки и открытые собеседования). 🔵Гайды и рекомендации по обходу частых ошибок при выступлении на техническом интервью. ➡️ Подписаться

Раньше — выгоднее. Берите календарь направлений с чек-листами, получайте скидку 5 000 ₽ за раннее бронирование от 60 000 ₽ и бронируйте отпуск, пока лучшие варианты ещё доступны. Забронировать #реклама 16+ special.travel.yandex.ru О рекламодателе

🤔 Что происходит в тот момент, когда вы набираете в браузере, например, google.com? 1. Выполняется DNS-запрос для получения IP-адреса сервера. 2. Устанавливается TCP-соединение с сервером. 3. При использовании HTTPS устанавливается TLS-соединение. 4. Браузер отправляет HTTP-запрос, сервер возвращает ответ. 5. Полученные данные рендерятся в браузере. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний