tgindex

Библиотека задач по DevOps | тесты, код, задания

описание

Задачи и тесты по DevOps для тренировки и обучения. Учиться у нас: https://clc.to/XLFrnw По рекламе: @proglib_adv Наши каналы: https://t.me/proglibrary/9197 Для обратной связи: @proglibrary_feeedback_bot

3 008
подписчиков

Лучшие посты

за три месяца
  • 27 июл.1 404 просмотров10 реакций6 пересылок

    Что делает ConfigMap в Kubernetes? 👾 — Управляет сетевым трафиком 👍 — Хранит большие наборы данных 🥰 — Управляет секретами приложений ⚡️ — Отделяет конфигурацию от кода приложения Библиотека задач по DevOps

  • 2 июн.421 просмотров8 пересылок

    🙂 Devops Концепция DevOps была представлена в 2009 Patrick Debois и Andrew Shafer на конференции "Agile". Они стремились сократить разрыв между разработкой ПО и его эксплуатацией, продвигая культуру сотрудничества и общую ответственность за весь жизненный цикл разработки ПО. Концепция SRE, или Site Reliability Engineering (проектирование надежности объекта), была впервые разработана компанией Google в начале 2000-х для решения операционных задач управления крупномасштабными и сложными системами. Google разработала методы и инструменты SRE, такие как система управления кластерами Borg и система мониторинга Monarch, чтобы повысить надежность и эффективность своих сервисов. Platform Engineering (разработка платформ) — это более новая концепция, основанная на SRE. Считается, что это расширение практик DevOps и SRE с упором на предоставление комплексной платформы для разработки продуктов, которая поддерживает всю бизнес-логику. Все эти концепции связаны с тенденцией улучшения совместной работы, автоматизации и эффективности разработки и эксплуатации ПО. 🔹 Практический интенсив «Архитектуры и шаблоны проектирования» 🔹 Получить консультацию менеджера 🔹 Сайт Академии 🔹 Сайт Proglib 🏃‍♀️ Азбука айтишника #ликбез

  • 23 июл.365 просмотров6 реакций3 пересылок

    Как автоматически триггерить роллаут Deployment при изменении ConfigMap, смонтированного в под? 👾 — Kubernetes сам перезапустит поды при обновлении файла 👍 — Включить в шаблон пода аннотацию с хэшем содержимого ConfigMap (checksum); смена хэша меняет pod spec и запускает роллаут 🥰 — Поставить стратегию Recreate — перезапустится при любом изменении ⚡️ — Смонтировать ConfigMap как env, тогда перезапуск не нужен Библиотека задач по DevOps

  • 31 мая362 просмотров1 реакций8 пересылок

    🐳 Docker vs ☸️ Kubernetes: Кто за что отвечает? Если ты до сих пор путаешь эти два понятия, не переживай, это база, в которой легко заплутать. Давай разберем разницу. Что такое Docker? Это инструмент для контейнеризации. Он позволяет упаковать приложение и все его зависимости (библиотеки, фреймворки) в один легкий изолированный контейнер. - Как работает: Один демон на один хост операционной системы. - Фокус: Создание, распределение и запуск отдельных контейнеров. - Итог: Твой код работает везде одинаково, но управлять сетью и безопасностью между кучей серверов придется вручную. Что такое Kubernetes (K8s)? Это оркестратор. Если Docker - это один кирпич (контейнер), то K8s - это целая стройплощадка и прораб в одном лице, который управляет кластером из множества хостов. - Как работает: Управляет множеством хостов в рамках одного кластера (Many Hosts per Cluster). - Фокус: Автоматизация деплоя, масштабирование и «самолечение» приложений. - Итог: Система сама балансирует нагрузку и следит, чтобы всё работало согласно заданному плану. ➖ Главные отличия: Уровень работы | Docker: Отдельные контейнеры на одном хосте | Kubernetes: Кластер из множества хостов | Масштабирование | Docker: Нужно настраивать вручную для каждого хоста | Kubernetes: Автоматическое масштабирование по требованию | Сложность | Docker: Просто запустить и использовать |Kubernetes: Требует серьезной настройки и навыков | Суть проста: Docker фокусируется на том, как упаковать и запустить код, а Kubernetes на том, как управлять этим кодом в масштабах огромной системы. Вы за ручное управление или доверяете всё автоматике K8s? ❤️ — Docker наше всё, просто и понятно 🔥 — K8s, когда нужно масштабироваться 🔹 Курс «Алгоритмы и структуры данных» 🔹 Получить консультацию менеджера 🔹 Сайт Академии 🔹 Сайт Proglib 🏃‍♀️ Азбука айтишника #ликбез

  • 22 июл.361 просмотров5 реакций2 пересылок

    Как обеспечить стабильные DNS-имена подов в StatefulSet? 👾 — Обычный Service типа ClusterIP без настроек 👍 — Headless Service (clusterIP: None) и serviceName в StatefulSet → имена вида <pod>.<svc> 🥰 — NodePort с фиксированным портом ⚡️ — DaemonSet с аннотацией stable-dns Библиотека задач по DevOps

  • 30 июл.332 просмотров8 реакций1 пересылок

    Где расположен крупнейший кластер центров обработки данных AWS? 👾 — Лос Анжелес 👍 — Северная Вирджиния 🥰 — Лаг Вегас ⚡️ — Нью-Йорк Библиотека задач по DevOps

  • 1 июн.332 просмотров6 пересылок

    👩‍💻 Что такое Kubernetes? Kubernetes (K8s) – это система оркестрации контейнеров. Она используется для деплоя и управления контейнерами. Ее дизайн во многом вдохновлен Borg – внутренней системой Google. Кластер (cluster) K8s состоит из набора рабочих машин (worker machines), называющихся узлами (nodes), которые запускают контейнеризованные приложения. Каждый кластер имеет хотя бы один рабочий узел. На рабочих узлах размещаются модули (pods), которые являются компонентами рабочей нагрузки приложения. Контрольный уровень (control plane) управляет рабочими узлами и модулями в кластере. В продакшне уровень управления обычно работает на нескольких компьютерах, а в кластере, как правило, работает несколько узлов, что обеспечивает отказоустойчивость и высокую доступность. Компоненты уровня управления 1. Сервер API – общается со всеми компонентами кластера. Все операции над модулями выполняются через него. 2. Планировщик (Scheduler) - следит за полезной нагрузкой модулей и загружает создаваемые модули. 3. Менеджер контроллеров (Controller Manager) – запускает контроллеры, включая Node Controller, Job Controller, EndpointSlice Controller и ServiceAccount Controller. 4. Etcd – хранилище ключ-значение, используемое в качестве резервного хранилища данных всех кластеров. ➖ Узлы 1. Модули. Модуль – это группа контейнеров и наименьшая единица, которой оперирует K8s. Модули имеют один IP-адрес, применяемый ко всем контейнерам модуля. 2. Kubelet – агент, запускающийся на каждом узле кластера. Он обеспечивает запуск контейнеров в модуле. 3. Kube Proxy – сетевой прокси, запускающийся в каждом узле кластера. Он перенаправляет трафик, приходящий в узел из сервиса. Он перенаправляет запросы для обработки в нужные контейнеры. 🔹 Курс «Алгоритмы и структуры данных» 🔹 Получить консультацию менеджера 🔹 Сайт Академии 🔹 Сайт Proglib 🏃‍♀️ Азбука айтишника #ликбез

  • 31 июл.326 просмотров3 реакций1 пересылок

    В продакшн-кластере вы заметили, что некоторые контейнеры занимают значительно больше места, чем ожидалось. Анализ показал, что Docker-образы разрослись до нескольких гигабайт. Какой из подходов наиболее правильный для оптимизации размера образов? 👾 — Использовать docker system prune -a, чтобы очистить все неиспользуемые образы и освободить место 👍 — Перейти на базовые образы типа alpine и оптимизировать Dockerfile (multi-stage build, минимизация слоёв) 🥰 — Хранить большие артефакты (логи, кеши) прямо внутри контейнера, чтобы не загружать файловую систему хоста ⚡️ — Запускать контейнеры с флагом --rm, чтобы они удалялись сразу после завершения работы Библиотека задач по DevOps

  • 25 июл.319 просмотров3 реакций2 пересылок

    В распределённой системе, управляемой через CI/CD pipeline с Kubernetes и Helm, какой подход наиболее устойчив к ошибкам при деплое критических компонентов с нулевым временем простоя? 👾 — Использовать helm upgrade --install с включённым --force, чтобы гарантировать замену всех ресурсов, даже при наличии ошибок. 👍 — Удалять релиз перед каждой установкой (helm uninstall), чтобы очистить состояние и исключить конфликты в конфигурации. 🥰 — Применять blue-green deployment через Helm, управляя двумя namespace и переключением ingress вручную. ⚡️ — Использовать Helm hooks (pre-upgrade, post-upgrade) для управления rollout-ом, полагаясь на helm rollback при ошибке. 🐸Библиотека задач по DevOps

  • 30 мая309 просмотров1 реакций6 пересылок

    🖥 Как работает Docker на самом деле Docker - это не просто модно, это база. Разбираемся: • Клиент: место, где ты пишешь команды типа build, pull и run. Твой пульт управления. • Хост (Daemon): мозг всей системы. Он принимает твои хотелки и превращает их в реальные образы и контейнеры. • Реестр (Registry): огромный склад (как DockerHub), где лежат готовые шаблоны образы. Когда ты пишешь docker run, происходит целая цепочка событий: 1. Docker идет на склад и забирает нужный образ. 2. Создает из него изолированный контейнер. 3. Выделяет ему место на диске и настраивает сеть. 4. Запускает процесс. Все. Твое приложение работает в идеальной среде, и ему плевать, какая операционка у сервера. Уже упаковывали свои проекты в Docker? 🌚 - да, постоянно юзаю 👾 - нет, пока только присматриваюсь 🔹 Курс «Основы IT для непрограммистов» 🔹 Получить консультацию менеджера 🔹 Сайт Академии 🔹 Сайт Proglib 🏃‍♀️ Азбука айтишника #ликбез

  • 20 июл.308 просмотров7 реакций1 пересылок

    Какой из перечисленных типов объектов Kubernetes является допустимым? 👾 — kind: PodTemplate 👍 — kind: ReplicaSet 🥰 — kind: ServiceAccount ⚡ — Все вышеперечисленное Библиотека задач по DevOps

  • 29 июл.288 просмотров8 реакций1 пересылок

    Какова распространенная причина сбоев запуска контейнеров в Kubernetes? 👾 — Поврежденные изображения 👍 — Неправильная конфигурация сети 🥰 — Недостаточно ресурсов ⚡️ — Все вышеперечисленное Библиотека задач по DevOps

  • 24 июл.285 просмотров

    😮‍💨 До конца июля сохраняются две приятные вещи: специальная цена и бессрочный доступ к материалам курса. Подробнее — в посте 👇

  • 21 июл.280 просмотров1 реакций1 пересылок

    Проект, созданный для упрощения и оптимизации использования Docker на Mac или Windows. Этот инструмент автоматизирует процесс установки и настройки Docker и предоставляет графический интерфейс пользователя для запуска контейнеров Docker 👾 — Docker Cloud 👍 — Docker Kitematic 🥰 — Docker Compose ⚡ — Docker Control Plane Библиотека задач по DevOps

  • 27 июл.278 просмотров1 пересылок

    Когда название файла уже само по себе считается техническим долгом 👇

  • 30 июл.269 просмотров1 реакций

    🎯 У разработчика, DevOps-инженера и техлида разные причины задуматься о системной работе с AI-агентами Но цель одна: перейти от случайных удачных запусков к управляемому процессу на реальном проекте — с понятными правилами, ревью, контролем расходов и безопасности ✔️ На курсе «ИИ для разработчиков» участники выстраивают такой процесс на практике: подключают инструменты, задают границы для агента и учатся понимать, где ему можно доверять работу, а где требуется проверка. ⚡️ Предзапись на осенний поток уже открыта 🏃‍♀️ Proglib Academy

  • 30 июл.263 просмотров

    Разработчику нужен стабильный результат, DevOps — контроль инфраструктуры, техлиду — правила для всей команды. Собрали это в одном посте 👇

  • 27 июл.256 просмотров1 реакций1 пересылок

    У вас в проекте есть файл вроде utils_v2_final_FIX.py, который все боятся трогать ❓ Что делаете с таким легаси? ❤️ Не трогаю: работает — и ладно 👍 Переписываю с нуля и надеюсь на лучшее 🔥 Сначала покрываю тестами, потом рефакторю по частям 👾 У нас такого нет — честно-честно На курсе «ИИ для разработчиков» разберём третий подход: как с помощью агента зафиксировать текущее поведение легаси-кода тестами, а затем менять его небольшими безопасными шагами — без одного огромного PR на тысячу файлов. До 31 июля действует скидка и бессрочный доступ к материалам. 🔗 Занять место со скидкой 🏃‍♀️ Proglib Academy

  • 24 июл.254 просмотров1 пересылок

    📈 Скоро фраза «умею пользоваться AI» в резюме будет звучать так же странно, как сегодня «умею пользоваться Git» Это просто станет частью профессии. А вот умение встроить AI в процесс разработки так, чтобы он действительно ускорял работу команды, останется конкурентным преимуществом 💡 🔜 На курсе «ИИ для разработчиков» участники работают со своими проектами и учатся делать AI частью ежедневной разработки: планировать задачи, писать код, проверять изменения, готовить PR и автоматизировать рутину. До конца июля действует специальная цена — 59 990 ₽ вместо 79 990 ₽ 🥳 И получить бессрочный доступ ко всем материалам курса. 🔗 Посмотреть, как устроен курс 🏃‍♀️ Proglib Academy

  • 4 авг.242 просмотров7 реакций2 пересылок

    Несколько инженеров иногда одновременно запускают terraform apply, рискуя повредить state. Как это правильно предотвратить? 👾 — Хранить state локально у каждого разработчика 👍 — Использовать удалённый backend с блокировкой (S3 + DynamoDB lock / GCS / Az Blob) и -lock=true 🥰 — Поставить git-hook, запрещающий git push во время apply ⚡️ — Перед каждым apply делать terraform refresh Библиотека задач DevOps