Подборка ссылок, статей и постов из мира DevOps\SRE\разработки. Если вы хотите прислать фидбек, интересную статью или просто поболтать пишите @count0ru https://t.me/s/count0_digest
Контроль доступа в Kubernetes🔐Всем DevOps! Собрали для вас подборку статей с LearnKube, которая поможет разобраться, кто может подключаться к серверу API, что именно ему разрешено и как это контролировать в Kubernetes.⏺В первой статье Гулькан Топку и Артур Чиао сосредоточились на аутентификации. На примерах поймете, как действуют ограничения к серверу HTTP API и ни слова про kubectl.⏺Следующий этап – авторизация и RBAC. Всё о том, как ограничить доступ, чтобы у каждого пользователя и сервиса были только нужные права. ⏺И наконец, практическая модель адаптации аутентификации под свою инфраструктуру, например через LDAP.Желаем приятного чтения и продуктивной недели!#девопс #kubernetes #безопасность
Антиконференция Summer Merge — летняя перезагрузка для ИТ, которую нельзя пропускать 🔥Устали от одинаковых событий и рабочей рутины? Присоединяйтесь к Summer Merge! Это по-настоящему летний формат ИТ-ивента. Программа события готова и уже на сайте.— 3 дня на природе, без офисов и дедлайнов;— Живые дискуссии под открытым небом вместо лекций в аудиториях;— Soft skills, карьера и реальные боли индустрии;— Нетворкинг, который действительно работает;— Спорт, вечерние посиделки у костра и десятки видов активностей.🤝 За 4 года антиконференция объединила тысячи IT-специалистов: разработчиков, менеджеров, аналитиков, владельцев бизнеса и маркетологов. Summer Merge – сообщество, в котором легко находить единомышленников, деловых партнеров, новые карьерные возможности и даже вторую половинку.⛺ Формат палаточного лагеря и дружеская открытая атмосфера помогают перезагрузиться, посмотреть на работу по-новому и уехать с новыми идеями и вдохновением на весь год. Спешите приобрести билет до повышения цен со скидкой 15% по промокоду «ПЯТНИЧНЫЙДЕПЛОЙ»!Купить билеты на сайте.
📖100 Go Mistakes and How to Avoid Them🖋Harsanyi Teiva | 2022Книга «100 ошибок в Go и как их избежать» показывает, как заменить распространенные проблемы в программировании на Go идиоматичным и выразительным кодом. Вы изучите десятки интересных примеров и кейсов и научитесь выявлять ошибки, которые могут возникнуть в ваших собственных приложениях. Автор книги Тейва Харсаньи систематизирует методы предотвращения ошибок по удобным категориям — от типов данных и строк до параллелизма и тестирования.💾 Скачать книгуClean Code | #книги #Go & Мах
OpenTelemetry Semantic Conventions: изменения в HTTP, RPC, gRPC, JSON-RPC (v1.37 → v1.43)Собрал это, потому что был удивлен, когда ребята в сервисе обновили либу otel для golang, а там часть метрик для gRPC исчезла, они перестали видеть сервис на нашей стандартизированной доске gRPC RED-метрики в Grafana.Версия 1.37.0 (Базовая)- HTTP: - Метрики: http.server.request.duration, http.client.request.duration - Единица измерения: Секунды (s) - Атрибуты: http.request.method, url.scheme, http.response.status_code и др.- RPC (включая gRPC и JSON-RPC): - Метрики: rpc.server.duration, rpc.client.duration - Единица измерения: Миллисекунды (ms) - Атрибуты: rpc.system, rpc.service, rpc.methodВерсия 1.38.0- HTTP: - Единица измерения: Окончательно закреплена в секундах (s). В более ранних черновиках и некоторых реализациях использовались миллисекунды, но в 1.38.0 стандарт окончательно перешел на секунды для всех duration метрик.- RPC: - Начало перехода от rpc.server.duration к rpc.server.call.duration.Версия 1.39.0- RPC: - Переименование метрик: Метрики rpc.server.duration и rpc.client.duration начинают заменяться на rpc.server.call.duration и rpc.client.call.duration. - Единица измерения: Переход с миллисекунд (ms) на секунды (s) для новых метрик call.duration.- gRPC/JSON-RPC: - Продолжают следовать общим правилам для RPC, но теперь используют новые имена и секунды.Версия 1.40.0- RPC: - Стабилизация: rpc.server.call.duration и rpc.client.call.duration становятся основными и рекомендуемыми метриками. - Атрибуты: Уточнены требования к атрибутам rpc.system (например, grpc, jsonrpc), rpc.service и rpc.method.- HTTP: - Незначительные уточнения в описании атрибутов, связанных с повторными попытками (retries).Версия 1.41.0- RPC: - Финализация: Старые метрики rpc.server.duration и rpc.client.duration официально помечены как устаревшие (deprecated) или удалены из основных рекомендаций в пользу rpc.server.call.duration и rpc.client.call.duration. - Единица измерения: Строго
nfraDev Community приглашает на InfraDev Meetup #4: про AI и не толькоПрямо сейчас мы наблюдаем как AI в SDLC меняет процесс разработки — об удачных примерах и кейсах поговорим в этот раз. Обсудим, как разрабатывать инфраструктурные сервисы с помощью AI и как построить MLOps-платформу для обучения моделей. И не только: пока AI не перестроил DevOps-цикл, классические вызовы сборки образов для виртуальных машин остаются актуальными. Спикеры▫️Кирилл Фролов, эксперт-разработчик в отделе разработки базовых сервисов, VK Cloud, VK Tech▫️Павел Шипилов, Старший разработчик ML Платформы в Avito▫️Александр Александров, системный архитектор в направлении разработки и управления инфраструктурой, VK Cloud, VK TechПодробнее о докладах читайте на странице мероприятия.Когда: 10 июня, с 18:00 до 23:59 Где: Москва, Ленинградский пр., 70, офис VK Tech, БЦ «Алкон» (количество мест ограничено).Приходите на встречу или участвуйте онлайн.Зарегистрироваться.
OpenTelemetry Semantic Conventions: изменения в HTTP, RPC, gRPC, JSON-RPC (v1.37 → v1.43)Собрал это, потому что был удивлен, когда ребята в сервисе обновили либу otel для golang, а там часть метрик для gRPC исчезла, они перестали видеть сервис на нашей стандартизированной доске gRPC RED-метрики в Grafana.Версия 1.37.0 (Базовая)- HTTP: - Метрики: http.server.request.duration, http.client.request.duration - Единица измерения: Секунды (s) - Атрибуты: http.request.method, url.scheme, http.response.status_code и др.- RPC (включая gRPC и JSON-RPC): - Метрики: rpc.server.duration, rpc.client.duration - Единица измерения: Миллисекунды (ms) - Атрибуты: rpc.system, rpc.service, rpc.methodВерсия 1.38.0- HTTP: - Единица измерения: Окончательно закреплена в секундах (s). В более ранних черновиках и некоторых реализациях использовались миллисекунды, но в 1.38.0 стандарт окончательно перешел на секунды для всех duration метрик.- RPC: - Начало перехода от rpc.server.duration к rpc.server.call.duration.Версия 1.39.0- RPC: - Переименование метрик: Метрики rpc.server.duration и rpc.client.duration начинают заменяться на rpc.server.call.duration и rpc.client.call.duration. - Единица измерения: Переход с миллисекунд (ms) на секунды (s) для новых метрик call.duration.- gRPC/JSON-RPC: - Продолжают следовать общим правилам для RPC, но теперь используют новые имена и секунды.Версия 1.40.0- RPC: - Стабилизация: rpc.server.call.duration и rpc.client.call.duration становятся основными и рекомендуемыми метриками. - Атрибуты: Уточнены требования к атрибутам rpc.system (например, grpc, jsonrpc), rpc.service и rpc.method.- HTTP: - Незначительные уточнения в описании атрибутов, связанных с повторными попытками (retries).Версия 1.41.0- RPC: - Финализация: Старые метрики rpc.server.duration и rpc.client.duration официально помечены как устаревшие (deprecated) или удалены из основных рекомендаций в пользу rpc.server.call.duration и rpc.client.call.duration. - Единица измерения: Строго
Загадка ядра Linux: почему на 36 vCPU Cilium падает, а на 32 — нетАвтор оригинальной статьи, Пьер Мане, рассказывает, как его команда столкнулась с на первый взгляд необъяснимым поведением Cilium и как поиск решения привёл его к конфигурации ядра Linux.Отладка сродни археологии: ты пробираешься сквозь слои абстракций, пока не доберёшься до коренной породы — ядра. Это история о том, как скрытая в коде Linux логика работы со степенями двойки приводила к случайным и загадочным падениям Cilium, из-за чего мы не могли выкатиться в production.Подробности в статье на Хабре.@usr_bin_linux
Материалы и слайды своего мастер-класса на CodeFest выложил на GitHub (продублирую в комменты)Open source на страже Kubernetes Runtime Security https://github.com/rusdacent/codefest-2026
В эфире DevOps FM с первой летней подборкой новостей!⏺ Стало известно о масштабном инциденте провайдера MIRhosting. Платформа nLighten без предупреждения отключила оборудование, и часть инфраструктуры компаний в европейских ДЦ стала недоступна. На момент публикации остановлена работа серверов в Германии и Нидерландах. Также недоступны THE.Hosting, UFO.Hosting, Alexhost.com, Vdsina.com и другие. Накануне инцидента MIRhosting подвергся проверкам регуляторов, были предъявлены обвинения в обходе санкций. ⏺ Codex обнаружил новую уязвимость. HTTP/2 Bomb позволяет провести удалённую DoS-атаку на серверы с включённым HTTP/2. Проблема затрагивает NGINX, Apache HTTPD, Microsoft IIS, Envoy и Cloudflare Pingora в конфигурации по умолчанию. Атака сочетает две известные техники:• Первая использует особенности HPACK, сжатия HTTP-заголовков в HTTP/2, из-за которого расходуется больше памяти сервера. • Вторая техника работает на задержке через flow control, из-за которого ресурсы не освобождаются. Весь PoC – здесь, а список затронутых серверов и рекомендации – тут. ⏺ Шон Вэбб отчитался о прогрессе HardenedBSD за апрель и май 2026. Основная часть усилий ушла на миграцию с GitLab на Radicle. Ключевые репозитории уже перенесены, хотя Вэбб сообщил, что часть интеграций ещё дорабатывается вручную. За два месяца вышло несколько рекомендаций по безопасности для FreeBSD и новые сборки FreeBSD 16, FreeBSD 15. ⏺Вслед за обзором инцидентов атак ИИ-агентов блоге Docker вышло 2 практических гайда по безопасности в песочнице. В первой Шрини Секаран разбирает набор из 5-ти практик обеспечения безопасности: ограничение процессов, контроль сети, лимиты ресурсов и постоянный мониторинг поведения во время выполнения. Во второй части даёт схему внедрения принципов в жизненный цикл работы ИИ-агента и оставляет подробный чек-лист для проверки. ⏺ В блоге CNCF вышел подробный разбор архитектуры платформы разработки на базе Kubernetes. Автор показывает, как объединить принципы нативных облачных технологи,
5 слоев кэширования в веб-приложениях: Полное руководство для Python-разработчиков #habrhttps://habr.com/ru/articles/1031748/Tags: кэширование, http-заголовки, cdn, local storageAuthor: artemshumeiko
Поздравляю всех подписчиков с началом лета! И вручаю вам тёплый летний подарок: методичку по харденингу Ubuntu 24.04 на русском. Методичка - моего авторства (@bykva)Долгие и нудные часы чтения 1000-страничного CIS и публичной ansible роли зародили во мне идею - вот бы была готовая выжимка, по которой можно было бы настроить автоматизацию, при этом понимать что именно она выполняет. и сделать это за 1 день, а не за несколько недель.В итоге родилась она - сжатая выжимка тысячестраничного CIS Benchmark: по каждому пункту коротко - что и зачем настраивать, с выделенными нюансами и ссылками на источники. Внутри - более подробное описание что это и зачем.З.Ы. саммаризация была сделана полностью без ИИ, но вот цветовое оформление, фактчекинг и правки орфографии и пунктуации я уже делал с помощью него, поэтому что-то могло поехать. Буду благодарен за ОС.
Choosing a Python Logging Library in 2026Python использует стандартную библиотеку logging, что означает, что большая часть существующего кода на Python уже использует её на том или ином уровне, и каждая альтернатива от сторонних разработчиков строится на её основе, оборачивает его или намеренно заменяет её.В этой статье рассматриваются следующие вопросы: какие библиотеки существуют, как они соотносятся друг с другом, где они пересекаются со стандартной библиотекой и когда каждая из них имеет смысл.📱 Telegram | 📲 MAX
👨💻 Что делать, если go fix сломал поведениеВ Go 1.26 go fix переписан с нуля. Теперь это полноценный движок модернизации: заменяет if/else на min/max, переписывает циклы на range-over-int, подставляет strings.Cut вместо strings.Index — и ещё десятки трансформаций за один запуск.Звучит удобно. Но после go fix ./... код может сломаться или, хуже, молча изменить поведение.Два типа конфликтовСинтаксические — go fix ловит сам и просит запустить повторно.Семантические — опаснее. Две независимые правки вместе могут сделать переменную неиспользуемой — и это уже ошибка компиляции. Лишние импорты инструмент уберёт сам, но с переменными придётся разбираться вручную.Тихие изменения поведенияappendclipped заменяет append([]T(nil), s...) на slices.Clone(s). Если s пустой — Clone вернёт nil. Для JSON это разница между null и []. Анализатор по умолчанию выключен, но показательно.slicescontains заменяет цикл на slices.Contains. Если выражение для искомого элемента имело побочные эффекты — поведение изменится. Этот баг попал в трекер и был исправлен в 1.26.3.Как работать безопасноСначала смотрите diff без применения:go fix -diff ./...Запускайте из чистого git-состояния, в отдельной ветке.Если сломалось — изолируйте анализатор:go fix -slicescontains=false ./...go fix -minmax ./...Не забывайте про платформы: один запуск обрабатывает только текущую конфигурацию сборки. Для мультиплатформенных проектов запускайте с разными GOOS/GOARCH.go fix — мощный инструмент, но не автопилот.📍 Навигация: Вакансии • Задачи • Собесы • Канал в Max🐸 Библиотека Go-разработчика#GoDeep
Стрим о защите контейнеров, который нельзя пропуститьБез лишних слов:1. Обзор актуальных угроз для контейнерных сред2. Kaspersky Container Security на практике — демонстрация новых фич в бою3. ИИ функциональность для поиска неочевидных рисков в образах4. Многое другое про защиту контейнеров от разработки до рантаймаНастоящее и будущее контейнерных сред обсудят эксперты «Лаборатории Касперского» и платформы «Штурвал» 28 мая в 11:00.Смотреть и регистрироваться.