🧩 DevOps-задача с подвохом: всё работает, но тормозит
У вас в Kubernetes кластере работает микросервис
- ✅ нет ошибок 5xx
- ✅ логи чистые
- ✅ CPU и RAM в норме
- ✅ Pod'ы не рестартятся
- ✅ HPA не срабатывает
Но пользователи жалуются: ⚠️ заказы проходят с задержкой до 1.5 сек.
🔍 Что под капотом:
- 3 реплики
- Зависимость:
- Один из `orders`-подов иногда теряет сетевое соединение на ~30 сек
- Readiness-проба —
- HPA срабатывает только по CPU > 80%
- Есть метрика
🎯 Что происходит?
Kubernetes считает проблемный под "живым", потому что
Но этот под не может достучаться до
Часть трафика уходит в никуда и тормозит.
CPU низкий, ошибок нет — HPA не срабатывает.
Проблема остаётся невидимой, пока пользователи страдают.
✅ Как починить:
1. ✂️ **Проверять зависимости в Readiness:**
```yaml
readinessProbe:
exec:
command: ["sh", "-c", "curl -sf http://inventory/healthz || exit 1"]
```
2. 📈 **Добавить алерты на latency, queue size и gRPC ошибки**
3. ⚖️ **Настроить HPA по бизнес-метрикам:**
```yaml
type: External
metric:
name: queue_size
```
4. 🧬 **Добавить 2+ реплики в `inventory`** — избавляемся от SPOF
5. 🧠 **Включить tracing (например, Jaeger)** для отслеживания зависаний
💡 **Урок:** Даже без ошибок система может работать нестабильно.
DevOps -инженер должен уметь **видеть деградацию до того, как её заметит пользователь.**
#DevOps #Kubernetes #SRE #Monitoring #CI_CD #HPA
У вас в Kubernetes кластере работает микросервис
orders
. Всё "зелёное":- ✅ нет ошибок 5xx
- ✅ логи чистые
- ✅ CPU и RAM в норме
- ✅ Pod'ы не рестартятся
- ✅ HPA не срабатывает
Но пользователи жалуются: ⚠️ заказы проходят с задержкой до 1.5 сек.
🔍 Что под капотом:
- 3 реплики
orders
- Зависимость:
inventory
(всего 1 реплика) - Один из `orders`-подов иногда теряет сетевое соединение на ~30 сек
- Readiness-проба —
/healthz
, всегда 200 OK - HPA срабатывает только по CPU > 80%
- Есть метрика
queue_size
, но она нигде не используется 🎯 Что происходит?
Kubernetes считает проблемный под "живым", потому что
/healthz
отвечает. Но этот под не может достучаться до
inventory
. Часть трафика уходит в никуда и тормозит.
CPU низкий, ошибок нет — HPA не срабатывает.
Проблема остаётся невидимой, пока пользователи страдают.
✅ Как починить:
```yaml
readinessProbe:
exec:
command: ["sh", "-c", "curl -sf http://inventory/healthz || exit 1"]
```
2. 📈 **Добавить алерты на latency, queue size и gRPC ошибки**
3. ⚖️ **Настроить HPA по бизнес-метрикам:**
```yaml
type: External
metric:
name: queue_size
```
4. 🧬 **Добавить 2+ реплики в `inventory`** — избавляемся от SPOF
5. 🧠 **Включить tracing (например, Jaeger)** для отслеживания зависаний
💡 **Урок:** Даже без ошибок система может работать нестабильно.
#DevOps #Kubernetes #SRE #Monitoring #CI_CD #HPA
👍10❤8
digital-periodic-table-of-devsecops.png
615.1 KB
Полезная таблица инструментов DevSecOps
Если ты учишься с нуля, устраняешь пробелы или заменяешь существующие инструменты, начни с Периодической таблицы, чтобы подобрать оптимальные решения для своей DevOps-пайплайна.
#devops #девопс
@devopsitsec
Если ты учишься с нуля, устраняешь пробелы или заменяешь существующие инструменты, начни с Периодической таблицы, чтобы подобрать оптимальные решения для своей DevOps-пайплайна.
#devops #девопс
@devopsitsec
👍2🙏2❤1🏆1
🚀 Sneak Peek: Что нового в Kubernetes v1.34
Официальный блог уже поделился предварительным обзором релиза!
Что ждать от Kubernetes 1.34?
🔹 Новый API для runtime класса (RuntimeClass v1 GA)
🔹 Оптимизация pod scheduling и NUMA-архитектуры
🔹 Стабилизация нескольких ключевых фич
🔹 Улучшения в kubelet и kube-proxy
🔹 Больше прозрачности в контроллерах
🛠️ Полный обзор от команды Kubernetes:
https://kubernetes.io/blog/2025/07/28/kubernetes-v1-34-sneak-peek/
#Kubernetes #DevOps #CloudNative
Официальный блог уже поделился предварительным обзором релиза!
Что ждать от Kubernetes 1.34?
🔹 Новый API для runtime класса (RuntimeClass v1 GA)
🔹 Оптимизация pod scheduling и NUMA-архитектуры
🔹 Стабилизация нескольких ключевых фич
🔹 Улучшения в kubelet и kube-proxy
🔹 Больше прозрачности в контроллерах
🛠️ Полный обзор от команды Kubernetes:
https://kubernetes.io/blog/2025/07/28/kubernetes-v1-34-sneak-peek/
#Kubernetes #DevOps #CloudNative
🔥3❤2👍2
💡 Продвинутый совет для Linux-админов:
Хочешь узнать, какие процессы используют больше всего памяти (включая shared libraries, кэш и swap) — но не по PID, а по исполняемому бинарнику?
Вот способ сгруппировать потребление памяти по программам, а не по процессам.
📊 Использование RAM по исполняемым программам (не PID)
📌 Отлично подходит для выявления прожорливых демонов, особенно если у вас десятки fork-процессов одного сервиса.
#linux #memory #admin #devops #monitoring
Хочешь узнать, какие процессы используют больше всего памяти (включая shared libraries, кэш и swap) — но не по PID, а по исполняемому бинарнику?
Вот способ сгруппировать потребление памяти по программам, а не по процессам.
sudo ps -e -o pid,comm --no-headers | while read pid cmd; do
grep -q "^Name:\s\+$cmd$" /proc/$pid/status 2>/dev/null &&
awk '/^RssAnon:/ {rss+=$2} END {if (rss) printf "%s %d MiB\n", "'$cmd'", rss/1024}' /proc/$pid/status
done | sort -k2 -nr | uniq
📊 Использование RAM по исполняемым программам (не PID)
📌 Отлично подходит для выявления прожорливых демонов, особенно если у вас десятки fork-процессов одного сервиса.
#linux #memory #admin #devops #monitoring
🔥16👍4❤1
💡 Ещё один продвинутый совет для Linux-админов:
Проверь, какие процессы активно используют swap — даже если в системе вроде бы хватает RAM.
Это поможет найти медленные службы, которые вы не ожидали увидеть в свопе, и улучшить производительность.
🐌 Процессы, активно использующие swap (swap hog detector)
📌 Даже если swap включен "про запас", вы удивитесь, сколько "вроде бы активных" сервисов частично выгружены на диск — отсюда тормоза, задержки в API, медленные реакции.
Решения:
– пересмотреть
– перезапустить эти процессы
– увеличить RAM или выделить hugepages
#linux #performance #swap #memory #sysadmin #devops
Проверь, какие процессы активно используют swap — даже если в системе вроде бы хватает RAM.
Это поможет найти медленные службы, которые вы не ожидали увидеть в свопе, и улучшить производительность.
for pid in $(ls /proc | grep -E '^[0-9]+$'); do
cmd=$(cat /proc/$pid/comm 2>/dev/null)
swap=$(grep VmSwap /proc/$pid/status 2>/dev/null | awk '{print $2}')
if [ "$swap" != "" ] && [ "$swap" -gt 0 ]; then
echo "$swap KB swap used by $cmd (PID $pid)"
fi
done | sort -nr | head
🐌 Процессы, активно использующие swap (swap hog detector)
📌 Даже если swap включен "про запас", вы удивитесь, сколько "вроде бы активных" сервисов частично выгружены на диск — отсюда тормоза, задержки в API, медленные реакции.
Решения:
– пересмотреть
vm.swappiness
– перезапустить эти процессы
– увеличить RAM или выделить hugepages
#linux #performance #swap #memory #sysadmin #devops
🔥8❤3🥰2🖕1