DevOps | Вопросы собесов
Open in Telegram
Сайт: https://easyoffer.ru/ Все каналы: t.me/+xGeAw6ckJ4liYzQy Контакт для рекламы: @sendme_ads
Show more5 568
Subscribers
-124 hours
-67 days
+230 days
Posts Archive
\n\n🚩Подбор паролей (Brute Force, Dictionary Attack) \n\n- Пробуют тысячи вариантов паролей (rockyou.txt). \n- Используют John the Ripper, Hydra, Hashcat. \nhydra -l admin -P passwords.txt 192.168.1.1 ssh\n\n🚩Анализ трафика (MITM, Sniffing, Packet Analysis) \n\nЗахватывают пакеты сети (tcpdump, Wireshark). \nИщут передаваемые пароли, сессии, токены.\n\nСтавь 👍 и забирай 📚 Базу знаний","datePublished":"2025-12-24T09:05:19Z","dateModified":"2025-12-24T09:05:19Z","author":{"@type":"Organization","name":"DevOps | Вопросы собесов","url":"https://telemetr.io/en/channels/1804037333-easy_devops","image":"https://img.telemetr.io/c/1Y5ywl/5224615235418185511?ty=x"},"publisher":{"@type":"Organization","name":"DevOps | Вопросы собесов","url":"https://telemetr.io/en/channels/1804037333-easy_devops","image":"https://img.telemetr.io/c/1Y5ywl/5224615235418185511?ty=x"},"commentCount":0,"interactionStatistic":[{"@type":"InteractionCounter","interactionType":"https://schema.org/ViewAction","userInteractionCount":1102},{"@type":"InteractionCounter","interactionType":"https://schema.org/ShareAction","userInteractionCount":12}]}},{"@type":"ListItem","position":15,"item":{"@type":"SocialMediaPosting","@id":"https://telemetr.io/en/channels/1804037333-easy_devops/posts/2134","url":"https://telemetr.io/en/channels/1804037333-easy_devops/posts/2134","mainEntityOfPage":"https://telemetr.io/en/channels/1804037333-easy_devops/posts/2134","headline":"🤔 Как работает GitLab Runner? Это агент, выполняющий CI/CD задачи. 1. Он регистрируется в GitLab и запускает…","articleBody":"🤔 Как работает GitLab Runner?\n\nЭто агент, выполняющий CI/CD задачи.\n1. Он регистрируется в GitLab и запускает задачи (jobs) из .gitlab-ci.yml.\n2. Работает в разных режимах (shell, Docker, Kubernetes) для выполнения сборок, тестов и деплоя.\n\nСтавь 👍 если знал ответ, 🔥 если нет\nЗабирай 📚 Базу знаний","datePublished":"2025-12-23T16:10:09Z","dateModified":"2025-12-23T16:10:09Z","author":{"@type":"Organization","name":"DevOps | Вопросы собесов","url":"https://telemetr.io/en/channels/1804037333-easy_devops","image":"https://img.telemetr.io/c/1Y5ywl/5224615235418185511?ty=x"},"publisher":{"@type":"Organization","name":"DevOps | Вопросы собесов","url":"https://telemetr.io/en/channels/1804037333-easy_devops","image":"https://img.telemetr.io/c/1Y5ywl/5224615235418185511?ty=x"},"commentCount":0,"interactionStatistic":[{"@type":"InteractionCounter","interactionType":"https://schema.org/ViewAction","userInteractionCount":1037},{"@type":"InteractionCounter","interactionType":"https://schema.org/LikeAction","userInteractionCount":1},{"@type":"InteractionCounter","interactionType":"https://schema.org/ShareAction","userInteractionCount":11}]}},{"@type":"ListItem","position":16,"item":{"@type":"SocialMediaPosting","@id":"https://telemetr.io/en/channels/1804037333-easy_devops/posts/2133","url":"https://telemetr.io/en/channels/1804037333-easy_devops/posts/2133","mainEntityOfPage":"https://telemetr.io/en/channels/1804037333-easy_devops/posts/2133","headline":"🤔 Как в линуксе посмотреть список дескрипторов файлов? В Linux список дескрипторов файлов можно посмотреть, и…","articleBody":"🤔 Как в линуксе посмотреть список дескрипторов файлов?\n\nВ Linux список дескрипторов файлов можно посмотреть, используя утилиты и команды, которые позволяют работать с процессами и их открытыми файлами. Основным методом является использование файловой системы /proc, которая содержит информацию о процессах, включая их открытые файловые дескрипторы.\n\n🚩Основные способы\n\n🟠Команда `ls` в каталоге `/proc/[PID]/fd`\nКаждый процесс в Linux имеет свой подкаталог в /proc с идентификатором процесса (PID). В подкаталоге fd хранятся ссылки на открытые дескрипторы файлов.\nls -l /proc/$(pidof <имя_процесса>)/fd\n\nВывод\nlrwx------ 1 user user 64 Dec 23 12:00 0 -> /dev/pts/0\nlrwx------ 1 user user 64 Dec 23 12:00 1 -> /dev/pts/0\nlrwx------ 1 user user 64 Dec 23 12:00 2 -> /dev/pts/0\n\n🟠Использование `lsof`\nКоманда lsof (list open files) отображает список всех открытых файлов в системе.\nlsof -p \n\nПример для всех процессов\nlsof\n\nВывод\nCOMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME\nbash 1234 user cwd DIR 8,1 4096 256 /home/user\nbash 1234 user rtd DIR 8,1 4096 2 /\nbash 1234 user 0u CHR 136,0 0 3 /dev/pts/0\nbash 1234 user 1u CHR 136,0 0 3 /dev/pts/0\nbash 1234 user 2u CHR 136,0 0 3 /dev/pts/0\n\n🟠Использование `lsfd`\nУтилита lsfd (из пакета util-linux) удобна для просмотра файловых дескрипторов.\nlsfd\n\nВывод\nPID FD TTY TYPE DEVICE SIZE/OFF NODE NAME\n1234 0 /dev/pts/0 CHR 136,0 0 3 /dev/pts/0\n1234 1 /dev/pts/0 CHR 136,0 0 3 /dev/pts/0\n1234 2 /dev/pts/0 CHR 136,0 0 3 /dev/pts/0\n\n🚩Полезные флаги и фильтрация\n\nСписок дескрипторов определенного пользователя:\nlsof -u <имя_пользователя>\n\nСписок файлов определенного типа (например, сокеты):\nlsof -i\n\nФильтрация по определенному файлу или устройству:\nlsof /path/to/file\n\n🚩Почему важно знать про дескрипторы?\n\n🟠Отладка приложений \nОпределение, какие файлы, сокеты или устройства использует процесс.\n🟠Устранение утечек\nПроверка, остаются ли ненужные дескрипторы открытыми.\n🟠Администрирование \nДиагностика проблем, связанных с блокировкой файлов.\n\nСтавь 👍 и забирай 📚 Базу знаний","datePublished":"2025-12-23T09:05:19Z","dateModified":"2025-12-23T09:05:19Z","author":{"@type":"Organization","name":"DevOps | Вопросы собесов","url":"https://telemetr.io/en/channels/1804037333-easy_devops","image":"https://img.telemetr.io/c/1Y5ywl/5224615235418185511?ty=x"},"publisher":{"@type":"Organization","name":"DevOps | Вопросы собесов","url":"https://telemetr.io/en/channels/1804037333-easy_devops","image":"https://img.telemetr.io/c/1Y5ywl/5224615235418185511?ty=x"},"commentCount":0,"interactionStatistic":[{"@type":"InteractionCounter","interactionType":"https://schema.org/ViewAction","userInteractionCount":1101},{"@type":"InteractionCounter","interactionType":"https://schema.org/ShareAction","userInteractionCount":14}]}},{"@type":"ListItem","position":17,"item":{"@type":"SocialMediaPosting","@id":"https://telemetr.io/en/channels/1804037333-easy_devops/posts/2132","url":"https://telemetr.io/en/channels/1804037333-easy_devops/posts/2132","mainEntityOfPage":"https://telemetr.io/en/channels/1804037333-easy_devops/posts/2132","headline":"🤔 Куда идёт деплой из релизных веток? Из release-веток обычно: - деплой идёт в staging/QA окружение для тести…","articleBody":"🤔 Куда идёт деплой из релизных веток?\n\nИз release-веток обычно:\n- деплой идёт в staging/QA окружение для тестирования;\n- после подтверждения — в master, что может инициировать production-деплой.\nЭто даёт возможность проверить стабильность перед боевым запуском.\n\nСтавь 👍 если знал ответ, 🔥 если нет\nЗабирай 📚 Базу знаний","datePublished":"2025-12-22T16:10:08Z","dateModified":"2025-12-22T16:10:08Z","author":{"@type":"Organization","name":"DevOps | Вопросы собесов","url":"https://telemetr.io/en/channels/1804037333-easy_devops","image":"https://img.telemetr.io/c/1Y5ywl/5224615235418185511?ty=x"},"publisher":{"@type":"Organization","name":"DevOps | Вопросы собесов","url":"https://telemetr.io/en/channels/1804037333-easy_devops","image":"https://img.telemetr.io/c/1Y5ywl/5224615235418185511?ty=x"},"commentCount":0,"interactionStatistic":[{"@type":"InteractionCounter","interactionType":"https://schema.org/ViewAction","userInteractionCount":953},{"@type":"InteractionCounter","interactionType":"https://schema.org/ShareAction","userInteractionCount":10}]}},{"@type":"ListItem","position":18,"item":{"@type":"SocialMediaPosting","@id":"https://telemetr.io/en/channels/1804037333-easy_devops/posts/2131","url":"https://telemetr.io/en/channels/1804037333-easy_devops/posts/2131","mainEntityOfPage":"https://telemetr.io/en/channels/1804037333-easy_devops/posts/2131","headline":"🤔 Как и где посмотреть логи какого-нибудь сервиса? Обычно хранятся в каталоге /var/log. Также многие современ…","articleBody":"🤔 Как и где посмотреть логи какого-нибудь сервиса?\n\nОбычно хранятся в каталоге /var/log. Также многие современные дистрибутивы используют систему журналирования systemd для управления и просмотра логов.\n\n🚩Способы просмотра\n\n🟠Просмотр логов в /var/log\nКаталог /var/log содержит логи большинства системных сервисов и приложений. \n\nЛоги системных сообщений\n/var/log/syslog: Содержит общие системные логи. /var/log/messages: Содержит общие системные сообщения (не во всех дистрибутивах).\ncat /var/log/syslog\nless /var/log/syslog\ntail -f /var/log/syslog\n\nЛоги конкретных сервисов\nApache: /var/log/apache2/ или /var/log/httpd/ Логи доступа: /var/log/apache2/access.log или /var/log/httpd/access_log Логи ошибок: /var/log/apache2/error.log или /var/log/httpd/error_log \ntail -f /var/log/apache2/access.log\ntail -f /var/log/apache2/error.log \n\nNginx: /var/log/nginx/ Логи доступа: /var/log/nginx/access.log Логи ошибок: /var/log/nginx/error.log \ntail -f /var/log/nginx/access.log\ntail -f /var/log/nginx/error.log \n\nMySQL: /var/log/mysql/ или /var/log/mysqld.log \ntail -f /var/log/mysql/error.log \n\nSSH: /var/log/auth.log или /var/log/secure \ntail -f /var/log/auth.log \n\n🟠Использование `journalctl` для системных логов\njournalctl — это утилита для просмотра и управления журналами systemd. Она позволяет фильтровать логи по различным критериям, таким как время, сервис и уровень логирования.\n\nОсновные команды journalctl\nПросмотр всех журналов \njournalctl \n\n\nЛогов конкретного сервиса \njournalctl -u nginx.service \n\nПоследних логов и продолжение просмотра в реальном времени \njournalctl -f\njournalctl -u nginx.service -f\n\nЛогов за определённый период \njournalctl --since \"2024-07-25 12:00:00\" --until \"2024-07-25 13:00:00\" \n\nЛогов с определённым уровнем логирования \njournalctl -p err\njournalctl -p warning \n\n🚩Примеры использования\n\n🟠Просмотр логов Apache\nЛоги доступа \ntail -f /var/log/apache2/access.log \n\nЛоги ошибок \ntail -f /var/log/apache2/error.log \n\n🟠Просмотр логов Nginx\nЛоги доступа \ntail -f /var/log/nginx/access.log\n\nЛоги ошибок \ntail -f /var/log/nginx/error.log \n\n🟠Использование `journalctl` для просмотра логов Nginx\nВсе логи Nginx \njournalctl -u nginx.service \n\nПоследние логи Nginx в реальном времени \njournalctl -u nginx.service -f\n\nСтавь 👍 и забирай 📚 Базу знаний","datePublished":"2025-12-22T09:05:15Z","dateModified":"2025-12-22T09:05:15Z","author":{"@type":"Organization","name":"DevOps | Вопросы собесов","url":"https://telemetr.io/en/channels/1804037333-easy_devops","image":"https://img.telemetr.io/c/1Y5ywl/5224615235418185511?ty=x"},"publisher":{"@type":"Organization","name":"DevOps | Вопросы собесов","url":"https://telemetr.io/en/channels/1804037333-easy_devops","image":"https://img.telemetr.io/c/1Y5ywl/5224615235418185511?ty=x"},"commentCount":0,"interactionStatistic":[{"@type":"InteractionCounter","interactionType":"https://schema.org/ViewAction","userInteractionCount":925},{"@type":"InteractionCounter","interactionType":"https://schema.org/LikeAction","userInteractionCount":2},{"@type":"InteractionCounter","interactionType":"https://schema.org/ShareAction","userInteractionCount":15}]}},{"@type":"ListItem","position":19,"item":{"@type":"SocialMediaPosting","@id":"https://telemetr.io/en/channels/1804037333-easy_devops/posts/2130","url":"https://telemetr.io/en/channels/1804037333-easy_devops/posts/2130","mainEntityOfPage":"https://telemetr.io/en/channels/1804037333-easy_devops/posts/2130","headline":"🔥 OTUS запускает курс «DevOps-инженер: практики и инструменты» — тестирование уже открыто! Готовы к настоящем…","articleBody":"🔥 OTUS запускает курс «DevOps-инженер: практики и инструменты» — тестирование уже открыто!\n\nГотовы к настоящему DevOps в продакшене + максимальная скидка? Пройдите бесплатный тест и зафиксируйте спеццену и место в группе!\n\nЗа 5 месяцев вы получите:\n- Боевой стек 2025–2026: Docker → K8s → Terraform → Ansible → GitLab CI/CD → Prometheus + Grafana\n- Бесплатный Yandex Cloud + большой финальный проект с защитой\n- Демки в прямом эфире + код-ревью от менторов из Сбера, IBM, Касперского\n- Только то, что реально юзают в проде\n\nНаучитесь:\n- Делать CI/CD, который не падает в 3 ночи\n- Управлять инфраструктурой как кодом\n- Запускать отказоустойчивый Kubernetes\n- Настраивать полный мониторинг и спать спокойно\n\nСтарт: 29 января 2026 г.\n\n👉 Пройти тест и забронировать место: https://otus.pw/Ik13/\n\nРеклама. ООО «Отус онлайн-образование», ОГРН 1177746618576","datePublished":"2025-12-22T07:00:17Z","dateModified":"2025-12-24T07:00:15Z","author":{"@type":"Organization","name":"DevOps | Вопросы собесов","url":"https://telemetr.io/en/channels/1804037333-easy_devops","image":"https://img.telemetr.io/c/1Y5ywl/5224615235418185511?ty=x"},"publisher":{"@type":"Organization","name":"DevOps | Вопросы собесов","url":"https://telemetr.io/en/channels/1804037333-easy_devops","image":"https://img.telemetr.io/c/1Y5ywl/5224615235418185511?ty=x"},"commentCount":0,"interactionStatistic":[{"@type":"InteractionCounter","interactionType":"https://schema.org/ViewAction","userInteractionCount":605},{"@type":"InteractionCounter","interactionType":"https://schema.org/ShareAction","userInteractionCount":4}]}},{"@type":"ListItem","position":20,"item":{"@type":"SocialMediaPosting","@id":"https://telemetr.io/en/channels/1804037333-easy_devops/posts/2129","url":"https://telemetr.io/en/channels/1804037333-easy_devops/posts/2129","mainEntityOfPage":"https://telemetr.io/en/channels/1804037333-easy_devops/posts/2129","headline":"🤔 На каком шаге заканчивается Continuous Integration? CI заканчивается после: - успешной сборки, - прохождени…","articleBody":"🤔 На каком шаге заканчивается Continuous Integration?\n\nCI заканчивается после:\n- успешной сборки,\n- прохождения тестов,\n- публикации артефактов.\nДалее идёт этап доставки (delivery) или развёртывания (deployment) — это уже CD.\n\nСтавь 👍 если знал ответ, 🔥 если нет\nЗабирай 📚 Базу знаний","datePublished":"2025-12-21T16:10:09Z","dateModified":"2025-12-21T16:10:09Z","author":{"@type":"Organization","name":"DevOps | Вопросы собесов","url":"https://telemetr.io/en/channels/1804037333-easy_devops","image":"https://img.telemetr.io/c/1Y5ywl/5224615235418185511?ty=x"},"publisher":{"@type":"Organization","name":"DevOps | Вопросы собесов","url":"https://telemetr.io/en/channels/1804037333-easy_devops","image":"https://img.telemetr.io/c/1Y5ywl/5224615235418185511?ty=x"},"commentCount":0,"interactionStatistic":[{"@type":"InteractionCounter","interactionType":"https://schema.org/ViewAction","userInteractionCount":974},{"@type":"InteractionCounter","interactionType":"https://schema.org/LikeAction","userInteractionCount":1},{"@type":"InteractionCounter","interactionType":"https://schema.org/ShareAction","userInteractionCount":10}]}}]}




Купите отельный номер с гарантией пассивного дохода в $
Как стать владельцем отельного номера и получать гарантированный доход в валюте?
Да, вы всё правильно прочитали! Процент доходности фиксирован и закреплен в договоре! А выплаты производятся строго по графику.
Эксперты International Investment отобрали лучшие объекты для инвестиций по всему миру.
Оставляйте заявку и получите персональный план инвестирования прямо сейчас!
Посмотреть каталог
#реклама
international-investment.ru
О рекламодателе
🤔 Как решить проблему, если Jenkins не видит merge request и ветки из GitLab?
- Убедиться, что используется GitLab Plugin.
- Включить webhook из GitLab.
- Установить refspec:
- +refs/merge-requests/*/head:refs/remotes/origin/mr/*
- Убедиться, что Jenkins имеет доступ к правильным permissions в GitLab.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚 Базу знаний
🤔 Что возвращает функция в bash?
В Bash функция возвращает код завершения (exit status), который представляет собой числовое значение от 0 до 255. Это значение используется для указания успешного или неуспешного выполнения функции. По умолчанию, если явно не указано возвращаемое значение, функция возвращает код завершения последней выполненной команды внутри нее.
🚩Как возвращать значения из функции?
🟠Код завершения (exit status)
Чтобы явно задать код завершения функции, используется команда
return.
my_function() {
if [[ $1 -gt 0 ]]; then
return 0 # Успех
else
return 1 # Ошибка
fi
}
my_function 5
echo $? # Выведет 0 (успех)
🟠Вывод данных через `echo`
Для передачи данных из функции (например, строки или числа) можно использовать echo. Вывод можно перехватить через подстановку команд $()
my_function() {
echo "Hello, $1!"
}
result=$(my_function "world")
echo "$result" # Выведет "Hello, world!"
🟠Изменение глобальных переменных
Функция может менять значения глобальных переменных, которые затем используются за ее пределами
my_function() {
result=$(( $1 + $2 ))
}
my_function 3 7
echo $result # Выведет 10
🚩Почему это важно?
🟠Код завершения
Используется в сценариях для проверки, выполнилась ли функция успешно. Значение 0 обычно означает успех, а любое другое число — ошибку.
🟠Вывод через `echo`
Удобен для передачи данных из функции.
🟠Изменение переменных
Полезно, если функция должна сохранять данные для дальнейшей обработки.
# Функция проверки файла
check_file() {
if [[ -f $1 ]]; then
echo "Файл $1 существует."
return 0
else
echo "Файл $1 не найден."
return 1
fi
}
# Вызов функции
check_file "/etc/passwd"
status=$? # Сохраняем код завершения
if [[ $status -eq 0 ]]; then
echo "Продолжаем работу..."
else
echo "Останавливаемся из-за ошибки."
fi
Ставь 👍 и забирай 📚 Базу знанийРеклама для бизнеса любого уровня в Яндекс Директе
Создайте эффективную рекламную кампанию с алгоритмами Яндекс Директа 👌
Начните прямо сейчас ⚡
Зарегистрироваться
#реклама
direct.yandex.ru
О рекламодателе
🤔 Как найти запущенный процесс?
1. Используйте команду ps (например, ps aux для подробной информации).
2. Команда top показывает активные процессы в реальном времени.
3. Для фильтрации можно использовать pgrep <имя процесса>.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚 Базу знаний
Запустите рекламу в телеграм-каналах с Яндекс Директом
Перфоманс-реклама теперь в телеграм-каналах ⚡
Яндекс Директ знает, как привлечь целевую аудиторию 💰👌
Попробовать
#реклама
yandex.ru
О рекламодателе
🤔 С каким максимальным кол-ом адресов ОП может провзаимодействовать процессор?
Максимальное количество адресов оперативной памяти (ОП), с которыми может взаимодействовать процессор, зависит от ширины адресной шины процессора. Адресная шина определяет, сколько уникальных адресов памяти процессор может адресовать.
🚩Формула вычисления
Количество адресуемых ячеек памяти определяется по формуле:
\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).
Ставь 👍 и забирай 📚 Базу знаний
Тютю-гребень или капикрыса?
Побалуйте себя роскошью от Ричарда Сапогова или утепляйтесь с культовой рубашкой Инженера. Выбирайте фаворитов из коллекции с персонажами Антона Лапенко.
Перейти на сайт
#реклама
tbank.ru
О рекламодателе
🤔 Как построить выделение ресурсов, балансировку, нагрузку и масштабирование?
Выделение ресурсов:
- Использование kubernetes requests/limits, cgroups, namespaces.
- Автоматическое масштабирование под CPU/Memory.
Балансировка нагрузки:
- Внутри кластера — через kube-proxy, kube-dns, Istio, Envoy.
- Наружу — Ingress Controller, L7 балансировщики (Nginx, Traefik), L4 (HAProxy, AWS ALB).
Масштабирование:
- Horizontal Pod Autoscaler по метрикам.
- Vertical Pod Autoscaler для подбора ресурсов.
- Cluster Autoscaler — масштабирует сам кластер.
Оркестрация + наблюдение:
- Prometheus + Grafana для метрик.
- Alertmanager для алертов.
- Tracing (Jaeger, OpenTelemetry).
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚 Базу знаний
🤔 Какой инструмент нам может помочь в снятии метрик с продукта?
Если вам нужно собирать метрики (нагрузка, ошибки, задержки, бизнес-показатели) с вашего продукта, то вот лучшие инструменты
🟠Prometheus + Grafana
Prometheus – база данных временных рядов (time-series DB) для хранения метрик.
Grafana – мощная визуализация метрик.
Метрики собираются экспортерами (
node_exporter, blackbox_exporter и т. д.).
Данные хранятся в Prometheus.
Grafana показывает красивые графики.
rate(http_requests_total[5m]) # Запросы в секунду за 5 минут
🟠Zabbix
Устанавливается агент на сервер (zabbix-agent). Сервер собирает метрики и генерирует алерты.
Ставь 👍 и забирай 📚 Базу знаний🤔 Сколько существует проб в Kubernetes?
Существует три типа проб:
1. livenessProbe
2. readinessProbe
3. startupProbe
Каждая решает свою задачу и настраивается отдельно в манифесте pod'а.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚 Базу знаний
🤔 Как посмотреть логи в уже работающем контейнере?
Чтобы посмотреть логи работающего контейнера в Docker, используйте команду:
docker logs <container_id>
или
docker logs <container_name>
🚩Основные флаги
🟠`-f` (follow)
следить за логами в реальном времени (как tail -f):
docker logs -f <container_id>
🟠`--tail N`
показать только последние N строк:
docker logs --tail 100 <container_id>
🟠`-t` (timestamps)
добавить метки времени:
docker logs -t <container_id>
🚩Просмотр логов через `docker-compose`
Если контейнер запущен через docker-compose, можно использовать:
docker-compose logs -f
или для конкретного сервиса:
docker-compose logs -f <service_name>
🚩Логи для контейнера с systemd (если Docker пишет в `journald`)
journalctl -u docker -f
Ставь 👍 и забирай 📚 Базу знаний🤔 Как происходит работа с диском?
Работа с диском идёт через:
1. Файловую систему — разбивка данных на блоки, управление метаданными.
2. ОС и драйверы — планируют чтение/запись, оптимизируют доступ.
3. Кэширование — часто используется буферизация в RAM.
4. Контроллер диска — управляет физическим доступом на уровне блоков.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚 Базу знаний
🤔 Как происходит секьюрити тест какой алгоритм под капотом?
Security-тестирование – это процесс проверки системы на уязвимости, угрозы и риски атак. Оно помогает защитить данные и сервисы от хакеров.
🚩Сканеры уязвимостей (Nessus, OpenVAS)
- Загружают базу известных уязвимостей (CVE).
- Проверяют систему на наличие этих уязвимостей.
- Используют сигнатурный анализ (по шаблонам) и эвристический анализ (поведенческий).
🚩SQL-инъекции (SQLmap, Burp Suite)
- Автоматически подставляют вредоносные SQL-запросы (
' OR 1=1 --).
- Проверяют, есть ли доступ к базе данных.
- Выполняют дамп данных, если нашли уязвимость.
SELECT * FROM users WHERE username = 'admin' --' AND password = 'password'
🚩Поиск XSS-уязвимостей (DOM-XSS, Stored-XSS, Reflected-XSS)
- Вставляют вредоносный JavaScript-код в форму ввода.
- Если скрипт исполняется в браузере – уязвимость найдена.
<script>alert('XSS!')</script>
🚩Подбор паролей (Brute Force, Dictionary Attack)
- Пробуют тысячи вариантов паролей (rockyou.txt).
- Используют John the Ripper, Hydra, Hashcat.
hydra -l admin -P passwords.txt 192.168.1.1 ssh
🚩Анализ трафика (MITM, Sniffing, Packet Analysis)
Захватывают пакеты сети (tcpdump, Wireshark).
Ищут передаваемые пароли, сессии, токены.
Ставь 👍 и забирай 📚 Базу знаний🤔 Как работает GitLab Runner?
Это агент, выполняющий CI/CD задачи.
1. Он регистрируется в GitLab и запускает задачи (jobs) из .gitlab-ci.yml.
2. Работает в разных режимах (shell, Docker, Kubernetes) для выполнения сборок, тестов и деплоя.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚 Базу знаний
🤔 Как в линуксе посмотреть список дескрипторов файлов?
В 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
🚩Почему важно знать про дескрипторы?
🟠Отладка приложений
Определение, какие файлы, сокеты или устройства использует процесс.
🟠Устранение утечек
Проверка, остаются ли ненужные дескрипторы открытыми.
🟠Администрирование
Диагностика проблем, связанных с блокировкой файлов.
Ставь 👍 и забирай 📚 Базу знаний🤔 Куда идёт деплой из релизных веток?
Из release-веток обычно:
- деплой идёт в staging/QA окружение для тестирования;
- после подтверждения — в master, что может инициировать production-деплой.
Это даёт возможность проверить стабильность перед боевым запуском.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚 Базу знаний
🤔 Как и где посмотреть логи какого-нибудь сервиса?
Обычно хранятся в каталоге
/var/log. Также многие современные дистрибутивы используют систему журналирования systemd для управления и просмотра логов.
🚩Способы просмотра
🟠Просмотр логов в /var/log
Каталог /var/log содержит логи большинства системных сервисов и приложений.
Логи системных сообщений
/var/log/syslog: Содержит общие системные логи. /var/log/messages: Содержит общие системные сообщения (не во всех дистрибутивах).
cat /var/log/syslog
less /var/log/syslog
tail -f /var/log/syslog
Логи конкретных сервисов
Apache: /var/log/apache2/ или /var/log/httpd/ Логи доступа: /var/log/apache2/access.log или /var/log/httpd/access_log Логи ошибок: /var/log/apache2/error.log или /var/log/httpd/error_log
tail -f /var/log/apache2/access.log
tail -f /var/log/apache2/error.log
Nginx: /var/log/nginx/ Логи доступа: /var/log/nginx/access.log Логи ошибок: /var/log/nginx/error.log
tail -f /var/log/nginx/access.log
tail -f /var/log/nginx/error.log
MySQL: /var/log/mysql/ или /var/log/mysqld.log
tail -f /var/log/mysql/error.log
SSH: /var/log/auth.log или /var/log/secure
tail -f /var/log/auth.log
🟠Использование `journalctl` для системных логов
journalctl — это утилита для просмотра и управления журналами systemd. Она позволяет фильтровать логи по различным критериям, таким как время, сервис и уровень логирования.
Основные команды journalctl
Просмотр всех журналов
journalctl
Логов конкретного сервиса
journalctl -u nginx.service
Последних логов и продолжение просмотра в реальном времени
journalctl -f
journalctl -u nginx.service -f
Логов за определённый период
journalctl --since "2024-07-25 12:00:00" --until "2024-07-25 13:00:00"
Логов с определённым уровнем логирования
journalctl -p err
journalctl -p warning
🚩Примеры использования
🟠Просмотр логов Apache
Логи доступа
tail -f /var/log/apache2/access.log
Логи ошибок
tail -f /var/log/apache2/error.log
🟠Просмотр логов Nginx
Логи доступа
tail -f /var/log/nginx/access.log
Логи ошибок
tail -f /var/log/nginx/error.log
🟠Использование `journalctl` для просмотра логов Nginx
Все логи Nginx
journalctl -u nginx.service
Последние логи Nginx в реальном времени
journalctl -u nginx.service -f
Ставь 👍 и забирай 📚 Базу знаний🔥 OTUS запускает курс «DevOps-инженер: практики и инструменты» — тестирование уже открыто!
Готовы к настоящему DevOps в продакшене + максимальная скидка? Пройдите бесплатный тест и зафиксируйте спеццену и место в группе!
За 5 месяцев вы получите:
- Боевой стек 2025–2026: Docker → K8s → Terraform → Ansible → GitLab CI/CD → Prometheus + Grafana
- Бесплатный Yandex Cloud + большой финальный проект с защитой
- Демки в прямом эфире + код-ревью от менторов из Сбера, IBM, Касперского
- Только то, что реально юзают в проде
Научитесь:
- Делать CI/CD, который не падает в 3 ночи
- Управлять инфраструктурой как кодом
- Запускать отказоустойчивый Kubernetes
- Настраивать полный мониторинг и спать спокойно
Старт: 29 января 2026 г.
👉 Пройти тест и забронировать место: https://otus.pw/Ik13/
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
🤔 На каком шаге заканчивается Continuous Integration?
CI заканчивается после:
- успешной сборки,
- прохождения тестов,
- публикации артефактов.
Далее идёт этап доставки (delivery) или развёртывания (deployment) — это уже CD.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚 Базу знаний
