Всё пошло по пайплайну | IT Notes
611 subscribers
98 photos
2 videos
52 links
Заметки одного айтишника.
Пишу про DevOps, IT, о жизни и движению вперёд.
Добро пожаловать 😌
Download Telegram
#новостиит

K8S Nginx Ingress на свалку

Сообщество Kubernetes объявило о планируемом завершении одного из ключевых проектов экосистемы - Ingress NGINX. Поддержка будет постепенно сведена к минимуму, а к марту 2026 года проект полностью прекратит своё развитие. Это означает, что популярный контроллер больше не будет получать обновления, а его пользователям придётся задуматься о переходе на альтернативы или создании собственных решений для защиты и маршрутизации трафика.

Много лет Ingress NGINX считался одним из самых практичных инструментов для организации HTTP и HTTPS доступов к сервисам внутри кластеров. Он обеспечивал гибкую настройку маршрутов, правил и политик, был одинаково востребован в облачных средах и локальной инфраструктуре. Именно универсальность и лёгкость развёртывания сделали его стандартом де-факто для множества сценариев.
Однако со временем эта универсальность превратилась в проблему.

Архитектура Ingress NGINX давно признана устаревшей, а огромное количество функций, добавленных постепенно и без единого плана, только увеличило технический долг. На фоне эволюции требований к безопасности многие прежние подходы стали рассматриваться как потенциальные угрозы. То, что когда-то было преимуществом, сегодня оборачивается набором уязвимостей.

На этом фоне внимание сообщества сместилось в сторону других решений например, проекта InGate, призванного объединить функциональность ingress и Gateway API в более современном контроллере. Однако развитие новой альтернативы шло медленно, а сам Ingress NGINX долгие годы поддерживался фактически усилиями всего пары энтузиастов, работающих над кодом в свободное время. Для инструмента, который используется тысячами кластеров, такие ресурсы оказались критически недостаточными.

Ситуация обострилась после череды исследований безопасности. До марта 2025 года разработчики успевали закрывать критические уязвимости, но публикация отчёта компании Wiz о новых опасных ошибках стала переломным моментом. Выяснилось, что около 6000 активных установок Ingress NGINX подвержены риску полного компрометационного захвата кластера. Теперь, когда обновлений больше не будет, эти установки остаются беззащитными перед обнаруженными проблемами.

В ноябре комитет Kubernetes Security Response принял окончательное решение о прекращении проекта. Причины названы прямо: чрезмерная сложность, устаревшие архитектурные подходы, усиливающиеся требования к безопасности и хронический недостаток поддерживающих разработчиков делают дальнейшее развитие невозможным.
Для администраторов кластеров это означает, что времени на выбор стратегии остаётся немного. К марту 2026 года все установленные контроллеры превратятся в неподдерживаемое ПО, работающее «как есть» без обновлений. Владельцам инфраструктуры предстоит либо самостоятельно усиливать защиту - путём введения дополнительных фильтров, сетевых политик и защитных сервисов, либо заранее готовить миграцию на другой контроллер, учитывая специфику своих приложений.

Одно можно сказать точно: эра Ingress NGINX в Kubernetes завершается…Экосистему ждёт переход к более безопасным, предсказуемым и строгим механизмам управления внешним трафиком.
19🕊52👾2
#гайд

Команды Linux, которые экономят мне часы и даже нервы


Когда много крутишься вокруг Linux-серверов, контейнеров и Kubernetes-кластеров, начинаешь замечать одну забавную штуку.
Можно окружить себя модными DevOps-штучками, обложиться дашбордами, но…
В минуту Х ты всё равно открываешь терминал и бьёшь по клавиатуре старые добрые команды Linux.
Они как старые друзья: не подводят и всегда готовы помочь.
Я собрал маленький «чемоданчик выживания» из набора команд, которые спасали меня чаще всего. Объяснил их простыми словами и добавил примеры, которые можно тут же попробовать.
Поехали:

1. Найти запущенный процесс

ps aux | grep docker


Когда что-то ведёт себя странно, это обычно первая команда, которую я выполняю. Это самый быстрый способ проверить, существует ли процесс, сколько его копий работает и сколько CPU/памяти он потребляет.

2. Кто использует порт

ss -tulnp


Полезно, когда сервис отказывается запускаться с сообщением «порт уже используется». Эта команда показывает, кто его занял.

3. Проверка дискового пространства

df -h


Закончилось место? Посмотри сведения по всем дискам. В половине случаев процессы забивают каталог /var.

4. Посмотреть размер каталога

du -sh /var/log


Когда диск внезапно прыгает с 20% до 90% использования, эта команда помогает мгновенно понять, какая директория внезапно распухла.

5. Мониторинг активности системы в реальном времени

top

htop # более навороченный


Сервер тормозит? Здесь ты увидишь что с ним: всплески CPU, утечки памяти, странные процессы всё видно в реальном времени. Диспетчер задач линуксойда.

6. Просмотр логов в режиме Live

tail -f /var/log/syslog


Команда, которая позволит в реальном времени смотреть, какие события происходят в системе.

——
На этом всё, простой набор команд, которые не раз выручали. Накидайте реакций если было полезно 👏🏻
10👍18🔥3👏1
#гайд

Вы когда-нибудь задумывались, что за version стоит в начале docker-compose.yml?


Пишешь привычное version: "3.8", потом делаешь docker-compose -v, видишь версию 2.x и такой:
WTF? Как так?
Разбираемся.

🐳 Откуда взялась эта строка version?
Исторически было две разные реализации docker-compose:
docker-compose (через дефис) - старый бинарник на Python.
docker compose (без дефиса) - новый плагин для Docker, написанный на Go.
Именно старой Python-версии нужно было знать, какую схему файла использовать. Поэтому в docker-compose.yml указывали версию схемы:
version: “1” - устаревшая, ещё без сетей.
version: “2” - улучшения для работы на одном хосте.
version: “3” - схема для Docker Swarm.
Каждая схема определяла доступный функционал и поля.

🚀 А что сейчас?
Сегодня Go-версия (docker compose) стала основной, а старая Python-версия deprecated.
Современный docker compose игнорирует строку version.
Формат файла теперь определяется автоматически.

🧐 Что использовать вам?
Если у вас старый python-compose (до 2.x) тогда версия файла ещё имеет значение.
Если у вас новый docker compose (2.x и выше) - тогда НЕ указывайте version вовсе. Это считается best practice.

Было:
version: “3.8”
services:
web: nginx:1.25-alpine


Стало:
services: 
web: nginx:1.25-alpine


Официальная дока:
https://docs.docker.com/reference/compose-file/version-and-name/
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍9🔥51
#гайд

Тема AI сейчас на хайпе, так что добавил немного практики.
Собрал гайд, как развернуть бесплатную нейросеть для генерации картинок в пару кликов: локально или на ресурсах Google.
Всё по шагам, с примерами:
https://itzm.tech/p/ai_fooocus/
Для первого самостоятельного запуска самое то.
10🔥8👍2
Друзья, хочу подвести итоги этого года и сделать это вместе с Вами.
Когда я начинал этот телеграм-канал, он задумывался как место для теории.
Но всё быстро выросло в настоящее сообщество 🤝
Наши общие результаты за год:
400+ человек, которым интересны ИТ и развитие в профессии
20+ практических гайдов на сайте
300+ комментариев с обсуждениями, вопросами, опытом и подсказками
Появился YouTube-канал с более 700 подписчиками, где мы говорим про ИТ «вживую»
200+ звёзд и реакций на канале, за что вам отдельное спасибо!
Для меня это важный знак: то, что мы делаем, реально помогает.
У меня ещё много идей и материалов, которыми хочу делиться - продолжим уже в новом году.
Проведите эти дни рядом с родными и близкими, отдохните и перезагрузитесь.
С Новым годом! 🎄
Спасибо, что Вы здесь
2🔥1674😁2
This media is not supported in your browser
VIEW IN TELEGRAM
План: пройти курс по Prometheus и Grafana
Реальность:
5😁181
Объясни контейнеры в двух словах:
😁184🔥2
#гайд

Ситуация
: Контейнер с приложением падает, ты тревожно бегаешь по подам и нодам в поисках логов. Другое дело, когда их собирают и складывают в одном месте агенты.
Связка: FluentBit + Kafka + Logstash + Opensearch
Как настроить такое в кубе читай здесь:
https://itzm.tech/p/logging_app/

А более подробно про логи тут:
https://t.me/itzm_notes/62
2👍6🔥53
#live

Хотел написать про то, как облегчить себе жизнь и крутить всякими куберами через приятную глазу оболочку используя Lens.
Захожу и подключаюсь к своему домашнему стенду куба, на котором не был полгода точно. Смотрю в событиях: грохнулся под с графаной. Иду в логи: пишет проблемы с образом.
Хм, но я ничего не менял, а когда последний раз тушил стенд всё работало. Начинаю вспоминать, что устанавливал графану через Helm, в пару кликов.
Пробую обновить репозиторий хэлма командой
helm repo update

дальше обновляю графану
helm upgrade my-grafana bitnami/grafana --values ./grafana-values.yaml

Получаю сообщение
WARNING: Since August 28th, 2025, only a limited subset of images/charts are available for free.
Subscribe to Bitnami Secure Images to receive continued support and security updates.

Очень интересно, пойду в гугл. Оказывается я упустил, что компания bitnami делающая образы продалась Broadcom (которая владеет VMware и пр) и теперь их репозитории стали платными 💰
Благо я использовал их только на тестовом стенде, поэтому просто удалил helm и взял официальный вот так:
helm repo add grafana https://grafana.github.io/helm-charts
helm repo update
helm uninstall my-grafana
helm repo remove bitnami
helm install my-grafana grafana/grafana --values grafana-values.yaml

Теперь у графаны все хорошо, а кластер выключен до следующего раза)

Если хочешь запилю полную инструкцию по установке Prometheus/Grafana. Прожми:
В докер - ❤️, в кубер - ❤️‍🔥

ах да, про Lens, его можно скачать тут https://lenshq.io/download
он бесплатный, но требует инет. (В закрытом контуре не установить)
Please open Telegram to view this post
VIEW IN TELEGRAM
5❤‍🔥3212🔥4
This media is not supported in your browser
VIEW IN TELEGRAM
Вот прям навеяло из разговоров в чате✌️
Ты: я все знаю, но у меня нет реального опыта в девопс что написать в резюме
Рандомный Чел: посмотрел одно видео кто такой девопс также его резюме
😁9👍2🔥2
Прочитал недавно книгу:
Kubernetes для DevOps

[«Cloud Native DevOps with Kubernetes»]


Она не про то «как запустить pod», а про то зачем Kubernetes вообще нужен бизнесу и DevOps инженеру.

Авторы постоянно отговаривают использовать установку Кубера своими силами. Не строй сам, доверь всё облакам. Ожидаемо из названия книги)

Очень кратко, о чём пишут:
- как появился Kubernetes и почему стал стандартом
- из каких компонентов состоит кластер (master / worker)
- как оптимизировать ресурсы и размещение (requests/limits, affinity и т.д.)
- как мониторить (метрики, алерты, наблюдаемость)
- как защищать (RBAC, политики, секреты)
- деплой приложений через HELM
- GitOps в Kubernetes

Ключевые идеи:
💡 Kubernetes = система, которая постоянно приводит реальность к «желаемому состоянию» из манифестов
🙅 отказ - это нормальный сценарий, поэтому тестируем устойчивость кластера (chaos-подход)
🔐 безопасность и доступы это не про сделаем потом когда-нибудь, а часть дизайна кластера
📊 без метрик и алертов Kubernetes превращается в «чёрный ящик»
💊 Кубер не панацея, не нужно использовать его везде. Для баз данных, простых проектов и монолитов проще и надежнее сделать на старых добрых VM.

Контекст:
Облака, IaC, CI/CD и контейнеры - это уже база.
Kubernetes закрывает главную боль: управление контейнерами в масштабе (обновления без простоя, масштабирование, стабильность).

Для кого книга:
DevOps / SRE, системные админы, кто уже трогал Docker/Linux/Cloud
не для совсем новичков а-ля «что такое контейнер»

Вывод:
Если хочешь понять Kubernetes как платформу для продакшена, а не набор команд книга прям в тему.
Не заменяет документацию, но отлично объясняет концепции и мышление DevOps.
Мне зашла 👍
Please open Telegram to view this post
VIEW IN TELEGRAM
3👍9❤‍🔥3🔥1
Запоминаем 😁
2😁81
#live

Пятый день решаю 100500 проблем и зависимостей при установке кубера через кубспрей в закрытый контур (без инета). Классно, истерически весело и интересно.
1😁5🔥2
#гайд

Лови пока гайд как Харбор поставить. В вакансиях он часто попадается, а ты до сих пор не знаешь что это такое и пользуешься докерхабом 😳

https://itzm.tech/p/harbor_install/
Please open Telegram to view this post
VIEW IN TELEGRAM
6👍8❤‍🔥2🔥2
#live
Сегодня мобильный интернет вдруг стал другим. Как будто кто-то аккуратно прикрыл часть дверей. Остались только несколько «разрешённых» коридоров.
Некоторые двери живут пару минут, а потом закрываются с номером 451.
И только по привычке тянешься туда, где ещё вчера было открыто.
2🔥4😱4😢3