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

DevOps *

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

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

Внедрение крупного open-source проекта only office server с портированием на astra linux

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

Я работаю в одной региональной государственной организации, в которой потребовалось внедрить онлайн систему управления документами, умеющую работать с документами формата docx и xlsx.

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

Был сделан запрос цены в АО «Р7», но когда руководство увидело предложение от правообладателя Р7, то сразу отклонило это предложение, ведь оказалось, что цена на 2 порядка выше, чем себе это представлял руководитель. Я могу понять правообладателя, ведь он потратил деньги на сертификацию, программистов и т. д., но нашему руководству этого не понять у них бюджет строго ограничен.

Итак задача изменена на внедрить онлайн систему управления документами но настолько дешево насколько это возможно, а лучше бесплатно но удовлетворяющую требованиям безопасности. Из альтернатив остается только применение open source решения only office server вкупе с выполнением рекомендаций по запуску не доверенного ПО в защищенных средах.

Задача усложняется тем, что базовые сервера работают на ОС AStra linux 1.8. Казалось бы в чем сложность? бери готовые docker образы, разворачивай и будет тебе счастье, но не все так просто – согласно одниму из требований по безопасности docker образ должен быть на базе ОС astra linux.

Итак для безопасности применяем 2 системы: система контейнеризации docker, работающая на основе встроенных в ядро linux механизмов изоляции и МКЦ в ОС astra linux. С docker все стандартно, а вот с запуском docker на пониженном уровне целостности пришлось повозиться. Включаем запуск командой sudo astra-docker-isolation enable, запускаем любой образ и получаем ошибку запуска docker. Путем анализа логов удалось обнаружить, что не удается пробросить порт, так как docker не имеет на это прав. После долгих поисков найдено решение написать политику разрешения доступа к firewalld для процесса docker.

Читать далее

Новые возможности менеджера секретов Deckhouse Stronghold: пространства имён, резервные копии и репликация данных

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

После ухода HashiCorp с российского рынка многие компании стоят перед выбором: переехать на Community-редакцию Vault и дорабатывать её под свои потребности или купить готовый продукт, где многие фичи доступны «из коробки» и есть поддержка от разработчиков.

В этом году мы добавили в свой менеджер секретов Deckhouse Stronghold привычный пользователям Vault функционал: от пространств имён до автоматических бэкапов и репликации KV-хранилищ. В статье сравниваем реализацию этих возможностей в обоих продуктах и делимся ближайшими планами по развитию Stronghold.

Читать далее

Основные принципы проектирования систем

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

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

Читать далее

Как мы уменьшали размер базы данных

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

Больше года назад мы в LEADS.SU задумались над высокодоступностью нашей БД и начали искать различные варианты. Круг решений сужало то, что мы используем TokuDB, который уже не поддерживается. Вариантов было несколько, но точно было понятно что запуск кластера повлечет за собой полное клонирование файлов /var/lib/mysql, к тому моменту размер этой директории уже перевалил за пару сотен гигабайт и мы задумались над ревизией данных, что привело к долгоиграющему процессу по уменьшению размера БД.

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

Читать далее

Millau — ingress-прокси с самонастройкой для Docker Swarm

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

Стыдно признаться, я практикую Swarm в 2025 году. Его легко объяснять, быстро готовить и просто использовать. Это инструмент старта в мир контейнеров, когда большой Kubernetes избыточен. Но путь развития Docker оказался не самым прямым. Со временем стало не хватать минимального динамического прокси для Swarm. Такого, который можно запустить один раз, чтобы он сам настраивал маршрутизацию трафика к микросервисам - и забыть. Так появился Millau - ingress-прокси и балансировщик на лейблах. Сейчас он обслуживает собственный сайт и ещё несколько проектов.

Почему не Traefik

EEPROM Загрузчик для MIK32 (K1948BK018)

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

В данном тексте я написал про то, как я написал загрузчик для российского микроконтроллера MIK32 (K1948BK018).

Это, пожалуй, первый случай, когда столько функционала мне пришлось утрамбовать всего в 8kByte ROM памяти.

Читать далее

Зачем нужен ArgoCD, если можно поставить cron с git pull?

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

Инфраструктура как код, GitOps, автоматизация — все эти слова давно перестали быть модными терминами и стали частью повседневной жизни инженера. Но вместе с этим появляются и вопросы: а всегда ли нужно внедрять тяжелые инструменты? Например, зачем нужен ArgoCD, если можно просто настроить cron с git pull на нужный сервер?

Попробуем разобраться, в чём разница между этими подходами, какие задачи они решают, где их границы применимости и, главное, в каких случаях cron — это «дешево и сердито», а когда он становится «дешево, но больно».

Читать далее

Infrastructure-as-Code — разбираемся в терминах и смотрим на реализацию в Яндексе

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

Привет! Это Николай Гриценко, ведущий технический менеджер в Yandex Infrastructure — команде, которая создаёт и развивает внутреннюю инфраструктуру Яндекса, от сетей и дата‑центров до инфраструктуры разработки. Я занимаюсь направлением Internal Developer Platform (IDP). Вместе с коллегами мы много разрабатывали наши собственные инструменты по оркестрации выкладки кода.

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

Читать далее

Proxy MCAL для Микроконтроллера

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

При продолжительной разработке на одном семействе микроконтроллеров получается так, что приложение намертво привязано к конкретному семейству микроконтроллеров и его SDK, так как напрямую использует HAL от вендора.

Это особенно явно проявляется в таких случаях, когда надо срочно переносить прошивку на другой микроконтроллер.

Получается, что приходится заново писать всю прошивку, всё приложение, драйвера всех ASIC-ов. Драйвер светодиодов, драйвер кнопок, драйвер ASICов c I2C SPI управлением. В общем всё переписывать. Поменяли MCU и пришлось переписать все файлы в репозитории. Нормально так да?

В этом тексте я написал, как можно обойти эту проблему.

Читать далее

Опыт применения Terraform для управления сервером Hyper-V через HTTPS WinRM

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

Какие инструменты приходят вам на ум, когда заходит разговор о создании виртуальных машин под управлением Microsoft Hyper-V? Уверен что ими окажутся - Hyper-V Manager и командлеты PowerShell, т.к. они поставляются в комплекте с ролью Hyper-V и суммарно дают достаточно мощный инструментарий для управления виртуальными машинами и виртуальными сетями.

Однако, в какой-то момент мне стало интересно, а можно ли подружить Hyper-V с таким инструментом как Terraform? Этот вопрос и стал отправной точкой, за которой последовало несколько дней поисков, размышлений, экспериментов и набивания шишек.

В настоящей статье я попробую рассказать о своём опыте работы с Hyper-V провайдером для Terraform, поделиться опытом настройки WinRM для HTTPS, затронуть не самые очевидные механизмы, которые могут быть задействованы при администрировании операционных систем семейства Windows и описать свои ошибки и неудачи. Статья не претендует на то, чтобы стать полноценным руководством к действию, но может дать новые идеи энтузиастам и сэкономить время новичкам.

Читать далее

Лечим проблемы Kubernetes на лету по мере масштабирования проекта: опыт команды VK Cloud

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

Производительность etcd-кластера со множеством объектов — головная боль команд, которые любят и ценят Kubernetes. И вот почему: чаще всего для роста производительности кластера используют горизонтальное скалирование, а это приводит к нагрузке на кластер из-за увеличения времени согласования записи данных. В результате вместо шустрого кластера получается неповоротливый тяжеловес. 

Меня зовут Алексей Волков. Я менеджер продукта Cloud Containers в VK Cloud. В этой статье я расскажу о кейсе одного из наших клиентов: с каким запросом он пришел и с какими сложностями сталкивался, как мы провели тюнинг etcd-кластера и какие настройки нужны, чтобы повысить производительность Kubernetes. 

Читать далее

SRE в инженерии данных: профессия и ее перспективы

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

Всем привет! Меня зовут Александр Андреев, я старший SRE дата-инженер в компании "Криптонит". Сегодня я хочу рассказать о необычной, но набирающей обороты роли в области обработки данных - SRE Data Engineer: кто это такой, чем занимается, как им стать, куда развиваться и какие перспективы у этой профессии.

Читать далее

Kafka: ребалансировка изнутри

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

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

Хотя информации о ребалансировке Kafka достаточно, она часто либо слишком разрозненная и техническая, либо наоборот — поверхностная и без акцента на важные детали. Я собрал для вас самое важное и объясню это простым и понятным языком.

Читать далее

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

Живая миграция, мониторинг и безопасность: дайджест обновлений Deckhouse Virtualization Platform 0.15–0.18

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

С начала 2025 года мы выпустили четыре крупных обновления DVP, внедрили более 72 изменений и добавили более 32 новых фич и улучшений. В этом дайджесте — самые важные изменения: живая миграция без простоев, расширенные политики безопасности, новый аудит, автоматизация работы с ВМ и многое другое.

Читать далее

To Docker or not to Docker? Вот в чём JupyterLab

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

Локальная работа в Jupyter-ноутбуках – неотъемлемая часть исследований и экспериментов нашего ML-отдела. Но из какой среды эти ноутбуки лучше запускать?
Мы пользуемся двумя вариантами: запуском из Docker-контейнера и запуском в изолированном локальном poetry-окружении.

В статье соберем минимальный сетап для работы с Jupyter-ноутбуками и ссылки на полезные ресурсы для ознакомления.

Читать далее

DHCP-сервер облачной сети MWS. Как мы одинаковые адреса на разные виртуалки раздаём

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

Привет! При построении overlay-сети MWS Cloud Platform мы столкнулись с задачей: автоматически раздавать сетевые настройки виртуальным машинам на основе VRF — с полной изоляцией и без конфликтов.

Меня зовут Никита Усатов, я занимаюсь разработкой сервисов облачной сети MWS Cloud Platform. В этой статье расскажу, как устроена наша сеть, зачем понадобился DHCP-сервер с поддержкой VRF, как через VPP реализован DHCP Proxy с Option 82, и какие изменения мы внесли в CoreDHCP. Покажу, как передаются настройки от Control Plane к Data Plane, и как CoreDHCP отслеживает конфигурации без перезапуска. В конце — реальные кейсы отладки и мониторинга.

Читать далее

tenv — универсальный менеджер версий для Terraform-стека

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

Когда в 2023 году появился OpenTofu, его моментально подхватило сообщество: идея полностью открытой альтернативы Terraform на тот момент выглядела свежо и многообещающе. Многие захотели попробовать его в деле — но очень быстро столкнулись с типичной проблемой: а как безболезненно переключаться между OpenTofu и Terraform? 

На первый взгляд всё казалось простым: установи два бинарника через любой пакетный менеджер — и готово. Но уже через пару месяцев активного развития OpenTofu, когда компании начали массово делать внутренние POC по миграции, стало очевидно: различий между OpenTofu и Terraform с каждой версией становится всё больше (часть из них хорошо видна, например, на cani.tf) и управлять разными версиями разных инструментов становиться все сложнее.

Именно тогда мы увидели нишу: менеджер версий, заточенный не просто под Terraform, а под весь Terraform-стек, включая OpenTofu.

Читать далее

Миграция с legacy: как werf упростил переезд на Kubernetes и ускорил CI/CD

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

Статья о том, как werf помог упростить переход на Kubernetes, ускорить CI/CD и решить проблемы с кэшированием. Автор поделился опытом внедрения, первыми шагами и преимуществами, которые получила его команда.

Читать далее

Как построить инфраструктуру, которая не подведет: главное с митапа по отказоустойчивости

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

23 апреля на OMNI Infrastructure Meetup эксперты из Авито, Магнит OMNI, Лаборатории Касперского и Cloud.ru обсудили, как создавать системы, устойчивые к любым сбоям. Рассказываем о самых важных инсайтах.

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

Делимся видео и презентациями докладов.

Читать далее

От контейнеров до кода: инструменты для поиска уязвимостей на все случаи

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

Всем привет

Меня зовут Сергей. Работаю в небольшой компании. Помимо прочих обязанностей, также анализирую код и docker-образы, написанные нашими разработчиками, на предмет различных уязвимостей. В этой статье хотел бы поделиться нашими подходами и open-source инструментами, которыми я использую в своей работе.

Быть может кто-то найдет что-то полезное или новое для себя.

Найти что-то полезное или новое для себя

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