Обновить
261.72

DevOps *

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

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

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

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

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

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

Читать далее

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

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

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

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

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

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

Читать далее

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

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

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

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

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

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

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

Читать далее

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

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

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

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

Читать далее

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

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

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

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

Читать далее

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

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

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

Читать далее

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

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

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

Читать далее

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

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

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

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

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

Читать далее

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

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

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

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

Читать далее

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

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

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

Читать далее

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

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

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

Читать далее

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

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

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

Читать далее

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

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

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

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

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

Читать далее

Спринт без смысла, тикеты без души: ищем выход вместе с разработчиками, DevOps-магами и аналитиками

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

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

Если честно, мы знаем ответ. Но ведь так неинтересно! Поэтому мы нарисовали комикс о том, как карьерный тупик трёх IT-специалистов — разработчика, аналитика и DevOps-инженера — внезапно превращается в портал, за которым их ждут испытания: Legacy-Хаос, техдолг и поток данных, грозящий поглотить всё живое. Чтобы пройти их, героям понадобятся не суперсилы, а кое-что куда важнее: автоматизация, гибкие подходы и возможность делать то, что имеет значение. Погружаемся в комикс — и проверим, что будет, если карьерным мечтам действительно дать пространство для развития.

Читать далее

Как интеграция поддержки виртуализации VMware меняет подход к контейнеризации

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

В статье разберем процесс внедрения виртуализации в платформу контейнеризации, обсудим ее преимущества для пользователей и покажем, каким образом это решение упрощает администрирование ИТ-инфраструктуры.

Читать далее

Разворачиваем GitLab за пару кликов

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

Когда нужна полноценная среда для CI/CD, но нет времени на развёртывание инфраструктуры с нуля, контейнеризированный GitLab становится быстрым и удобным решением. В этой статье покажем, как развернуть локальный GitLab и GitLab Runner через Docker и Docker Compose, избежать распространённых ошибок на старте и настроить базовый пайплайн за минимальное время.

Читать далее

Как я настраивал свой односерверный локальный кластер Kubernetes

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

Всё началось с того, что в 2024 году мне в руки попал интересный экземпляр мини-ПК ( Характеристики: Процессор Intel N100 / RAM 16 GB / SSD 500 GB.) решив, что раз уж основная рабочая лошадка у меня уже есть, этот мики-ПК предстоит переделать в мини-сервер и приспособить к мои pet-проектам. Заказал себе 1Гбит интернет, белый IP адрес и ушел творить.

Первая моя задумка с треком провалилась, т.к изначально я разместил на нем Gitlab Server, NextCloud и пару своих приложений. «Жужжал» он не по-детски, я взаправду подумал, что в какой-то момент он просто отлетит к своим небесным производителям.

Читать далее

Единый механизм указания значений по умолчанию для StorageClass: централизованный подход Deckhouse

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

В Kubernetes важно правильно настроить StorageClass, чтобы эффективно использовать место для хранения данных приложений. Выбирать StorageClass по умолчанию можно вручную, но такой способ часто приводит к ошибкам и усложняет работу. В статье расскажем, почему ручной способ — не самый удобный, и покажем подход, который реализовали в Deckhouse. Он помогает проще и надёжнее управлять хранением данных.

Читать далее

CI/CD для чайников — разберитесь и начните автоматизировать рутину в разработке. Часть 3. Его величество, деплой

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

Пишу про полезные материалы про IT, и собираю свой ламповый нетворкинг тут - https://t.me/+434aQiGpZtAyNTU6. Присоединяйтесь!

Оглавление.

Читать далее

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