Как стать автором
Поиск
Написать публикацию
Обновить
277.1

DevOps *

Методология разработки программного обеспечения

Сначала показывать
Порог рейтинга
Уровень сложности

Вышел релиз GitLab 17.11 с настраиваемыми фреймворками соответствия требованиям

Уровень сложностиСредний
Время на прочтение21 мин
Количество просмотров3.6K
Читать дальше →

Обзор Greenmask — утилиты для логического дампа PgSQL с трансформацией данных на лету

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров2.6K

Greenmask — это кроссплатформенный инструмент, разработанный на Go специально для безопасной работы с данными PostgreSQL: он помогает делать логические бэкапы, восстанавливать таблицы и при необходимости — анонимизировать чувствительную информацию. Главное преимущество Greenmask — полная совместимость с pg_dump и pg_restore. То есть, если вы уже работаете с этими инструментами, интеграция Greenmask не потребует пересмотра всей инфраструктуры.

Один из ключевых сценариев использования утилиты - подготовка баз данных для тестового стенда. Greenmask позволяет упростить процесс дампа продуктивных баз, обработки их для анонимизации тех же персональных данных, снижения размера баз (в тестовой среде зачастую не нужны терабайты данных с прода), восстановления дампов в тестовый контур.

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

Официальный сайт: https://greenmask.io

Документация: https://docs.greenmask.io/latest/

GitHub-репозиторий: https://github.com/GreenmaskIO/greenmask (уже 1308 звезд)

Telegram-канал: https://t.me/greenmask_ru

Читать далее

Tuna Секреты — современный подход к конфигурации окружений

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров836

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

Читать далее

Автоматизированное E2E-тестирование App.Farm: от хаоса к системе

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров1.3K

Когда мы только начинали работу над платформой, тестирование напоминало ручное управление парусником в шторм — много усилий, но результат непредсказуем. Разработчики вручную создавали тестовые среды, QA проверяли функционал через Postman, а о стабильности релизов можно было только мечтать. Каждый новый релиз был как лотерея: либо всё работает, либо начинается долгий процесс поиска причины багов в production.

Читать далее

Распределённый инференс и шардирование LLM. Часть 1: настройка GPU, проброс в Proxmox и настройка Kubernetes

Уровень сложностиСложный
Время на прочтение14 мин
Количество просмотров10K

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

Эта статья в трёх частях — результат моего опыта в решении этой задачи. Внутри вас ждёт пошаговое руководство по реализации бюджетного распределённого инференса с использованием Ray Serve, vLLM, Kubernetes, Proxmox и других технологий. В первой части мы разберём настройку GPU и его проброс в Proxmox, развернём Kubernetes-кластер, установим GPU Operator и KubeRay Operator.

Поехали!

DevOps без боли: 8 инструментов для мониторинга, автоматизации и стабильной работы команд

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров17K

Привет! Меня зовут Андрей Кузьмин, в МТС я работаю DevOps-инженером. В моей работе инструменты решают многое — например, помогают команде быстрее выпускать обновления, вовремя узнавать о проблемах и сразу их исправлять. Благодаря им бизнес не теряет клиентов и деньги из-за сбоев в работе сервисов.

В этой подборке — восемь инструментов, популярных у современных DevOps-команд. Мониторинг, автоматизация, управление инцидентами, анализ данных, полная прозрачность инфраструктуры и кое-что еще. Каждый инструмент закрывает свою критическую задачу и реально упрощает работу. Поехали!

Читать далее

Отправка label в систему логирования и мониторинга из метаданных GitLab Runner (job_id, pipeline_id)

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров1.6K

При использовании GitLab CI/CD с Kubernetes возникает необходимость видеть связку между логами и конкретными CI job'ами или pipeline'ами. Это особенно полезно для отладки и мониторинга. Однако по умолчанию логи из подов не содержат этих связующих метаданных.

В данной статье мы покажем, как можно передавать метки job_idpipeline_idproject_name и другие из GitLab Runner в систему логирования VictoriaLogs с помощью Promtail и систему мониторинга VictoriaMetrics.

Читать далее

Статический Анализ С-кода

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров2.7K

Существуют бесплатные статические анализаторы для Си кода. Среди них splint и cppcheck.

Статический анализатор - это такая консольная программа, которая проверяет исходные коды до компиляции. Своего рода автоматическая инспекция программ.

В этом тексте я представил инструкцию про то, как интегрировать статический анализ кода в общий скрипт сборки проекта.

Суть этой короткой заметки в том, чтобы показать, как просто и лаконично происходит подключение разнообразных статических анализаторов к проекту, который собран скриптами сборки GNU Make.

Читать далее

Как serverless-архитектура влияет на модернизацию инфраструктуры

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров6.1K

Serverless-архитектура всё увереннее набирает обороты — и неудивительно. Речь о том, что можно просто бросить код в облако, а масштабирование, обновления и даже «железо» доверить провайдеру. Вы спросите: «Никаких бессонных ночей из-за аптайма, никакого счёта за простаивающие мощности?» — платишь только за то, что реально отработало.

Всё радужно и светло, пока не задумаешься о платформах вроде AWS Lambda или Azure Functions. Они действительно решают проблемы, но логичный вопрос — можно ли полагаться на них на все 100%? А что, если резко вырастет трафик? Выдержит ли система, или проект «ляжет» в самый неудобный момент? Попробуем найти ответы и разобрать влияние serverless-архитектуры, её плюсы, недостатки и ключевые технологии. Все под кат!
Читать дальше →

Как мы упростили развертывание почтового сервиса для тестирования или сказ про Mailpit — он же сервис fakemail\mailtrap

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров2.2K

Привет! В нашей команде возникла задача — развернуть почтовый сервер для удобства тестирования. Цель — проверять, как различные сервисы осуществляют рассылку писем клиентам. В этой статье хочу поделиться нашим опытом, каким решением мы воспользовались и почему оно может быть полезно и вам.

Читать далее

Event-Driven архитектура на FastAPI: через паттерн Pub/Sub

Уровень сложностиСложный
Время на прочтение13 мин
Количество просмотров8.1K

В мире разработки программного обеспечения постоянно появляются новые подходы к построению систем. Event-Driven архитектура выступает одним из наиболее перспективных решений для создания гибких и масштабируемых приложений.

В данной статье мы расскажем о реализации Event-Driven архитектуры (EDA) с использованием FastAPI и паттерна Publish/Subscribe. Рассмотрим основные концепции, компоненты и практические примеры кода для создания масштабируемой системы обмена сообщениями.

Читать далее

Простой Grafana дашборд для логов NestJS (feat nestjs-pino, Loki)

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров3.5K

Эффективный мониторинг состояния веб-приложений остается одной из самых актуальных проблем в современной разработке. В погоне за быстрой реализацией продукта и выводом его на рынок, довольно часто приходится жертвовать настройкой системы мониторинга - даже базовой.

Однако здесь кроется скрытая угроза. Такой подход в разы усложняет отладку и дальнейшее сопровождение сервисов, а иногда это приводит к полнейшему хаосу при возникновении тех или иных непредвиденных ошибок...

Читать далее

Настраиваем свой send-only почтовый сервер postfix с DKIM в docker-контейнере

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров4.4K

Если вы читаете этот материал, скорее всего вы уже знаете что поднять свой почтовик это страдание и внезапно нетривиальная задача. Цель статьи - без лишней лирики дать пошаговый мануал тем, кто хочет настроить свой собственный мейлер и не платить деньги mailgun и подобным SMTP-relay сервисам.

Читать далее

Ближайшие события

Kubernetes как PaaS: максимум возможностей без разработки. Часть 2

Время на прочтение12 мин
Количество просмотров2.7K

Это вторая часть серии статей, где мы шаг за шагом строим PaaS на базе Kubernetes без написания кода. Напомню, для чего мы это делаем: наша цель — выжать максимум из современных технологий и экосистемы Kubernetes, чтобы создать PaaS-решение, которое упростит жизнь разработчикам. Мы хотим, чтобы приложения и сервисы разворачивались быстро, удобно и без глубокого погружения в инфраструктуру.

Читать далее

Баланс между скоростью разработки, UX и безопасностью: погружение в трилемму современного IT

Уровень сложностиПростой
Время на прочтение36 мин
Количество просмотров1.6K

Вступление: Трилемма, актуальная для всех

Скорость вывода продукта на рынок (Time-to-Market), безупречный пользовательский опыт (UX) и надежная информационная безопасность (Security) – три кита, на которых держится успех современного цифрового продукта. Однако на практике эти три цели часто вступают в конфликт, создавая то, что можно назвать "трилеммой IT". Попытка оптимизировать один аспект неизбежно создает давление на другие. Руководство требует роста, пользователи – удобства, а реалии цифрового мира – защиты. Как найти баланс?

Эта статья – попытка глубоко погрузиться в суть конфликта. Мы не только рассмотрим его причины и последствия на известных примерах, но и копнем глубже: разберем технические и архитектурные дилеммы, психологические аспекты восприятия безопасности пользователями, типичные анти-паттерны в командах и, самое главное, предложим зрелые подходы и методологии для поиска устойчивого равновесия.

Читать далее

Команда игнорировала линтеры и я написал свой нотификатор

Время на прочтение6 мин
Количество просмотров1.7K

Привет! Меня зовут Иван, и я автор проекта «Код на салфетке» — небольшой команды, в которой мы совмещаем написание обучающих статей, коммерческую разработку и open source.

Сегодня расскажу об одном из наших инструментов, который родился из боли всей команды: как мгновенно узнавать о проблемах в CI/CD, не заглядывая в почту и не обновляя вкладку репозитория.

Читать далее

Пишем контроллеры Kubernetes: что нужно знать о разработке масштабируемых и надёжных контроллеров

Уровень сложностиСредний
Время на прочтение15 мин
Количество просмотров4.5K

Низкий порог входа в разработку контроллеров Kubernetes часто приводит к проблемам в production. Мы перевели статью, в которой автор делится опытом создания надёжных контроллеров, рассказывает о принципах проектирования API и объясняет важность автономной реконсиляции. Узнайте, как сделать контроллеры действительно масштабируемыми.

Читать далее

Золотые сигналы SRE для самых маленьких. Или как сделать качественный мониторинг, если вы не Enterprise

Время на прочтение3 мин
Количество просмотров6.4K

Проекты ломаются, иногда очень коварно. Крупные компании используют различные подходы, чтобы обеспечить наблюдаемость, покупают дорогие сервисы, нанимают SRE-инженеров. Но если проект небольшой, условный телеграм-бот, многие решения по мониторингу могут быть избыточными. Перед нами стала задача обеспечить для них Observability так, чтобы это было максимально просто, дешево(желательно бесплатно) и обеспечивало лучшие SRE-практики для наших пользователей. Так, чтобы обеспечить опыт наблюдаемости работы сервисов, близкий опыту крупной компании с SRE-отделом, только без сложности настройки и условно бесплатно.

Читать далее

Как бессерверные gpu делают AI доступным. Введение в платформу PrimeWay

Уровень сложностиСредний
Время на прочтение10 мин
Количество просмотров2.8K

Привет, Хабр! Сегодня мы поговорим о том, как бессерверные-технологии меняют мир GPU-вычислений. Если вы когда-нибудь сталкивались с машинным обучением, рендерингом анализа 3D-графики или большими данными, эта статья поможет вам сэкономить время, деньги и нервы.

Читать далее

Собственные метрики в Pilot-Web

Уровень сложностиСредний
Время на прочтение4 мин
Количество просмотров747

Привет, друзья!

Сегодня поговорим про написание собственных метрик Pilot-Web для Prometheus. Здесь нам понадобятся методы API нашего Web'а. Запускаем devTools (F12), переходим в networks и авторизовываемся через браузер и смотрим доступные нам запросы. Из полезных это GetPeople (данные по пользователям базы), IsOnline (в сети ли пользователь в Вебе), GetOrganizationUnits (данные по организационной структуре) и другие.

Читать далее

Вклад авторов