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

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

رفتن به کانال در Telegram
5 509
مشترکین
+124 ساعت
-67 روز
+130 روز
آرشیو پست ها
Гайд для маркетологов по эффективным онлайн-встречам Как CMO, PR и digital-маркетологам повысить результативность брейнштормо
Гайд для маркетологов по эффективным онлайн-встречам Как CMO, PR и digital-маркетологам повысить результативность брейнштормов, совещаний и планерок с командой с помощью онлайн-встреч? Гайд МТС Линк: 37 страниц полезных материалов, чек-листов и кейсов для эффективных видеовстреч и совещаний. ✅ В гайде: - Как создать постоянную ссылку на регулярные встречи с подрядчиками, командой или агентствами и подключаться в 2 клика; - Как управлять встречей и завершить ее четкими договоренностями с ИИ-расшифровкой голоса в текст; - Как проводить кастдевы, брейнштормы и формулировать гипотезы с помощью 15+ шаблонов в онлайн-досках МТС Линк; - Как разом пригласить всех участников на синк таким образом, чтобы все пришли. Бонус внутри: 5 способов не выгореть от бесконечных синков. ✨ Скачайте гайд бесплатно по ссылке Скачать #реклама 16+ mts-link.ru О рекламодателе

🤔 Какие Cloud есть? - AWS — лидер по функциональности; - Azure — хорош для интеграции с Microsoft; - GCP — оптимизирован под Big Data и AI; - Также: IBM Cloud, Oracle Cloud, DigitalOcean, Hetzner, Yandex Cloud. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

🤔 Что такое SLA, SLO, SLI? Эти три термина относятся к управлению надежностью и качеством IT-сервисов. Они помогают определить, измерить и гарантировать уровень обслуживания пользователей. 🚩SLI (Service Level Indicator) – Показатель уровня сервиса SLI – это метрика, которая показывает, насколько хорошо работает сервис. - Доступность (например, uptime 99.9%) - Время ответа API (например, менее 200 мс) - Ошибки запросов (например, не более 1% 5xx ошибок) 🚩SLO (Service Level Objective) – Целевой уровень сервиса SLO – это цель, которую компания ставит для SLI. Доступность 99.9% сервиса в месяц. Среднее время ответа API ≤ 200 мс. 🚩SLA (Service Level Agreement) – Соглашение об уровне сервиса SLA – это официальное соглашение между клиентом и провайдером сервиса, которое описывает обязательства и штрафы за их невыполнение. - Если доступность меньше 99.9%, клиент получает возврат денег. - Если среднее время ответа API больше 500 мс, клиент получает скидку. 🚩Как они связаны? SLI (метрика) → измеряет, насколько хорош сервис. SLO (цель) → устанавливает, каким должен быть сервис. SLA (договор) → фиксирует обязательства и штрафы. Ставь 👍 и забирай 📚 Базу знаний

🤔 Как проверять merge request в бесплатном GitLab? - Использовать pipelines only for MRs: - only: - merge_requests - Включить проверки на наличие: - mr.labels, mr.title, mr.assignee. - Автоматизировать через .gitlab-ci.yml с rules и only. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

🤔 Зачем нужны теги в Ansible? Теги в Ansible позволяют запускать только определенные задачи или роли, а не весь плейбук. Это ускоряет выполнение и упрощает управление конфигурацией. 🚩Когда использовать теги? 🟠Запуск только нужных задач если плейбук содержит много шагов, можно выполнить только нужные. 🟠Разделение задач по категориям например, отдельно установка, обновление, настройка сервиса. 🟠Оптимизация CI/CD ускорение развертывания, выполняя только измененные задачи. 🚩Как использовать теги? 🟠Теги в задачах (`tasks`) Простой пример – установка и перезапуск Nginx
yaml  
- name: Установить Nginx  
  apt:  
    name: nginx  
    state: present  
  tags: install  

- name: Перезапустить Nginx  
  service:  
    name: nginx  
    state: restarted  
  tags: restart  
Запуск только установки (install)
sh  
ansible-playbook playbook.yml --tags install  
Запуск только перезапуска (restart)
sh  
ansible-playbook playbook.yml --tags restart  
🟠Теги в ролях (`roles`) Если у вас несколько ролей, можно запускать только нужную:
yaml  
- hosts: all  
  roles:  
    - { role: nginx, tags: web }  
    - { role: database, tags: db }  
Запуск только роли database
sh  
ansible-playbook playbook.yml --tags db  
🟠Исключение тегов (`--skip-tags`) Можно пропустить выполнение определенных задач
sh  
ansible-playbook playbook.yml --skip-tags restart
Ставь 👍 и забирай 📚 Базу знаний

🤔 Как можно увеличить скорость чтения по большой таблице? - Использовать индексы на полях фильтрации. - Денормализация или кэширование популярных данных. - Разбивка на шарды или партиции. - Чтение batch-ами, а не всё сразу. - Оптимизация запросов, EXPLAIN PLAN. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

🤔 Что такое cherry pick? Это команда в системе контроля версий Git, которая позволяет выбрать отдельные коммиты из одной ветки и применить их к другой ветке. Это полезно, когда вы хотите перенести конкретные изменения (коммиты) в текущую ветку, не выполняя слияние всей ветки. 🚩Когда используется 🟠Применение отдельных изменений Когда нужно перенести конкретные исправления или функции из одной ветки в другую, не сливая все изменения из исходной ветки. 🟠Быстрое исправление ошибок Когда найденное исправление в одной ветке нужно срочно применить в другой, например, из ветки разработки в ветку релиза. 🟠Избежание сложного слияния Когда слияние всей ветки может привести к конфликтам или нежелательным изменениям, cherry-pick позволяет аккуратно перенести только нужные коммиты. 🚩Примеры использования 🟠Простого `cherry-pick` Перенос одного коммита из другой ветки.
# Переключитесь на ветку, куда вы хотите применить изменения
git checkout target-branch

# Выполните cherry-pick коммита
git cherry-pick <commit-hash>
🟠Применения нескольких коммитов Перенос нескольких коммитов из другой ветки.
# Переключитесь на ветку, куда вы хотите применить изменения
git checkout target-branch

# Выполните cherry-pick нескольких коммитов
git cherry-pick <commit-hash-1> <commit-hash-2> <commit-hash-3>
🟠Применения диапазона коммитов Перенос диапазона коммитов из другой ветки.
# Переключитесь на ветку, куда вы хотите применить изменения
git checkout target-branch

# Выполните cherry-pick диапазона коммитов
git cherry-pick <start-commit-hash>..<end-commit-hash>
🚩Разрешение конфликтов 1⃣Разрешите конфликты в файлах. 2⃣Добавьте изменения в индекс
git add <filename>   
3⃣Завершите процесс cherry-pick
git cherry-pick --continue   
🚩Прерывание Если вы хотите прервать процесс cherry-pick, можно использовать команду
git cherry-pick --abort
Ставь 👍 и забирай 📚 Базу знаний

Гайд для РОПов по проведению эффективных вебинаров Как руководителям отделов продаж увеличить количество успешных сделок при
Гайд для РОПов по проведению эффективных вебинаров Как руководителям отделов продаж увеличить количество успешных сделок при том же объеме лидов с помощью вебинаров? Гайд от МТС Линк по обучающим вебинарам для отделов продаж. ✅ В гайде: - Как эффективнее прокачивать скиллы менеджеров и закрывать больше сделок за меньшие сроки; - Как организовать тренинг так, чтобы участники действительно подключились и дошли до финального модуля; - Как выявить слабого менеджера и улучшить его показатели; - Как сэкономить время на организации вебинара и пригласить всех участников в 2 клика. Бонус внутри: 5 прикладных советов по контролю внимания участников во время вебинара ✨ Скачайте гайд бесплатно по ссылке Скачать #реклама 16+ mts-link.ru О рекламодателе

🤔 Что такое shared memory и зачем она? Разделяемая память (/dev/shm, shmget, mmap) — используется для IPC между процессами. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

🤔 Как версионируете чарты? Helm-чарты должны быть версионированы, чтобы отслеживать изменения и управлять развертываниями. Версии чарта (Chart.yaml) Версии приложения (appVersion) Репозиторий Helm (helm repo) Git-теги и CI/CD 🚩Версия чарта (`Chart.yaml`) Каждый Helm-чарт содержит Chart.yaml, где указывается версия чарта.
yaml  
apiVersion: v2  
name: my-app  
description: Helm chart for my application  
version: 1.2.3  
appVersion: 2.0.1  
🚩Хранение и обновление чарта в репозитории Helm Helm-чарты можно хранить в локальном или удаленном репозитории.
sh  
helm package my-chart/  
Обновить индекс в репозитории
sh  
helm repo index .  
Добавить новый чарт в Helm-репозиторий
sh  
helm repo add my-repo https://charts.example.com  
helm push my-app-1.2.3.tgz my-repo  
🚩Автоматическое версионирование через Git и CI/CD Обычно чарты хранятся в Git, и версии обновляются автоматически через CI/CD. Пример автоматического увеличения версии (version) в Chart.yaml через helm/chart-releaser-action
yaml  
name: Release Helm Chart  

on:  
  push:  
    tags:  
      - 'v*'  

jobs:  
  release:  
    runs-on: ubuntu-latest  
    steps:  
      - name: Checkout repo  
        uses: actions/checkout@v3  

      - name: Set up Helm  
        uses: azure/setup-helm@v3  
        with:  
          version: 'latest'  

      - name: Package Helm Chart  
        run: helm package my-chart/  

      - name: Upload to Helm Repo  
        uses: helm/chart-releaser-action@v1  
🚩Как установить конкретную версию чарта? Чтобы развернуть определенную версию Helm-чарта, указываем --version
sh  
helm install my-app my-repo/my-app --version 1.2.3  
Или обновить до новой версии:
sh  
helm upgrade my-app my-repo/my-app --version 1.2.4
Ставь 👍 и забирай 📚 Базу знаний

🤔 Какие стейджи входят в пайп (CI/CD pipeline)? Обычно pipeline в GitLab CI включает следующие стадии: - build — сборка приложения или зависимостей - test — выполнение unit/integration тестов - lint/code-quality — проверка качества кода - package — упаковка приложения в артефакт (например, Docker-образ) - deploy — развёртывание на окружение - cleanup — удаление временных файлов, очистка после деплоя Конкретные стейджи зависят от проекта, но выше — наиболее распространённый порядок. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

🤔 Как посмотреть размер папки на диске? Для того чтобы узнать размер папки на диске, можно воспользоваться различными методами в зависимости от операционной системы. Вот несколько способов для наиболее распространённых ОС: 🚩Windows 🟠Использование проводника (Explorer) Откройте Проводник Windows. Наведите на папку, размер которой вы хотите узнать. Кликните правой кнопкой мыши и выберите "Свойства". В открывшемся окне "Свойства" вы увидите размер папки в разделе "Размер". 🟠Использование командной строки Откройте командную строку (Cmd) или PowerShell. Введите следующую команду, заменив ПутьКПапке на путь к интересующей вас папке:
du -sh ПутьКПапке   
Для PowerShell можно использовать
      Get-ChildItem ПутьКПапке -Recurse | Measure-Object -Property Length -Sum
   
🚩macOS и Linux Использование терминала Откройте терминал. Введите команду du, чтобы узнать размер папки. Вот пример команды, которая показывает размер папки в читаемом виде (суммарный размер всех файлов)
du -sh /путь/к/папке
Ставь 👍 и забирай 📚 Базу знаний

🤔 Как установить Node.js на Astra Linux? 1. Добавить репозиторий nodesource: 2. curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash - 3. Установить Node.js: 4. sudo apt install -y nodejs 5. Проверить версию: 6. node -v 7. npm -v Если Astra использует жёсткое разделение уровней доступа (например, в SE версии), может потребоваться временно изменить политику безопасности или установить из исходников. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

🤔 Как linux выбирает, какой из процессов завершить? Она использует механизм, известный как OOM Killer (убийца процессов при нехватке памяти), для завершения процессов с целью освобождения памяти. Выбор процесса для завершения базируется на ряде критериев, чтобы минимизировать влияние на работу системы. 🚩Как работает OOM Killer? 🟠Очки OOM (OOM Score) Каждому процессу присваиваются очки OOM, которые рассчитываются на основе нескольких факторов, таких как: Объем памяти, используемой процессом. Приоритет процесса. Важность процесса для системы (например, системные демоны имеют более низкие очки). 🟠Формула расчета OOM Score Основной фактор при расчете очков - это объем потребляемой процессом памяти. Чем больше памяти потребляет процесс, тем выше его OOM Score. Операционная система также учитывает приоритет процесса (nice value) и некоторые другие параметры. 🟠Принудительное завершение Процесс с наибольшим OOM Score считается наименее критичным для системы и завершается первым. 🚩Пример расчета OOM Score 🟠Вот пример того, как может быть рассчитан OOM Score (упрощенный) Процесс A использует 1 ГБ памяти. Процесс B использует 2 ГБ памяти. Процесс C использует 500 МБ памяти, но это критический системный процесс. 🟠OOM Score для этих процессов может выглядеть так Процесс A: 300 Процесс B: 600 Процесс C: 100 (низкий, так как процесс критический) 🚩Настройка OOM Killer Администраторы могут влиять на работу OOM Killer, настраивая параметры OOM Score для конкретных процессов с помощью файлов в каталоге /proc. Например, для изменения приоритета процесса:
echo -1000 > /proc/<PID>/oom_score_adj
🚩Логирование и мониторинг При срабатывании OOM Killer соответствующие сообщения записываются в системный журнал (обычно /var/log/syslog или /var/log/messages), что позволяет администраторам анализировать причины и предпринимать меры по предотвращению в будущем. Ставь 👍 и забирай 📚 Базу знаний

Прокачай свои пайплайны с GitLab CI — секреты для DevOps и разработчиков. Хотите, чтобы ваши пайплайны в GitLab CI были не то
Прокачай свои пайплайны с GitLab CI — секреты для DevOps и разработчиков. Хотите, чтобы ваши пайплайны в GitLab CI были не только надёжными, но и эффективными? Тогда этот вебинар — для вас!  Мы покажем, как избежать ошибок, ускорить релизы и сделать процесс работы с GitLab CI простым и предсказуемым. Ошибки, которые вы научитесь избегать: 📲чрезмерная ручная настройка: мы покажем, как сделать пайплайн автономным и стабильным 📲сложные и нечитаемые пайплайны: узнаете, как разделить логику пайплайна для лучшей поддержки и управления 📲непонимание влияния CI/CD на бизнес: мы объясним, как правильный пайплайн ускоряет процесс разработки и способствует росту бизнеса 📅 Дата: 30 июля, 19:00 (МСК) - бесплатно 👉 Записаться на вебинар — https://tglink.io/02d966b499e1 Не упустите шанс сделать процесс разработки более предсказуемым и эффективным Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963. erid: 2W5zFHoLuHz

Летние цены на апартаменты в Крыму! от 28 776 руб/мес! ✨Уникальный апарт-комплекс закрытого типа, расположенный прямо у подно
+7
Летние цены на апартаменты в Крыму! от 28 776 руб/мес!Уникальный апарт-комплекс закрытого типа, расположенный прямо у подножия заповедного урочища Алчак-Кая На охраняемой территории 4 га будет обеспечено уютное, приватное пространство в историческом центре города Судака -Здесь есть собственная парковая зона и оборудованный пляж в 30 метрах от апартаментов -Благоустройство апарт-отеля продумано до мелочей, благодаря чему вы сможете забыть о бытовых заботах и посвятить себя отдыху -Локация закрыта для посторонних, вход через КПП, территория находится под наблюдением и охраняется 24/7 Огромные плюсы: -Рассрочка без удорожания -Возврат НДС 20% -Готовый бизнес для сдачи! 📱Отдыхайте здесь круглый год или получайте 2 500 000 ежегодно на сдаче номеров! 👍Получите актуальные планировки и цены Получить предложение #реклама mrqz.me О рекламодателе

🤔 RDS Aurora: автоскейлинг — базовая функция? Нет, не включён по умолчанию. Нужно: - Активировать Aurora Auto Scaling; - Настроить CloudWatch alarms; - Привязать к read-replicas или write-секциям. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

🤔 Как в линуксе посмотреть список дескрипторов файлов? В 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
🚩Почему важно знать про дескрипторы? 🟠Отладка приложений Определение, какие файлы, сокеты или устройства использует процесс. 🟠Устранение утечек Проверка, остаются ли ненужные дескрипторы открытыми. 🟠Администрирование Диагностика проблем, связанных с блокировкой файлов. Ставь 👍 и забирай 📚 Базу знаний

Гайд МТС Линк для CEO по эффективным онлайн-встречам Как CEO сохранять фокус на стратегии и развивающих задачах и не терять д
Гайд МТС Линк для CEO по эффективным онлайн-встречам Как CEO сохранять фокус на стратегии и развивающих задачах и не терять договоренности с руководителями и топ-командой? Гайд МТС Линк — чек-листы, кейсы и подходы для оптимизации совещаний с помощью онлайн-встреч и ИИ. ✅ В гайде: - Как доносить цели, культуру и стратегию компании до каждого сотрудника; - Как снижать затраты на корпоративное обучение без потери качества и вовлечения; - Как сократить расходы на организацию имиджевых событий с помощью одного решения; - Как не устроить хаос в коммуникациях между командами при расширении компании. Бонус внутри: 5 способов не выгореть от бесконечных синков. ✨ Скачайте гайд бесплатно по ссылке Скачать #реклама 16+ mts-link.ru О рекламодателе

🤔 Как примонтировать диск? Для монтирования диска используется команда, которая связывает файловую систему диска с директорией в системе. После монтирования содержимое диска становится доступным в указанной точке монтирования. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний