DevOps Deflope News
ConfigHub официально запустился — это стартап от Brian Grant (оригинальный архитектор Kubernetes), Alexis Richardson (основатель RabbitMQ и Weaveworks) и Jesper Joergensen (бывший продуктовый лид Heroku и топ Twilio). Летом 2024 они были в режиме стелса и…
Confighub
ConfigHub - Take Back Control of DevOps
Configuration as data lets you see what will happen before it happens. Unify and centralize software infrastructure configuration in a way that existing tools do not.
Forwarded from DevOps&SRE Library
The $1,000 AWS mistake
https://www.geocod.io/code-and-coordinates/2025-11-18-the-1000-aws-mistake
A cautionary tale about AWS VPC networking, NAT Gateways, and how a missing VPC Endpoint turned our S3 data transfers into an expensive lesson.
https://www.geocod.io/code-and-coordinates/2025-11-18-the-1000-aws-mistake
Странно, но уже несколько человек за последние несколько дней спросило меня про комментарии к постам. Добавил, посмотрим, что получится
👍2👎1
Коллеги сегодня принесли полезное https://github.com/kellyjonbrazil/jc
GitHub
GitHub - kellyjonbrazil/jc: CLI tool and python library that converts the output of popular command-line tools, file-types, and…
CLI tool and python library that converts the output of popular command-line tools, file-types, and common strings to JSON, YAML, or Dictionaries. This allows piping of output to tools like jq and ...
🔥2
Костя Крамлих рассказал как они в Яндекс Облаке сделали сеть надежнее https://habr.com/ru/companies/yandex/articles/920092/
Я от сети далек, но мне понравился подход к решению reliability проблем и, кажется, что его можно использовать примерно везде
Я от сети далек, но мне понравился подход к решению reliability проблем и, кажется, что его можно использовать примерно везде
Хабр
Что мы изменили в сети, чтобы сделать её устойчивее
Даже сложная и продуманная технологическая система не застрахована от инцидентов — это касается любых инфраструктур, от железнодорожных и коммунальных до IT. Поэтому...
🔥2👎1
Forwarded from 401 Unauthorized: аутентификация и не только (Andrey Kuznetsov)
Гора родила мышь, а я наконец родил статью на основе материала, про который рассказывал весной на PHDays 2025 и CodeFest 15.
https://habr.com/ru/articles/872918/
#api #oauth #my_publication
https://habr.com/ru/articles/872918/
#api #oauth #my_publication
Хабр
Токены доступа и API Gateway: как обеспечить безопасность запросов
Распределенные системы (aka микросервисы) набрали популярность и применяются все шире в современных реалиях. Сервисов становится больше, привычные задачи для них решаются сложнее, усложнились и...
Forwarded from Безумный кот
Прошло всего два месяца с первого релиза, и мы снова готовы показать, что удалось сделать.
Новое:
• Search — поиск ресурсов
• ResourceBadge — цветные бейджи с CamelCase
• TogglerSegmented — мульти-переключатель
• Toggler — переключатель
• OwnerRefs — список владельцев ресурса
• Events — события ресурса
• SecretBase64Plain — отображение секрета с blur
• UI переведен на list-then-watch
(* если у ресурса есть поддержка watch, будет работать по событийной модели, если нет то поллинг)
• Базовые Actions в каждой таблице
• Секреты: автоматический base64-decrypt в UI
• SBOM-отчёты Pod / RS / Deploy / STS
• YamlEditor: readOnly / watch / reload
• Default-фабрики для всех ресурсов: Details, Breadcrumbs, CustomColumnsOverride
• CustomFormPrefill для массивов объектов
• White Label: Logo, Footer, TenantText
Улучшено:
• Цветовые схемы Badges синхронизированы с поиском
• Labels теперь могут вести на внешние ссылки (в т. ч. Search)
• Убраны мерцания при переходах между страницами
• CustomFormOverride запрещает менять Namespace у уже созданных ресурсов
• Обновлена обработка x-kubernetes-preserve-unknown-fields: true — теперь такие поля открываются во встроенном VSCode-editor с возможностью редактирования
Исправлено:
• PodLogs больше не зависает при старте
Итог:
Единая модель Default Factory: базовая страница, события и консистентная навигация доступны для каждого ресурса.
Интерфейс стал стабильнее, визуальная тема — согласованнее.
Подготовлена основа для пользовательских фабрик и расширенного поиска.
Полезная информация:
- Информация
- Документация
- Демо стенд
- Исходники на GitHub
Лучшая ваша похвала — это:
• Вопросы по теме
• Поиск неточностей
• Советы, как сделать лучше
• И, конечно, ⭐️ на GitHub
*демо стенд не оптимизирован под телефоны (будет, но чуть позже)
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2👎1
Forwarded from HABR FEED + OPENNET
Nelm vs Helm 4: что изменилось с новым релизом Helm и почему Nelm всё ещё лучше #habr
https://habr.com/ru/companies/flant/articles/970498/
Tags: nelm, helm, werf, open source, devops, kubernetes, cicd
Author: ilya-lesikov (Флант)
https://habr.com/ru/companies/flant/articles/970498/
Tags: nelm, helm, werf, open source, devops, kubernetes, cicd
Author: ilya-lesikov (Флант)
Хабр
Nelm vs Helm 4: что изменилось с новым релизом Helm и почему Nelm всё ещё лучше
Недавно вышел Helm 4, и это отличный повод снова сравнить его с нашей альтернативой — Nelm . В статье смотрим на новые возможности обоих проектов, детально разбираем их отличия и объясняем, что ждёт...
👍3
Forwarded from запуск завтра
Помните, на прошлой неделе Cloudflare упал и уронил половину интернета?
Они пишут одни из лучших post-mortem’ов в индустрии. Последний — не исключение.
Круто, что они опубликовали его прямо в день падения. Обычно, одни согласования с юристами занимают дни.
Но самое впечатляющее для меня в этой истории — вот этот комментарий пользователя eastdakota на форуме hacker news.
Это Мэтью Принс, основатель и генеральный директор компании, которая обслуживает 20% всего интернет-трафика, рассказывает, как он сначала сидел на созвоне по починке аварии, а потом пригласил к себе домой бывшего техдира (тот захватил сына, показать, какая у папы работа) и главного юриста компании и они на троих сообразили текст в гугл-доке. Задали в нем вопросы технарям компании. Заказали еды. Включили ответы на вопросы в текст. Дали вычитать технарям. И опубликовали. И получился пост-мортем. ❤️
Они пишут одни из лучших post-mortem’ов в индустрии. Последний — не исключение.
Круто, что они опубликовали его прямо в день падения. Обычно, одни согласования с юристами занимают дни.
Но самое впечатляющее для меня в этой истории — вот этот комментарий пользователя eastdakota на форуме hacker news.
Это Мэтью Принс, основатель и генеральный директор компании, которая обслуживает 20% всего интернет-трафика, рассказывает, как он сначала сидел на созвоне по починке аварии, а потом пригласил к себе домой бывшего техдира (тот захватил сына, показать, какая у папы работа) и главного юриста компании и они на троих сообразили текст в гугл-доке. Задали в нем вопросы технарям компании. Заказали еды. Включили ответы на вопросы в текст. Дали вычитать технарям. И опубликовали. И получился пост-мортем. ❤️
👍6
Forwarded from GitHub Open Sauce
safedep/vet
vet — это инструмент безопасности цепочки поставок программного обеспечения с открытым исходным кодом, созданный для разработчиков и специалистов по безопасности
#golag
https://github.com/safedep/vet
vet — это инструмент безопасности цепочки поставок программного обеспечения с открытым исходным кодом, созданный для разработчиков и специалистов по безопасности
#golag
https://github.com/safedep/vet
Forwarded from DevOps
⚡️ Kubernetes Namespaces: базовое разделение ресурсов в кластере
Namespaces в Kubernetes используются для логического разбиения кластера и изоляции ресурсов между командами, проектами и средами.
Что такое Namespaces
- Представляют собой «виртуальные кластеры» внутри одного физического.
- Группируют Pods, Services, Deployments, ConfigMaps и другие объекты.
- Полезны для multi-team, multi-project и multi-environment конфигураций.
Зачем они нужны
- Упорядочивают ресурсы и уменьшают хаос в большом кластере.
- Исключают конфликты имён — одинаковые ресурсы могут существовать в разных пространствах.
- Обеспечивают изоляцию команд и повышают безопасность.
- Позволяют держать dev/staging/prod в одном кластере без пересечений.
Стандартные Namespaces
- default — используется, если не указан другой; размещает обычные рабочие нагрузки.
- kube-system — системные компоненты (CoreDNS, kube-proxy).
- kube-public — доступен всем, включая неаутентифицированных пользователей; хранит публичную информацию.
- kube-node-lease — хранит heartbeat-объекты для узлов, повышая производительность контроля состояния.
Работа с Namespaces
- Создание — через YAML или
- Переключение контекста — позволяет работать в нужном namespace без постоянного указания
- Удаление — очищает пространство вместе со всеми объектами, удобно для сброса окружения.
Типовые use cases
- Разделение окружений: dev/test/prod.
- Изоляция команд.
- Ограничение потребления ресурсов с помощью quotas.
- Границы безопасности через NetworkPolicies.
Resource Quotas
- Ограничивают CPU, RAM и количество объектов внутри namespace.
- Защищают кластер от «пожирания» ресурсов одной командой или сервисом.
Network Policies
- Контролируют сетевой трафик между namespace'ами.
- Используются для разграничения изоляции в multi-tenant конфигурациях.
Best practices
- Разводить окружения по отдельным namespaces.
- Не размещать рабочие нагрузки в
- Настраивать RBAC на уровне namespace.
- Использовать понятные naming-conventions.
- Добавлять quotas в общих кластерах.
📎 Полное руководство по Kubernetes: https://codewithdhanian.gumroad.com/l/jwjls
Namespaces в Kubernetes используются для логического разбиения кластера и изоляции ресурсов между командами, проектами и средами.
Что такое Namespaces
- Представляют собой «виртуальные кластеры» внутри одного физического.
- Группируют Pods, Services, Deployments, ConfigMaps и другие объекты.
- Полезны для multi-team, multi-project и multi-environment конфигураций.
Зачем они нужны
- Упорядочивают ресурсы и уменьшают хаос в большом кластере.
- Исключают конфликты имён — одинаковые ресурсы могут существовать в разных пространствах.
- Обеспечивают изоляцию команд и повышают безопасность.
- Позволяют держать dev/staging/prod в одном кластере без пересечений.
Стандартные Namespaces
- default — используется, если не указан другой; размещает обычные рабочие нагрузки.
- kube-system — системные компоненты (CoreDNS, kube-proxy).
- kube-public — доступен всем, включая неаутентифицированных пользователей; хранит публичную информацию.
- kube-node-lease — хранит heartbeat-объекты для узлов, повышая производительность контроля состояния.
Работа с Namespaces
- Создание — через YAML или
kubectl, используется для группировки и изоляции ресурсов. - Переключение контекста — позволяет работать в нужном namespace без постоянного указания
-n. - Удаление — очищает пространство вместе со всеми объектами, удобно для сброса окружения.
Типовые use cases
- Разделение окружений: dev/test/prod.
- Изоляция команд.
- Ограничение потребления ресурсов с помощью quotas.
- Границы безопасности через NetworkPolicies.
Resource Quotas
- Ограничивают CPU, RAM и количество объектов внутри namespace.
- Защищают кластер от «пожирания» ресурсов одной командой или сервисом.
Network Policies
- Контролируют сетевой трафик между namespace'ами.
- Используются для разграничения изоляции в multi-tenant конфигурациях.
Best practices
- Разводить окружения по отдельным namespaces.
- Не размещать рабочие нагрузки в
kube-system. - Настраивать RBAC на уровне namespace.
- Использовать понятные naming-conventions.
- Добавлять quotas в общих кластерах.
📎 Полное руководство по Kubernetes: https://codewithdhanian.gumroad.com/l/jwjls
👎7👍2❤1
Forwarded from Мониторим ИТ
Aliaksandr Valialkin - Cost-Effective Monitoring in Kubernetes
В этой записи доклада с Kubernetes Community Days Warsaw 2025 Александр Валялкин, соучредитель и технический директор VictoriaMetrics, объясняет, как создать экономичную, быструю и масштабируемую систему мониторинга.
Александр делится практическими советами о том, как современные системы мониторинга могут оставаться простыми, не жертвуя глубиной хранения. Также рассказывает про распространённые ошибки, связанные со сложными системами мониторинга, и показывает, как инструменты с открытым исходным кодом на основе Go могут обеспечить производительность и прозрачность при масштабировании.
В этой записи доклада с Kubernetes Community Days Warsaw 2025 Александр Валялкин, соучредитель и технический директор VictoriaMetrics, объясняет, как создать экономичную, быструю и масштабируемую систему мониторинга.
Александр делится практическими советами о том, как современные системы мониторинга могут оставаться простыми, не жертвуя глубиной хранения. Также рассказывает про распространённые ошибки, связанные со сложными системами мониторинга, и показывает, как инструменты с открытым исходным кодом на основе Go могут обеспечить производительность и прозрачность при масштабировании.
👍7🔥2❤1👎1
🔐 Postgresus - self-hosted инструмент для резервного копирования и мониторинга PostgreSQL базы данных
🔥 Возможности:
- создание бекапов по расписанию для PostgreSQL 13-18;
- уведомления в Telegram, Slack, Discord, если бекап сломался или база недоступна;
- хранение бекапов локально, в S3 или Google Drive;
- health check базы данных раз в минуту;
- Apache 2.0 лицензия (полностью открытый);
Запуск через Docker:
📌 GitHub
🔥 Возможности:
- создание бекапов по расписанию для PostgreSQL 13-18;
- уведомления в Telegram, Slack, Discord, если бекап сломался или база недоступна;
- хранение бекапов локально, в S3 или Google Drive;
- health check базы данных раз в минуту;
- Apache 2.0 лицензия (полностью открытый);
Запуск через Docker:
docker run -d
--name postgresus
-p 4005:4005
-v ./postgresus-data:/postgresus-data
--restart unless-stopped
rostislavdugin/postgresus:latest
📌 GitHub
👍10🔥1
Forwarded from linkmeup
Екатерина Истошина из Т-Банка и её история о том, как за год дежурные команды перешли от нервного тика и бесконечных инциндентов к контролю хаоса. Причём всё в цифрах, с конкретными тулами и без воды.
https://youtu.be/ccTMT2zgBtg
https://youtu.be/ccTMT2zgBtg
YouTube
Безнадежная надежность. Истошина Екатерина. Т-Банк
Год назад наши дежурные команды днем и ночью героически тушили бесконечные инциденты, ребята боялись дежурств, выгорали.
Расскажу о том, что нам помогло за год перейти от хаоса к контролю: инструменты и процессы, провалы и победы.
Цифры, инсайты и готовые…
Расскажу о том, что нам помогло за год перейти от хаоса к контролю: инструменты и процессы, провалы и победы.
Цифры, инсайты и готовые…
Forwarded from DevOps
Что умеет:
- следит за локальными и удалёнными Docker-хостами в одном окне
- умно перезапускает контейнеры с настраиваемой логикой повторов
- шлёт алерты в Telegram, Slack, Discord, Gotify и почту
- обновляет контейнеры по расписанию
- позволяет разворачивать Docker Run и Compose-пресеты прямо из UI
- показывает health-чеки и события в реальном времени
Github: https://github.com/darthnorse/dockmon
@pythonl
Please open Telegram to view this post
VIEW IN TELEGRAM
👎6👍2
Forwarded from Находки в опенсорсе
git-lfs: храним большие файлы в репозитории правильно
https://www.youtube.com/watch?v=82wj6y2rmR4
Вы сталкивались с проблемой, что рабочий проект клонируется 10 минут?
А когда начинаешь разбираться: почему так? То оказывается, что внутри десятки непережатых картинок для фронта, которые еще и менялись регулярно (а значит, оставили след в истории git навсегда).
Данная проблема влияет не только на локальное использование, ведь мы на самом деле довольно редко делаем
Решение: использовать git-lfs!
Я пригласил замечательного Олега Чирухина @tg_1red2black, чтобы обсудить:
- Как работает git-lfs на базовом уровне?
- Как мигрировать на него с базового сетапа?
- Как он устроен внутри? Поднимаем https://github.com/git-lfs/lfs-test-server и детально смотрим, что там внутри происходит
Ну и конечно чуть-чуть глянули исходники, они, кстати, на #go 🌚️️️️
Обсуждение: как вы храните большие файлы в рабочих проектах? Насколько большие файлы вы храните?
| Поддержать | YouTube | GitHub | Чат |
https://www.youtube.com/watch?v=82wj6y2rmR4
Вы сталкивались с проблемой, что рабочий проект клонируется 10 минут?
А когда начинаешь разбираться: почему так? То оказывается, что внутри десятки непережатых картинок для фронта, которые еще и менялись регулярно (а значит, оставили след в истории git навсегда).
Данная проблема влияет не только на локальное использование, ведь мы на самом деле довольно редко делаем
git clone с нуля, но и самое главное – на скорость всех наших сборок (если мы не используем fetch-depth: 1 или аналог, а использовать их надо). Решение: использовать git-lfs!
Я пригласил замечательного Олега Чирухина @tg_1red2black, чтобы обсудить:
- Как работает git-lfs на базовом уровне?
- Как мигрировать на него с базового сетапа?
- Как он устроен внутри? Поднимаем https://github.com/git-lfs/lfs-test-server и детально смотрим, что там внутри происходит
Ну и конечно чуть-чуть глянули исходники, они, кстати, на #go 🌚️️️️
Обсуждение: как вы храните большие файлы в рабочих проектах? Насколько большие файлы вы храните?
| Поддержать | YouTube | GitHub | Чат |
YouTube
Находки в опенсорсе: git-lfs, не засоряй репозиторий большими файлами зря! #git
GigaCode – AI-ассистент разработчика c агентным режимом. Это полноценный помощник разработчика, способный понимать контекст проекта и выполнять задачи от анализа до готового решения. Ассистент сам открывает нужные файлы, вносит изменения, запускает тесты…
🔥3👍1
Forwarded from The After Times
Кроме воровства мемов я ещё иногда занимаюсь айти. Со временем эта история переросла в собственную книгу. Релиз во второй половине января.
Проверить доступность можно по ссылке
Проверить доступность можно по ссылке
👍8👎2
InfraDev Community приглашает на Cloud Fail ((Over)): специальный новогодний выпуск InfraDev Meetup.
Без фейлов не обходится ни один крутой продукт, ну а истории успеха — «за ширмой» оказываются историями поисков и ошибок с удачным концом.
Поговорим про то, какие проблемы возникают под капотом инфраструктурных продуктов, как они решаются и какие уроки из этого получаются.
Спикеры:
☁️Василий Степанов, руководитель направления инфраструктурных сервисов, VK Cloud, VK Tech.
☁️Константин Крамлих, руководитель поднаправления сетевых продуктов, Yandex.Cloud.
☁️Секретный доклад: подробности добавим позднее.
Подробнее о докладах читайте на странице мероприятия.
Когда: 18 декабря, с 18:00 до 23:59
Где: Москва, Ленинградский пр., 70, офис VK Tech, БЦ «Алкон» (количество мест ограничено).
Приходите на встречу или участвуйте онлайн.
Зарегистрироваться.
Без фейлов не обходится ни один крутой продукт, ну а истории успеха — «за ширмой» оказываются историями поисков и ошибок с удачным концом.
Поговорим про то, какие проблемы возникают под капотом инфраструктурных продуктов, как они решаются и какие уроки из этого получаются.
Спикеры:
☁️Василий Степанов, руководитель направления инфраструктурных сервисов, VK Cloud, VK Tech.
☁️Константин Крамлих, руководитель поднаправления сетевых продуктов, Yandex.Cloud.
☁️Секретный доклад: подробности добавим позднее.
Подробнее о докладах читайте на странице мероприятия.
Когда: 18 декабря, с 18:00 до 23:59
Где: Москва, Ленинградский пр., 70, офис VK Tech, БЦ «Алкон» (количество мест ограничено).
Приходите на встречу или участвуйте онлайн.
Зарегистрироваться.
👎2❤1👍1🔥1
Forwarded from Кубернетичек
https://victoriametrics.com/blog/kubernetes-cpu-go-gomaxprocs/
Попалась замечательная статья. Много по полочкам разложено. Особенно упомянули формулу расчёта cpu weight для cgroupv2, которую хотят дополнительно разжевать https://github.com/kubernetes/website/pull/52793/files.
Но есть нюанс (не в претензию к статье, она отличная)
Это не совсем так. cpu manager обеспечивает изоляцию только между pod'ами kubernetes, а не между всеми процессами в ОС. Служебные процессы могут и будут селиться на данные cpu.
https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/#static-policy
Вообще непонятно, зачем так сложно писать в доке. Я сам пропустил это, пока на практике не столкнулся, что "эксклюзивность" не эксклюзивная в рамках всей ноды. И даже не всех контейнеров, а только которые контролирует kubernetes. Лишь когда перечитывал доку с какого-то раза, обратил внимание на shared pool.
У Datadog это упомянули, кстати, тоже можно почитать, но на мой вкус она не так интересно читается https://www.datadoghq.com/blog/kubernetes-cpu-requests-limits/
Попалась замечательная статья. Много по полочкам разложено. Особенно упомянули формулу расчёта cpu weight для cgroupv2, которую хотят дополнительно разжевать https://github.com/kubernetes/website/pull/52793/files.
Но есть нюанс (не в претензию к статье, она отличная)
What's this static policy about?
With static, Kubernetes can give certain containers exclusive access to CPU cores ... Nothing else would be allowed to run on those cores. That's really useful for apps that don't play well with CPU sharing or need strong cache locality
Это не совсем так. cpu manager обеспечивает изоляцию только между pod'ами kubernetes, а не между всеми процессами в ОС. Служебные процессы могут и будут селиться на данные cpu.
https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/#static-policy
This policy manages a shared pool of CPUs that initially contains all CPUs in the node.... This
shared pool is the set of CPUs on which any containers in BestEffort and Burstable pods run. Containers in Guaranteed pods with fractional CPU requests also run on CPUs in the shared pool.
Вообще непонятно, зачем так сложно писать в доке. Я сам пропустил это, пока на практике не столкнулся, что "эксклюзивность" не эксклюзивная в рамках всей ноды. И даже не всех контейнеров, а только которые контролирует kubernetes. Лишь когда перечитывал доку с какого-то раза, обратил внимание на shared pool.
У Datadog это упомянули, кстати, тоже можно почитать, но на мой вкус она не так интересно читается https://www.datadoghq.com/blog/kubernetes-cpu-requests-limits/
VictoriaMetrics
Container CPU Requests & Limits Explained with GOMAXPROCS Tuning
When running Go apps in Kubernetes, default CPU thread scheduling can conflict with cgroup CPU limits. The runtime sees all host CPUs, but the container may only be allowed a fraction of one. This often leads to early throttling. Properly configuring GOMAXPROCS…
❤2👍2👎1