gram news
Библиотека девопса | DevOps, SRE, Sysadmin channel avatar

Библиотека девопса | DevOps, SRE, Sysadmin

@devopslib

Блог DevOps инженера

ProjectsRUProgramming

1,260subscribers

Open the Channel

Latest posts

  • Библиотека девопса | DevOps, SRE, Sysadmin

    7 Sept, 07:29

    🔥 Kubernetes: Как уменьшить время старта подов? 🔥Одной из распространенных проблем в Kubernetes является длительный запуск подов, особенно если в кластере много сервисов. Давайте разберёмся, как можно ускорить этот процесс.🚀 1. Используйте лёгкие образы Выбирайте образы с минимальным количеством зависимостей. Вместо ubuntu:latest лучше взять alpine или distroless.⚡ 2. Настройте readinessProbe и livenessProbe Некорректные пробки могут заставить Kubernetes перезапускать поды или считать их неготовыми дольше, чем нужно. Используйте их осознанно.🎯 3. Предзагружайте образы (Image Pull Policy) Если ваши поды используют публичные образы, включите ImagePullPolicy: IfNotPresent или Never, чтобы не скачивать образ при каждом старте.containers: - name: app image: my-registry/app:latest imagePullPolicy: IfNotPresent💾 4. Используйте InitContainers для подготовки окружения Если поду
  • Библиотека девопса | DevOps, SRE, Sysadmin

    31 Aug, 05:57

    🚀 GitOps: революция в управлении инфраструктуройGitOps — это подход к управлению инфраструктурой и развертыванию приложений, основанный на использовании Git как единственного источника правды. Все изменения проходят через pull request'ы, что дает прозрачность, контроль версий и автоматизацию.🔹 Как это работает? 1️⃣ Вся конфигурация хранится в Git-репозитории. 2️⃣ Изменения происходят через коммиты и pull request'ы. 3️⃣ Автоматические агенты (ArgoCD, FluxCD) следят за репозиторием и применяют изменения в кластер.🔹 Преимущества GitOps: ✅ Полная история изменений — легко откатиться назад. ✅ Автоматизация CI/CD — минимум ручной работы. ✅ Единая точка правды — все изменения в Git. ✅ Повышенная безопасность — политика pull request'ов предотвращает случайные ошибки.🔹 Лучшие инструменты для GitOps: 🔸 ArgoCD — мощный инструмент с UI для визуального управления деплоями. 🔸 FluxCD —
  • Библиотека девопса | DevOps, SRE, Sysadmin

    26 Aug, 05:20

    🔹 DevOps: секреты работы с Terraform State 🔹Terraform — мощный инструмент для управления инфраструктурой, но работа с его state-файлом требует особого внимания. Сегодня разберем, как правильно управлять состоянием и избегать проблем.🚀 Основные проблемы с Terraform State 1️⃣ State-файл локально – потеряешь файл = потеряешь инфраструктуру. 2️⃣ Конфликты изменений – если несколько людей работают с одним state-файлом, возможны проблемы. 3️⃣ Частичная поломка state – если во время apply что-то пойдет не так, можно остаться с "битым" состоянием.🔧 Как правильно работать с state? ✔️ Храни state в удаленном бекенде (S3 + DynamoDB, GCS, Azure Blob) – это защитит от потерь. ✔️ Включай блокировку state – например, DynamoDB table предотвратит конфликты. ✔️ Используй команды terraform state – они помогут править state без лишних apply. ✔️ Настрой шифрование – если хранишь state в облаке,
  • Библиотека девопса | DevOps, SRE, Sysadmin

    24 Aug, 07:55

    Как мониторить сервер без Prometheus?Не всегда есть возможность поднять полноценный стек мониторинга, особенно если нужно быстро проверить состояние сервера. В таких случаях можно обойтись стандартными утилитами Linux.🔥 1. Нагрузка на процессорtop -o %CPU htoptop покажет общую картину, htop— более детализированную с цветами.🔥 2. Использование памятиfree -h vmstat -sКоманда free -h выведет статистику по RAM в удобном виде.🔥 3. Диск и файловая система
  • Библиотека девопса | DevOps, SRE, Sysadmin

    21 Aug, 08:01

    🔥 Как не попасть в ад Kubernetes? 🔥Все любят Kubernetes, пока он не начинает тащить вас в бездну бесконечных YAML-файлов и неожиданных фейлов. Держи чек-лист, чтобы не превратить кластер в хаос:✅ RBAC с первого дня – без ограничений все контейнеры вдруг получают суперспособности (и это не круто). Разграничивай доступ сразу!✅ Readiness & Liveness Probes – не будь тем, кто деплоит сервис без проверки его живучести. Без этих проб — гарантированные проблемы с балансировкой.✅ Resource Requests & Limits – хочешь, чтобы один под сожрал все CPU и мем? Нет? Тогда ставь лимиты!✅ Поднимай мониторинг раньше, чем тебе понадобится – Prometheus, Grafana, Loki… Не жди, пока что-то сломается.✅ Network Policies – не будь дырявым – если не ограничить трафик, твои поды будут общаться как захотят. Взломать такой кластер проще простого.✅ Backup etcd – всегда! – потеря etcd = потеря всего.
    31521Open in Telegram
  • Библиотека девопса | DevOps, SRE, Sysadmin

    20 Aug, 06:58

    Как DevOps-у не сгореть на работе? 🔥🚒DevOps — это бесконечный поток задач, инцидентов и улучшений. Но если постоянно тушить пожары и не заботиться о себе, можно быстро перегореть. Как этого избежать?1️⃣ Автоматизируй всё, что можно Если ты делаешь одну и ту же рутину более двух раз — это кандидат на автоматизацию. Bash-скрипты, Ansible, Terraform, GitHub Actions — твои лучшие друзья.2️⃣ Логи и мониторинг – твой щит 🛡️ Не жди звонка в 3 ночи из-за того, что прод лег. Настрой Prometheus + Grafana, Loki, ELK или OpenTelemetry. Ставь алерты заранее, чтобы проблемы решались до того, как их заметит бизнес.3️⃣ Не будь "героем", работай в команде 🤝 Нет ничего хуже, чем быть единственным, кто знает, как работает инфраструктура. Делегируй, пиши документацию, проводи knowledge-sharing сессии.4️⃣ Баланс между работой и жизнью 🌿 Если ты постоянно на связи 24/7, это путь в никуда.
    32153Open in Telegram
  • Библиотека девопса | DevOps, SRE, Sysadmin

    19 Aug, 05:41

    🔥 Kubernetes vs Docker Compose: Что выбрать? 🔥Когда приходит время управлять контейнерами, многие задаются вопросом: использовать Docker Compose или Kubernetes? Разбираемся!🚀 Docker Compose ✅ Простота развертывания — один YAML-файл, одна команда docker-compose up. ✅ Идеально подходит для локальной разработки и тестирования. ✅ Быстрый старт без сложных конфигураций. ❌ Не поддерживает автоматическое масштабирование и самовосстановление контейнеров. ❌ Ограниченные возможности оркестрации.🏗️ Kubernetes ✅ Масштабируемость и отказоустойчивость из коробки. ✅ Автоматическое управление состоянием контейнеров (перезапуск, балансировка нагрузки). ✅ Гибкость за счет Helm, CRD и сложных политик. ❌ Сложность в настройке и сопровождении. ❌ Требует значительных ресурсов.💡 Вывод 👉 Docker Compose — лучший вариант для разработки и небольших проектов.
    31511Open in Telegram
  • Библиотека девопса | DevOps, SRE, Sysadmin

    18 Aug, 20:51

    Как проверить, что твои бэкапы не просто занимают место?Резервное копирование — это как страховка: пока не случится беда, никто о нём не думает. Но когда приходит время восстановления, многие с удивлением обнаруживают, что бэкап либо повреждён, либо неполон, либо вовсе не содержит нужных данных. Как избежать этого?🔹 Автоматическое тестирование восстановления Настрой регулярное восстановление из резервных копий в тестовой среде. Например, можно развернуть временный сервер и поднять на нём восстановленную БД.🔹 Сравнение контрольных сумм Для файловых бэкапов сохраняй хэши (MD5, SHA256) до и после резервного копирования. Это поможет выявить изменения или повреждения данных.🔹 Логирование и мониторинг Настрой алерты на ошибки резервного копирования. Если скрипт завершился неудачно, ты должен об этом узнать раньше, чем твой прод улетит в тартарары.🔹 Глубина хранения и дедупликация
  • Библиотека девопса | DevOps, SRE, Sysadmin

    17 Aug, 08:06

    🔍Тестовое собеседование с Head of DevOps уже завтра18 августа(уже завтра!) в 19:00 по мск приходи онлайн на открытое собеседование, чтобы посмотреть на настоящее интервью на Middle DevOps-разработчика.Как это будет: 📂 Александр Хренников, Head of DevOps в KTS с опытом 14+ лет, будет задавать реальные вопросы и задачи разработчику-добровольцу 📂 Александр будет комментировать каждый ответ респондента, чтобы дать понять, чего от вас ожидает собеседующий на интервью 📂 В конце можно будет задать любой вопрос АлександруЭто бесплатно. Эфир проходит в рамках менторской программы от ШОРТКАТ для DevOps-разработчиков, которые хотят повысить свой грейд, ЗП и прокачать скиллы.Переходи в нашего бота, чтобы получить ссылку на эфир → @shortcut_devops_botРеклам
    Image from a post by Библиотека девопса | DevOps, SRE, SysadminImage from a post by Библиотека девопса | DevOps, SRE, Sysadmin
    34211Open in Telegram
  • Библиотека девопса | DevOps, SRE, Sysadmin

    13 Aug, 15:00

    💡 Когда docker system prune спасает твой диск... но не всё так простоВсе мы знаем, что Docker любит кушать диск. Особенно, если часто собирать образы, поднимать временные контейнеры или играться с volume'ами. Рано или поздно ты ловишь No space left on device, и начинается пляска с du -sh в /var/lib/docker.И вот тут на сцену выходит герой — docker system prune.docker system prune -a --volumes🔪 Удалит всё:остановленные контейнеры неиспользуемые образы все dangling volume'ы неиспользуемые networksНо вот в чём засада: он удалит и то, что тебе может быть нужно. Например, образы, которые не используются сейчас, но могут быть нужны через 5 минут.⚠️ Советы по выживанию:Перед запуском — проверь, что ты точно хочешь всё вычистить.
  • Библиотека девопса | DevOps, SRE, Sysadmin

    11 Feb, 12:45edited

    🥊 Helm vs Kustomize: Вечная битва или идеальный симбиоз?Салют! 👋Сегодня затронем тему, из-за которой в курилках девопсов доходит до драки. Как управлять манифестами?В левом углу ринга - Helm (пакетный менеджер, шаблоны, {{ .Values }}). В правом углу - Kustomize (оверлеи, патчи, native k8s).Многие пытаются выбрать один инструмент на всё. И это ошибка. Давайте разберем, где каждый из них король.⚓️ Helm: Король дистрибуцииHelm - это про упаковку. Если вы хотите поставить Redis, Prometheus или Ingress-Nginx - вы берете Helm. Почему?1. Параметризация: Вам не надо знать внутренности чарта, просто переопределите values.yaml.2. Хуки: Возможность запустить джобу перед установкой (например, миграцию БД).
    1,0304311Open in Telegram
  • Библиотека девопса | DevOps, SRE, Sysadmin

    30 Jan, 09:31

    ⚖️ Requests vs Limits: Почему твой под тормозит на пустой ноде?Всем привет! 👋 Сегодня о наболевшем - о ресурсах в Kubernetes.Я часто вижу манифесты, где секция resources либо отсутствует вовсе ("пусть берет сколько надо"), либо настроена "на глаз". А потом начинаются вопросы: "Почему приложение тупит, хотя CPU загружен на 5%?" или "Почему мой под постоянно убивает OOMKilled?"Давайте разберем главную ловушку новичка.1. Requests (Запросы) - Это про "Обещание" 🤝requests - это то, что Kubernetes гарантирует вашему поду. Шедулер смотрит на реквесты и ищет ноду, где есть свободное место. Если вы не указали реквесты - K8s считает, что поду ничего не нужно, и может запихнуть его на перегруженную ноду, где он будет страдать.2. Limits (Лимиты) - это про "Наказание" 👮‍♂️limits - это верхняя планка. И тут поведение CPU и RAM кардинально отличается.💀 RAM Limit (Жесткая смерть) Пам
  • Библиотека девопса | DevOps, SRE, Sysadmin

    28 Jan, 15:05

    🛑 Не убивай меня сразу! Настраиваем Graceful ShutdownКоллеги, бывало такое? Вы делаете kubectl rollout restart, Kubernetes обещает бесшовное обновление, но в момент переключения подов пару юзеров все равно ловят 502 Bad Gateway или обрывы соединений.Проблема часто не в балансировщике, а в том, что ваше приложение не умеет "красиво уходить" (Graceful Shutdown).Когда Kubernetes хочет остановить под, происходит следующий танец:1. K8s посылает процессу сигнал SIGTERM. 2. K8s ждет terminationGracePeriodSeconds (по дефолту 30 сек). 3. Если процесс еще жив -прилетает SIGKILL (выстрел в голову).❌ Как делают новичкиПриложение получает SIGTERM и... мгновенно закрывается.🔘Результат: Все запросы, которые обрабатывались в эту миллисекунду (транзакция в БД, загрузка файла), обрываются. Клиент получает ошибку.✅ Как надо (Уровень Code)
    69841Open in Telegram
  • Библиотека девопса | DevOps, SRE, Sysadmin

    27 Jan, 15:58

    🚑 HEALTHCHECK: Спасательный круг или выстрел в ногу?Продолжаем тему стабильности. Сегодня про Healthchecks (в Docker) и Probes (в K8s).Казалось бы, что сложного? Написал curl -f http://localhost/ || exit 1 и пошел пить кофе. Но именно такие "простые" решения часто становятся причиной того, что ваш прод лежит, хотя нагрузка детская.Разберем две крайности и как делать правильно.❌ Ошибка №1: "Зомби-апокалипсис" (Слишком слабый чек)Вы проверяете только то, что процесс веб-сервера запущен и порт слушается.🔘Сценарий: У приложения отвалился коннект к БД (pool exhaustion), или случился дедлок внутри кода.🔘Итог: Хелсчек проходит (порт-то открыт!), балансировщик продолжает лить трафик на под, а пользователи получают 500-ки.🔘Лечение: Чек должен проверять работоспособность логики,
    649411Open in Telegram
  • Библиотека девопса | DevOps, SRE, Sysadmin

    11 Jan, 07:54

    🐳 Хватит тащить curl и vim в продакшн! (Используем Ephemeral Containers)Салют, коллеги, всех с прошедшими праздниками! 👋Сколько раз я видел Dockerfile, который начинается за здравие (FROM alpine), а заканчивается установкой половины интернета: apk add curl vim net-tools bind-tools...?Аргумент всегда один: "Ну мне же надо как-то дебажить, если под отвалится!"В итоге мы получаем:1. Раздутый образ. (Платим за сторадж и трафик). 2. Дыру в безопасности. (Хакер, попавший в контейнер, скажет спасибо за curl и nmap, любезно оставленные вами).Правильный путь - это Distroless образы или минимальный Alpine, где нет даже шелла. А для дебага мы используем Ephemeral Containers (эфемерные контейнеры).🛠 Как это работает?В Kubernetes (начиная с v1.25 это уже стабильная фича) вы можете "подселить" временный контейнер в работающий Pod. Он будет делить с подом пространство имен процессов