Обновить
220.6

DevOps *

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

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

Как мы выстроили процесс нагрузочного тестирования в KISLOROD

Время на прочтение7 мин
Охват и читатели5.3K

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

Читать далее

Стандартизация без перегибов: как мы внедрили единые DevOps-процессы в 400 командах

Время на прочтение9 мин
Охват и читатели7.3K

Всем привет! Меня зовут Александр Соколов, я эксперт центра практик DevOps в МТС Web Services (MWS). В 2020 году в МТС началась масштабная унификация внутренних процессов. По задумке, целью этой трансформации было сделать экосистему наших продуктов по-настоящему технологичной, быстрой, управляемой и гибкой. В компании выделили направления, которым особенно нужно развитие, среди которых был и DevOps. Затем два года мы разрабатывали, пилотировали и внедряли стандарты и практики для более чем 400 продуктов экосистемы.

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

Читать далее

Добавляем паранойи: двойное шифрование секретов

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

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

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

Читать далее

Мой домашний Kubernetes, или DevOps-«песочница» на домашнем ПК

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

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

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

Читать далее

Работа с JDK Flight Recorder (JFR) из командной строки: инструмент для профилирования без графического интерфейса

Уровень сложностиСредний
Время на прочтение13 мин
Охват и читатели9.5K

Экосистема Java богата качественными инструментами для разработчиков, и средства профилирования и диагностики - не исключение.

Существуют коммерческие профилировщики, есть встроенные инструменты профилирования в ведущих IDE. А если вам важна свобода (или цена является важным фактором), open source сообщество также готово предложить достойные альтернативы.

JFR (JDK Flight Recorder) один из ключевых инструментов для диагностики работы Java приложений, который можно эффективно использовать из командной строки. Приёмам работы с этим инструментом я хочу посвятить данную статью.

Читать далее

Собираем и публикуем Flutter-апп в AppStore

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

Автоматизация сборки Flutter-приложения для iOS с использованием macOS

1 часть: Нано-ЦОД на Mac M4 mini

Привет! Наш Mac Mini M4 прошел путь от «нано-ЦОД» до полноценной сборочной фабрики!

В новой статье — без лишней воды — рассказываем, как мы настроили полный цикл: от кода до автоматической публикации в AppStore.

Что внутри:

Готовые конфиги Fastlane
Настройка GitLab CI/CD
Работа с секретами

И главное: почему 9 минут сборки лучше, чем 7 (да, мы ленимся оптимизировать кеш! 😅)

Читать далее

Почему не взлетают внутренние платформы?

Время на прочтение17 мин
Охват и читатели7.5K

Привет, Хабр! Меня зовут Александр Коротков, я — тимлид продуктовой команды в Т-Банк и член программного комитета конференции DevOps Conf. Разрабатывал системы автоматизации тестирования, пять лет посвятил работе над IDP, лидировал разработку бизнесовой платформы. Эта статья родилась из моего доклада для DevOps Conf. Но, если честно, тема давно сидела в голове. Я много раз наблюдал в индустрии один и тот же сценарий: платформы начинают строить с амбициями, но потом что-то ломается — развитие замирает, платформа превращается в тяжёлую обузу или её и вовсе переписывают с нуля. Почему так происходит? Где те самые «невидимые грабли», на которые снова и снова наступают разные команды?

Будет полезно не только тем, кто строит платформы напрямую — CTO, Head of Platform, DevOps-инженерам и разработчикам платформенных решений, но и всем, кто сталкивается с инфраструктурой и хочет заранее видеть потенциальные проблемы.

Читать далее

BitnetEnv 2077 — через боль и бубны к новой эре DevOps для Bitrix

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

Я — Bitrix-разработчик со стажем 8+ лет.
Начинал дружить с битрой ещё с версии 12 — когда всё было максимально квадратно, можно сказать что я тот самый "проженный" битриксоид, а любой деплой превращался в ночной марафон из консоли, логов и bash-скриптов.

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

Поэтому я переписал его заново — на Python + HTML5 + Vanilla JS.
Без bash-магии запрещенной в хогвартсе и с прозрачной архитектурой собрав все года боли общения в единую точку невозврата возрождение Битрикс!

Читать далее

DockerHub удаляет старые JDK теги — ваши пайплайны могут быть под угрозой

Уровень сложностиПростой
Время на прочтение2 мин
Охват и читатели8.8K

Если вы используете openjdk:<tag> образы в CI/CD и пулите их с Docker Hub, Вам следует оперативно перепроверить свои пайплайны: мейнтейнеры DockerHub удалили ряд устаревших тегов без громких анонсов. Некоторые сборки уже не работают — пострадали сотни пользователей.

В данной новости, эксперт сообщества Spring АйО Михаил Поливаха рассказывает, что произошло, почему это проблема, и какие есть альтернативы.

Читать далее

Ansible Inventory: полное руководство от localhost до AWS

Уровень сложностиСредний
Время на прочтение14 мин
Охват и читатели16K

Лень — двигатель прогресса. Именно по этой причине Ansible — лучший друг любого админа, которые не хочет руками применять настройки к 1000 серверов. Я использую его на регулярной основе, но при этом именно тема инвентарных файлов каждый раз умудряется меня удивить. Поэтому в этой статье решил собрать всю общую информацию, начиная с inventory.ini и заканчивая плагинами для динамических инвентарей.

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

Читать далее

Внутреннее устройство Docker. Заглянем под капот

Уровень сложностиСредний
Время на прочтение4 мин
Охват и читатели13K

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

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

Читать далее

Применение видеотехнологий Cloud Gaming для построения VDI: на примере VK Play Cloud и платформы VK Cloud

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

Cloud Gaming и VDI — разные технологии, применяемые для разных задач и даже для разной целевой аудитории. Вместе с тем, если заглянуть к ним под капот, можно увидеть, что у технологий есть много общего — например, одинаковые принципы стриминга видеопотока, методы сжатия передаваемых по сети данных и борьбы с потерями сетевых пакетов. Таким образом, при разработке Cloud Gaming можно отчасти опираться на технологии, примененные в VDI, и наоборот. Именно так мы и поступили при создании сервиса VDI (Cloud Desktop) для облака VK Cloud.

Привет, Хабр. Меня зовут Кирилл Черников. Я руководитель Команды клиентской разработки в VK Tech. В этой статье я расскажу об особенностях Cloud Gaming и VDI, о разнице в требованиях к сервисам, сложностях адаптации игрового решения к задачам VDI и о полученных результатах на примере сервиса VK Play Cloud и платформы VK Cloud.

Читать далее

Нано-ЦОД на Mac M4 mini

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

Нано‑ЦОД на Mac M4 mini

Считали, что выгоднее: арендовать Mac для сборок или купить свой? Оказалось, что собственный Mac Mini M4 окупается всего за год и экономит 60к ежегодно!

В этом кейсе — честные цифры, настройка с ИБП для автономности, борьба с шифрованием диска и headless-режимом через плату видеозахвата, а также развертывание GitLab Runner, OrbStack и Apache Guacamole.

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

Читать далее

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

Политики над конфигами (OPA/Rego) в GitOps-пайплайне

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

Привет, Хабр!

Представим, что вы отвечаете за десятки конфигурационных файлов Kubernetes (или Terraform, Ansible, не суть важно) в репозитории, и каждый pull request может потенциально привести к тому, что в кластер уйдёт что-то не то. Наш любимый коллега случайно поставил контейнер с privileged-правами, другой задеплоил образ из публичного репозитория Docker Hub, а третий вовсе забыл про лимиты памяти и CPU. Без автоматического контроля такие промахи легко попадут в продакшн. Ошибки в настройках сегодня одна из главных причин инцидентов безопасности в облачных средах.

Как же нам держать всё под контролем? Внедрить политики как код: формализованные правила, проверяемые автоматически на каждом шаге. В этой статье я расскажу, как применять Open Policy Agent и язык Rego, чтобы навести порядок в GitOps-пайплайне и не допускать лишнего в конфигурациях.

Читать про внедрение политик в GitOps

Инженерная зрелость. Исследование практик и триггеров

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

Почему одни команды релизят предсказуемо и без героизма, а другие тушат пожары на продакшене каждую неделю?

Мы решили выяснить, какие инженерные практики превращают разработку в систему с понятными процессами и предсказуемыми результатами.

Исследование 100+ респондентов.

Читать далее

5 распространенных ошибок, которые допускают пользователи NAS

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

NAS обычно рассматривают как домашнее облако. Им он, в общем, и является. Только лучше: все данные лежат у тебя под боком, скорость выше, да и платить каждый месяц не надо. Купил один раз железо, настроил и пользуешься. Вот только вместе с NAS приходит и ответственность. Сегодня разбираем типичные косяки, которые пользователи допускают при эксплуатации NAS, а лучше бы не.

В основу этой статьи легли комментарии наших читателей к статье “Облако vs. NAS”. Вы накидали столько кейсов, что нам хватило на целый материал, и еще осталось. Спасибо, друзья!

Читать далее

VPN для админа, а не админ для VPN: Как мы убили OpenVPN и построили всё на WireGuard

Уровень сложностиСредний
Время на прочтение6 мин
Охват и читатели23K

Да, я знаю. «Опять статья про WireGuard». Но это не очередное «how-to» на 5 строк. Это — история боли, паранойи и, наконец, автоматизации. Это история о том, как мы перестали «обслуживать» VPN и заставили его работать на нас...

Настроить и забыть

Code Anywhere по-настоящему

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели14K

Настоящий комбайн для разработки:

доступ с любого устройства через браузер или SSH;

работа в контейнере исключает влияние на хостовую ОС;

лёгкость развёртывания на любом сервере с Docker;

поддержка отладки, терминала и Docker‑CLI внутри среды;

HTTPS‑шифрование и контролируемый доступ.

Это интересно

Сборка docker image под windows

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

Тем кто собирает что-то под windows и задумался о версионировании сборочного окружения.

Как ведь бывает, прилетает баг, нужно пересобрать старый релиз, а сборочный агент уже с другим окружением. И даже если вы каким-то образом сохраните нужное окружение, как защитить от его от самих сборок? Делать снапшоты, откатываться, или разворачивать агенты с некого золотого образа и прочее.

Версии окружения поднимаются, само окружение усложняется, требование команд к окружению растут и расходятся. Как тут всем угодить?

Исторически так сложилось, что в linux docker заехал как родной, а вот в windows вроде бы есть, но про него не слышно, на Хабре так уж точно. Поэтому если вы решили это попробовать, то эта статья для вас.

Читать далее

AdGuard DNS: от нуля до 100 000 000 пользователей через боль

Время на прочтение13 мин
Охват и читатели18K

Современный DNS — это не только соответствие доменов IP-адресам, но и целое распределенное хранилище различных метаданных (SVCB-, HTTPS-записи, всевозможные верификации и публичные ключи).

Сегодня расскажем, как проект стал одним из основных DNS-сервисов в мире. Статья написана на основе доклада технического директора AdGuard Андрея Мешкова и директора по инфраструктуре AdGuard Константина Замякина в рамках Профессиональной конференции разработчиков высоконагруженных систем Saint HighLoad++ (июнь-2025).

Читать далее

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