Пятничный деплой
4.47K subscribers
1.42K photos
29 videos
167 files
7.79K links
Подборка ссылок, статей и постов из мира DevOps\SRE\разработки. Если вы хотите прислать фидбек, интересную статью или просто поболтать пишите @count0ru https://xn--r1a.website/s/count0_digest
Download Telegram
Forwarded from /usr/bin
Как работает ptrace в Linux и зачем он нужен

С ptrace можно подключаться к чужим процессам, читать и менять их память, перехватывать системные вызовы — и даже вежливо уволить sleep 9999. Читать дальше.
Forwarded from DevOps&SRE Library
updatecli

Automatically open a PR on your GitOps repository when a third party service publishes an update


https://github.com/updatecli/updatecli
Forwarded from Мониторим ИТ
How to use Prometheus to efficiently detect anomalies at scale

Допустим, вы работаете в дежурной смене и вам посреди ночи приходит уведомление. Вы его открываете, там ссылка на дашборд мониторинга, где вы задержку выполнения транзакций. Но является ли этот всплеск нормальным для этого времени суток? Является ли он вообще актуальным? Следующее, что вы делаете — вы расширяете временное окно и проверяете другие связанные показатели, пытаясь выяснить, что происходит.

Такая вот обычная ситуация. В этой статье в блоге Grafana разбираются какие математические выражения помогут наиболее эффективно и быстро обнаружить аномалии на различных графиках производительности.
💡 Go-кэш за 5 минут

🔧 Установка
go get github.com/patrickmn/go-cache


🚀 Быстрый пример
c := cache.New(5*time.Minute, 10*time.Minute)
c.Set("foo", "bar", cache.DefaultExpiration)

val, found := c.Get("foo")
if found {
fmt.Println("Found:", val)
}

• 5m — TTL по умолчанию для всех ключей
• 10m — интервал очистки просроченных ключей
• можно указать cache.NoExpiration — чтобы хранить вечно

🛠 Полезные методы
// Установить с TTL
c.Set("key", "value", time.Minute)
// Получить значение
c.Get("key")
// Удалить ключ
c.Delete("key")
// Очистить всё
c.Flush()


💬 Какой либой для кэша пользуетесь вы? Делитесь в комментариях👇

🐸Библиотека Go разработчика #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from monhouse.tech
Дорогие друзья, уже на следующей неделе, 23 апреля в Амфитеатре Санкт-Петербургского конгресс-центра Ленполиграфмаш состоится очередной [ Big Monitoring Meetup ] 12!

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

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

Встречайте докладчиков двенадцатой конференции:

Презентация "3D визуализация в мониторинге: модный тренд или рабочий инструмент?"
— Андрей Никифоров. Генеральный директор [ ООО «ТРИТВИН» ]

Дискаверинг и мониторинг сетевого оборудования в системе мониторинга Saymon, часть вторая.
— Дмитрий Хандыго. Начальник отдела программных решений [ Inline Technologies ]

Мониторинга много не бывает. Или бывает? А наследованного и самописного?
— Михаил Еграмин. Главный инженер [ ООО «Сети ВЕБА» ]

Мониторинг не ограничен потреблением. Как FinOps помогает не упустить контроль над инфраструктурой.
— Гуляев Андрей. Руководитель развития продукта [ Инферит Клаудмастер ]

Облачная система мониторинга радиовещания.
— Александр Орлов. Менеджер [ ООО "Тракт-Софт" ]

Мониторинг — это просто.
— Вадим Исаканов. Старший инженер [ Платформа контейнеризации «Боцман» ]

Если инциденты случаются - значит это кому-нибудь нужно?​
— Вероника Шапиро. Руководитель направления инфраструктурного мониторинга [ CLOUD.ru ]

Не упустите шанс стать частью профессионального сообщества, получить новые знания и вдохновение для развития своих проектов!

✔️ Зарегистрируйтесь сейчас, количество билетов ограничено

Подпишитесь на наш ТГ канал или ВК сообщество, чтоб не пропустить важные новости

До встречи на конференции [ Big Monitoring Meetup ] 12!
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2👎1
PythoNN: видео с апрельского митапа

4 апреля прошел очередной #python митап в Нижнем Новгороде.

Было очень душевно и интересно.
Случился аншлаг! Пришло много нижегородцев и приехало очень много гостей: из Москвы, Питера, Кирова и других городов. Спасибо всем!

Было 4 крутых доклада:
- "Are you NATS?" – Гурбанов Михаил https://youtube.com/watch?v=atD3JVWurno
- "Почему исправление опечаток сложнее, чем кажется, и как мы с этим српавляемся" – Дмитрий Бровкин https://youtube.com/watch?v=9HRBwwaMIfA
- "Современный web с современными темплейтами" – Алексей Гончарук https://youtube.com/watch?v=lN3Pz_hUCio
- "Демистификация PostgreSQL-индексов" – Алексей Голобурдин https://youtube.com/watch?v=6kVGSLdj28k

А потом мы сидели в баре до 5 утра.

Что улучшить?
- Первый раз записывал на StreamYard, сделал плохую композицию слайдов и видео докладчика, исправим в следующий раз. Прикрепил все слайды в описании докладов – чтобы была возможность все прочитать и скопировать код
- Поработаем над звуком, сейчас он немного прыгал

Хотите присоединиться?
- Если хотите сделать доклад, пишите мне в личку – лично учу новичков выступать и делать слайды, полная свобода в выборе темы
- Если хотите просто послушать – следите за анонсами в чате и подписывайтесь на мой канал с записями

У нас в Нижнем – просто офигенно, всех ждем в гости! 🌆

| Поддержать | YouTube | GitHub | Чат |
Perforator — система непрерывного профилирования для разных языков

https://github.com/yandex/perforator

Главные фичи:

> Efficient and high-quality collection of kernel + userspace stacks via eBPF
> Scalable storage for storing profiles and binaries
> Support of unwinding without frame pointers and debug symbols on host
> Convenient query language and UI to inspect CPU usage of applications via flamegraphs
> Support for C++, C, Go, and Rust, with experimental support for Java and Python
> Generation of sPGO profiles for building applications with Profile Guided Optimization (PGO) via AutoFDO

Но самое главное – у Perforator есть режим Continuous Profiling, где на сервак ставится агент, который передает информацию о производительности всех сервисов. На что тратит всего около 1% CPU.

Очень полезный и полный пост с анонсом на хабре.
Важное ограничение: пока работает только на x86_64 Linux, ARM поддержка планируется в ближайшем будущем.

Профилируем код на Python

Нас конечно же больше всего интересует, как данная штука умеет профилировать код на питоне.
Пока что работают только версии после 3.12, потому что нативная поддержка perf появилась именно там: https://docs.python.org/3/howto/perf_profiling.html

Смотрим доку, как профилировать питон: https://perforator.tech/docs/en/tutorials/python-profiling
Сначала собираем при помощи docker в пару строк: https://perforator.tech/docs/en/guides/build#container

Прямо в примере в доке есть код, который будет работать неоптимально. Запустим его:


» python server.py
My pid is 53000
Serving on port 9007


И запускаем профилировщик: sudo perforator record --pid $YOUR_PID --duration 1m --serve ":9006"
На http://localhost:9006 вас будет ждать flamegraph работы скрипта.

Перед тем, как его смотреть, нагрузим наш сервак простейшим скриптом:


import requests
import random

while True:
user_id = random.randint(1, 1000000)
requests.get(f"http://localhost:9007/search_user?user_id={user_id}")


Получится вот такой замечательный flamegraph.

Но! Пример из документации не заканчивается просто созданием графика, пример показывает, как его анализировать. Что очень важно. Далее нам предлагают найти узкое место в коде: https://perforator.tech/docs/en/tutorials/python-profiling#optimizing-the-bottleneck

После оптимизации получится так. Потребление CPU упадет с 96% до 26%

Чего хочется?

- Хочется поддержки macos для локального профилирования
- Хочется попробовать в реальном проде :)
- Хочется понять, насколько такие данные помогут средней компании писать более производительные сервисы

Обсуждение: как у вас в компаниях дела с Continuous Profiling?

Про Perforator я узнал благодаря своему старому и доброму товарищу – Евгению Антонову, он ведет канал про важные навыки для тимлидов и два подкаста: КодаКода – про менеджмент и харды, "Три тимлида заходят в бар" – про разные тимлидские штуки, которые будут безусловно полезны для тех, кто решил развиваться в данную ветку карьеры. Советую!

Хотите рассказать про свой опенсорс проект? Пишите в наш чат :)

| Поддержать | YouTube | GitHub | Чат |
Forwarded from k8s (in)security (Дмитрий Евдокимов)
Мы начинаем публиковать доклады с программы БеКон 2025!

1) "Без секретов! Workload Identity Federation: безопасная аутентификация в облаке" (Дмитрий Лютов, Yandex Cloud)

Строить безопасность в облаке без механизма Workload Identity очень сложная задача. И если в западных облаках его наличие уже само собой разумеющееся, то в наших просторах далеко не все вообще знают что это за зверь такой. Задача этого доклада рассказать как опасно жить без него, как он устроен и как спасает.

2) "Неочевидные и непонятные моменты безопасности Kubernetes" (Дмитрий Евдокимов, Luntry)

Рабочее название доклада было "Ворчание старого деда про k8s security". А лейтмотивом стали вопросы на тренингах "Почему так?", "Почему до сих пор так?", "Почему не иначе?", "Доколе?" и т.д. В итоге, сформировался список таких моментов.

За детальным описанием можно обратиться сюда.
👎2
🚀EvaTeam выпустила бесплатную версию EvaDev для IT-компаний, версия доступна в варианте on-premise на 10 пользователей.

В EvaDev вся линейка продуктов EvaTeam для управления IT-проектами: EvaProject (Jira 2.0), EvaWiki (Сonfluence 2.0), EvaServiceDesk (Jira SM 2.0), EvaRMS, EvaTest, EvaGit.

1️⃣ Более 1200 функций по управлению IT-проектами от управления требованиями до поддержки готового приложения и сбора обратной связи.
2️⃣ Легкая миграция данных из других систем (Jira, YouTrack, Confluence и др.) в полном объеме и без потерь.
3️⃣ Масштабируемость под предприятия любого размера.

🚀Решениям EvaTeam доверяют: «Авито», «ВкусВилл», «СберМобайл», ДОМ.PФ, Knauf и сотни других.

👉 Получить бесплатную версию можно по ссылке
👎7👍2
Как правильно настроить запросы и лимиты CPU для контейнеров? Какие ошибки могут привести к снижению производительности приложений?

Джон Такер делится подробным анализом работы CPU в Kubernetes, включая базовые понятия, примеры настройки и рекомендации по оптимизации. Узнайте, как добиться стабильной работы ваших кластеров.
👎31👍1
🕐 Команда дня: время запроса

Когда профессионал хочет узнать, тормозит ли API — он не запускает браузер, он пишет curl. Это секретное оружие:
curl -s -w "%{time_total}\n" -o /dev/null https://example.com


-s — тихо, без прогресс-бара.

-w "%{time_total}\n" — выводит только общее время запроса (секунды с миллисекундами).

-o /dev/null — не сохраняет ответ, он нам не нужен.

Бонус: замеры в цикле
for i in {1..5}; do curl -s -w "%{time_total}\n" -o /dev/null https://example.com; done


🐸Библиотека devops'a #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
👎11👍5
Forwarded from HABR FEED + OPENNET
[Перевод] Чек-лист для Kubernetes в продакшене: лучшие практики для SRE #habr
https://habr.com/ru/companies/otus/articles/902972/
Tags: k8s, kubern, sre, gitops, мониторинг инфраструктуры, управление ресурсами, Автоматизация в Kubernetes, оптимизация затрат
Author: kmoseenk (OTUS)
👎4
Forwarded from Enabling.team Insights
В начале апреля вышел 32-й выпуск технологического радара от компании Thoughtworks. На радаре упоминаются 22 практики, 28 платформ и более 50 инструментов и фреймворков. Что интересного мы отметили:
1. Развитие платформ и инструментов, связанных с CI/CD и Release Engineering:
- Платформа GitLab для автоматизации процессов CI/CD;
- Инструмент Nyx для автоматизации управления релизами;
- Инструмент OpenRewrite для рефакторинга кода;
- Инструмент Renovate для автоматизации обновления зависимостей;
- Инструмент Jujutsu для управления и контроля версий, работающий поверх Git;
- Инструмент Turborepo для сборки больших JavaScript или TypeScript проектов;
- Инструмент Mergiraf для разрешения конфликтов в Git.
2. Развитие Observability платформ и инструментов:
- Стандарт и набор инструментов OpenTelemetry для сбора, обработки и передачи данных телеметрии (метрик, логов, трассировок);
- Платформа Grafana Loki для агрегации и анализа логов;
- Платформа Grafana Tempo для распределенной трассировки;
- Инструмент Grafana Alloy для сбора, обработки и передачи телеметрии, поддерживающий OpenTelemetry.
3. Возникновение практик, платформ и инструментов для нового направления Observability for AI:
- Практика структурирования вывода LLM (Structured output from LLMs);
- Практика использование графов знаний для улучшения качества ответов LLM (GraphRAG)
- Платформа Weights & Biases для мониторинга и оценки производительности моделей;
- Платформа Arize Phoenix для наблюдаемости LLM;
- Платформа Helicone для мониторинга LLM;
- Платформа Humanloop для повышения надежности AI-систем;
- Инструменты Gemma Scope для наблюдаемости LLM;
- Инструменты NeMo Guardrails для обеспечения безопасности и наблюдаемости LLM.
4. Развитие практик и инструментов, связанных с Infrastructure as Code:
- Практика управление доступом для инфраструктуры (Just-in-time privileged access management);
- Платформа Railway для упрощения развертывания и управления инфраструктурой
- Инструмент System Initiative для визуального управления инфраструктурой;
5. Развитие практик и инструментов, связанных с Security Engineering:
- Практика тестирования приложений с использованием случайных данных (Fuzz testing);
- Практика обеспечения прозрачности цепочки поставок (Software Bill of Materials);
- Практика анализа угроз для проектирования безопасных систем (Threat modeling)
- Платформа Chainloop для обеспечения безопасности цепочки поставок;
- Платформа Plerion для анализа безопасности облачных рабочих нагрузок;
- Платформа Redactive для обработки конфиденциальных данных.
6. Развитие практик и инструментов, связанных с Data Engineering:
- Подход к данным как к продукту (Data product thinking);
- Платформа Synthesized для генерации синтетических данных;
- Платформа Tonic.ai для создания синтетических данных;
- Платформа Databricks Delta Live Tables для управления потоками данных;
- Инструмент Trino для распределенных SQL-запросов;
- Инструмент Metabase для визуализации и анализа данных.
7. Практика Architecture advice process для улучшения принятия решений по архитектуре и инструмент для создания диаграмм D2;
8. Применение модели Competence envelope для анализа системных сбоев, полезная для SRE (Competence envelope as a model for understanding system failures);
9. Упоминание Agile фреймворка SAFe в качестве антипаттерна;
10. Появление антипаттернов применения AI: AI-accelerated shadow IT, Complacency with AI-generated code, Local coding assistants, Replacing pair programming with AI;
11. Развитие практик, платформ и инструментов, связанных с AI и LLM: Model distillation, Prompt engineering, Small language models, Using GenAI to understand legacy codebases, AI-friendly code design, AI-powered UI testing, Unblocked, Deepseek R1, Model Context Protocol (MCP), Open WebUI, Reasoning models, Claude Sonnet, AnythingLLM, OpenRouter, LangGraph, Graphiti, turbopuffer, FastGraphRAG, Cursor, v0, Windsurf, Cline.
👍61
Forwarded from k8s (in)security (Дмитрий Евдокимов)
Вышел Kubernetes v1.33: Octarine!

Это значит, что помимо новых фич, так же что уже 29 июня закончится поддержка версии 1.30.

А вы уже успели перекатиться на 30-ю серию или все еще на 20-й?)
👍6
19 мая на T-Observability Day 2025 в рамках сессии разработчиков и пользователей платформ мониторинга и наблюдаемости Игорь Курочкин, эксперт по инженерной культуре, процессам и практикам Enabling.team представит техрадар O11y: обзор 80+ современных практик, платформ, инструментов и фреймворков, созданный на основе всех выпусков радаров Thoughtworks.

Помимо него своим опытом поделятся:
• Филипп Бочаров, Руководитель стрима мониторинга и наблюдаемости, МТС
• Владимир Дроздецкий, Team Lead DevOps, Магнит OMNI
• Лев Николаев, Заведующий кафедрой информационной безопасности, Росатом Техническая академия
• Владимир Томашев, Руководитель продукта Sage, Т-Банк
• Иван Юрченко, Руководитель продукта FineDog, Т-Банк

🗓 19 мая 2025 года
🕜 10:30 старт деловой программы
📍 T-Space, Грузинский вал, дом 7 или онлайн

Участие бесплатное, регистрация уже открыта
🔥2
Пост не на правах рекламы - от себя добавлю, что Игоря Курочкина я давно знаю (как и многие посетители DevOpsConf) и всячески рекмендую как действительно замечательного эксперта - приходите
1
Forwarded from k8s (in)security (Дмитрий Евдокимов)
Как мы уже неоднократно писали, поддержка User Namespaces в Kubernetes по умолчанию чрезвычайно важное событие в жизни k8s. И естественно, это заслужило отельной записи в официальном блоге Kubernetes под названием "Kubernetes v1.33: User Namespaces enabled by default!". Данная статья отвечает на все вопросы по данной теме, так что это просто MUST READ!

P.S. Для понимания проблематики рекомендуем освежить в памяти доклад "Linux user namespace в чертогах Kubernetes" с БеКон 2024.
👍4
🛠 Что может пойти не так при записи данных на диск или чтении данных с него? А вот что, например - Things that go wrong with disk IO...

https://notes.eatonphil.com/2025-03-27-things-that-go-wrong-with-disk-io.html

#io #filesystem #будничное
SLA и снижение потерь от инцидентов

Рассказываю про то, как построить SLA для платформенных продуктов, в чём тут отличие от обычных, "продуктовых" продуктов, как с этим связаны SLI, SRE и другие страшные трёхбуквенные слова.
Пройдёмся по инфраструктуре, по управлению ожиданиями и заветным девяточкам.
Бонусом — пачка лулзов из реальной жизни.

https://youtu.be/hIvWnxdBtR8
🔥31