DevITWay | Павел Волков
91 subscribers
5 photos
4 videos
30 links
Этот канал для тебя, если:

— Ты системный администратор, разработчик, аналитик, тестировщик, инженер сопровождения или стажёр.
— Уже работаешь в IT, но чувствуешь, что застрял.
— Устал от бессвязной теории и ищешь внятную пошаговую практику.
Download Telegram
📊 Как "человеческий мониторинг" убедил выделить $20K

⬅️ Кейс #1: 6е чувство спасло НГ ➡️

---

🎭 Ситуация

💥 Zoom-демо с руководством, 14:00.
Показываю OpenSearch дашборд с временного кластера.
Проект не предусматривал мониторинг. Всё "в долг".

"Кибана? Эластик? А что это?" - реальный вопрос команды.

🚨 И тут сообщение в чат:
"ПААААША! Всё лежит! Пользователи не могут зайти!"

Мониторинга нет → мониторят люди.
Вася Прометей заорал - значит прод упал.

---

🔥 Момент истины

Два варианта:
• "Проблемы, перенесём демо на завтра"
• Превратить сбой в воркшоп по troubleshooting

👉 Выбрал второе. Разбираю прямо на демо.

---

🔍 Анализ в реальном времени

📊 Что показывает OpenSearch:
2024-07-15 14:03:42 INFO [product-api]
Requests/min: 50,247 (норма ~500)
Source: retail-service.internal
Status: 200 OK
CPU: 98%


💻 Диагностика в реальном времени перед аудиторией:
# Смотрим нагрузку
top -p $(pgrep product-api)
# CPU: 98.7% USER

# Ищем виновника
tail -f /var/log/product-api/access.log | grep retail


14:03:43 retail-service GET /products/bulk-check?ids=1,2,3,...50000


---

💡 Через 3 минуты:

Retail-сервис случайно ддосит наш API.
50,000 запросов в минуту на батч-эндпоинт.

Показываю прямо на экране:
"Вот пик на графике. А вот лог с retail-service."
"Проблема вот тут. Прямо сейчас."

---

🧯 Горячий фикс, не вставая с демо:

# Объявляем зону rate limit
limit_req_zone $binary_remote_addr zone=bulk_api:10m rate=1r/s;

# Ограничиваем поток
location /products/bulk-check {
limit_req zone=bulk_api burst=10 nodelay;
proxy_pass http://product-service;
}


📉 Через 2 минуты:
• CPU падает с 98% до 15%
• API оживает
• Пользователи входят

---

🏆 Реакция руководства:

"Ты прямо сейчас видишь, КТО нас кладёт?"
"А раньше мы как это узнавали?"
"Да как обычно - экстренные созвоны, туда звали всех подряд - от девелоперов до уборщицы, пока клиенты не переставали звонить."


💡 Инсайт:
Мы узнаём о проблемах последними.
И не понимаем, кто их вызывает.
Retail-команда даже не знала, что ддосит нас.

---

📊 Что было → Что стало

До инцидента:
• Уведомления: "ПААААША, всё лежит!"
• Обнаружение: 15-30 минут (ручное)
• Диагностика: "А что вообще сломалось?"
• Стоимость: ~$2K на каждый сбой
• DevOps: 🔔 24/7, сон с телефоном

После:
• Уведомления: Grafana alerts в чат
• Обнаружение: <30 сек
• Диагностика: лог + график + виновник
• Эффект: $20K бюджет на постоянный мониторинг
• DevOps: нормальные выходные

---

🧠 Уроки для DevOps

🎓 Ключевые выводы:
• "Вася Прометей заорал" - признак технического долга
Live debugging = демонстрация экспертизы
Реальные проблемы убеждают лучше слайдов

💡 Главный урок:
Каждый сбой - это шанс продать ценность.
Не оправдывайся - объясняй. Не скрывай - показывай.

---

💬 А у вас как ловят падения?
🧠 Grafana / alertmanager / APM?
Или через "Петю в чате"?

👇 Напишите, как у вас - это важно для всех.

Следующая история: Как отсутствие инструкций превратилось в корпоративный квест

📞 Разбор production кейсов: @devitway_pavel

#DevITWay #DevITWay_кейсы #DevITWay_senior #ProductionStories #OpenSearch #troubleshooting #мониторинг
1🔥10