InfraOps: эффективные практики на стыке системной интеграции, DevOps и SRE

    Относительно недавно в IT-среде появилось понятие DevOps, а вслед за ним - DevSecOps, CloudOps и InfraOps. В этой статье мы поговорим о последнем. InfraOps - это новая IT практика, которая сегодня максимально актуальна и эффективна для управления любыми ИТ-инфраструктурами, т.к объединяет в себе некоторые принципы DevOps методологии, так и общие принципы системной интеграции. В этой статье мы попытаемся максимально подробно и с примерами раскрыть, чем InfraOps отличается от DevOps, а также SRE и о том, почему с нашей точки зрения именно сейчас она так актуальна в России.

    Классическая системная интеграция и классический DevOps

    Системная интеграция в IT — это техническое увязывание всех компонентов, подсистем инфраструктуры предприятия и программных решений различных вендоров в единую корпоративную информационную систему.

    DevOps (Development Operations) — это практика оптимизации взаимодействия между разработчиками, командами управления продуктовой средой, специалистами по эксплуатации и обеспечению качества. Этот подход позволяет быстро выводить на рынок программные продукты (приложения, сервисы), чаще их обновлять и безопаснее исправлять ошибки деплоя, получая оперативную обратную связь от пользователей. Оптимизация происходит через интеграцию и инструментальную автоматизацию процессов вывода продукта на рынок.

    DevOps-подход
    позволяет эффективно автоматизировать процессы сборки и тестирования программного кода перед его развертыванием на серверах. Для этого DevOps-инженеры используют такие популярные в отрасли инструменты, как Jenkins, Travis CI и CircleCI.

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

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

    DevOps-специалисты интегрируют приложения друг с другом и с инфраструктурой, используя инструменты Istio, Consul и Zookeeper. Это позволяет создавать отказоустойчивые и масштабируемые системы.

    DevOps распространяется и на управление релизами продуктов, включая планирование релизов, сборку и тестирование кода, развёртывание на серверах и мониторинг производительности.

    Для управления репозиториями и контроля версий применяют инструменты Git, GitHub и GitLab.

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

    Что такое InfraOps и чем отличается от DevOps

    Практику InfraOps, в отличие от DevOps, применяют не к разработке, а к IT-инфраструктуре.

    Термин InfraOps происходит от Infrastructure Operations — «инфраструктурные операции». К операциям с инфраструктурой относятся установка, настройка и обслуживание оборудования, программного обеспечения и сетевых компонентов, которые лежат в основе IT-инфраструктуры компании. Это уровень, состоящий из управления физической и виртуальной средой, которая может быть и облачной.

    InfraOps облегчает обслуживание большой IT-инфраструктуры, обеспечивает её надёжность и высокую доступность, оптимизирует её. Управление IT-инфраструктурой происходит с использованием современных, но уже проверенных и хорошо зарекомендовавших себя инструментов автоматизации, позволяющих минимизировать влияние человеческого фактора: Terraform, Packer, CloudFormation и других. Наряду с «ручными» методами, эти инструменты позволяют управлять и производить более точную и безопасную настройку и мониторинг серверов, хранилищ данных, сетевых устройств.

    Задачи, входящие в комплекс инфраструктурных операций

    1. Управление серверами. Включает в себя развёртывание, масштабирование и обслуживание серверов, настройку аппаратного обеспечения и операционных систем.
    2. Сетевое управление. Настройка, мониторинги обслуживание сетевой инфраструктуры, включая маршрутизаторы, коммутаторы, брандмауэры и прокси-серверы.
    3. Облачные ресурсы. Управление мощностями для облачных вычислений: виртуальными машинами, контейнерами, хранилищами данных и другими ресурсами, предоставляемыми облачными провайдерами.
    4. Мониторинг и отладка. Постоянный мониторинг инфраструктуры для выявления производительности, проблем и нарушений, а также оперативное реагирование на них.
    5. Резервное копирование и восстановление. Создание резервных копий данных и настройка механизмов восстановления после сбоев.
    6. Автоматизация. Использование инструментов и скриптов для автоматизирования рутинных задач. Помогает уменьшить человеческий фактор и повысить эффективность.
    7. Безопасность. Применение мер по обеспечению безопасности инфраструктуры, включая защиту от вредоносных программ, уязвимостей и несанкционированного доступа.
    8. Управление данными. Обеспечение доступности, целостности и конфиденциальности данных, включая управление базами данных и хранилищами.
    9. Соблюдение стандартов и нормативов. Убедиться что инфраструктура соответствует требованиям законодательства, регуляторных органов и внутренних политик организации.

    Кому подходит InfraOps и почему

    InfraOps позволит автоматизировать и обезопасить инфраструктуру с использованием лучших отраслевых практик в частных и общедоступных облачных средах (Iac, CI/CD и т.д), благодаря чему выпускать IT-продукты быстрее и качественней.

    Наиболее эффективно этот метод управления IT-инфраструктурой проявляет себя в компаниях уровня enterprise — крупных предприятий, сетевых компаний и госкорпораций — и в высоконагруженных проектах (highload).

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

    Также InfraOps идеально подходит организациям, которым необходимо срочное импортозамещение отдельных или всех компонентов IT-системы.

    Импортозамещение IT-инфраструктуры: почему сейчас важны InfraOps-практики?

    Сегодня основной спрос на импортозамещение возрос преимущественно у крупных государственных структур, которым нужно достаточно быстро (по требованию Минцифры — до 1.01.2025) внедрить огромные объёмы отечественного системного ПО. С учётом того, что импортозамещение — это сложный, крайне ёмкий процесс, разворачивать новую инфраструктуру на фоне управления старой удобнее и безопаснее с использованием InfraOps-практик. Они позволяют максимально автоматизировать этот процесс, благодаря чему упростить, ускорить и стандартизировать переход на новую IT-инфраструктуру. Проще говоря, написанный код быстро разворачивает инфраструктуру с тонко настроенным мониторингом при минимальном участии человека.

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

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

    Отечественные вендоры уже активно внедряют DevOps в свои разработки: они пользуются системами автоматического управления конфигурациями и другими системами автоматизации. Инженер Git in Sky при импортозамещении IT-инфраструктуры заказчиков также применяют эти практики, в частности декларативную настройку вычислительной инфраструктуры (описание кодом на Ansible), чтобы не редактировать серверные конфигурации вручную.
    Также мы применяем другие технические и организационные InfraOps-подходы:

    • проводим удалённый аудит имеющейся инфраструктуры (выявляем уязвимые места и строим план изменений);
    • профессионально оцениваем риски (строим модель угроз);
    • выстраиваем централизованную систему превентивного мониторинга и резервного копирования;
    • обеспечиваем переход на отказоустойчивую СУБД;
    • организовываем и настраиваем сбор и хранение логов;
    • производим миграцию в облако (строим облачную IT-инфраструктуру);
    • консультируем по вопросам эксплуатации серверного БПО, ПО виртуализации, безопасности.
    По ссылкам можно почитать подробнее о том, что входит в услугу решения InfraOps и организации антисанкционной инфраструктуры, а также о том, что мешает многим компаниям и государственным ведомствам переходить на российский софт легко и быстро.

    Эффективность InfraOps-подхода: кейс

    Недавно мы завершили проект по оптимизации работы 1С-приложений и сервиса крупной компании. Инженеры Git in Sky работали на стыке системной интеграции и DevOps — то есть того, что в компании называют InfraOps. Услуга была оказана на основе соглашения о неразглашении (NDA), поэтому мы не упоминаем название компании-заказчика в этом кейсе.

    О заказчике

    У компании имеется большой интернет-магазин автозапчастей для грузовиков. В штате около 200 сотрудников.

    IT-инфраструктура компании:

    • 4-5 физических серверов (гипервизоров) расположены в ЦОДе Public Cloud, имеется также несколько десятков виртуальных машин.

    • Программное обеспечение состоит из продуктов семейства 1C:Предприятие 8.x — 1C:Бухгалтерия, 1С:Торговля, 1С:Виртуальный склад и подобные.

    • Интернет-магазин на момент обращения клиента имел нагрузку около 15 тысяч уникальных посетителей в день, 40-50 тысяч просмотров.

    • Сайт располагается на ASP.NET, СУБД — MS SQL, в качестве веб-сервера — IIS, размер БД — около 200 ГБ, рост базы данных более-менее стабильный, основан на расширении ассортимента и контента по ассортименту.

    Проблема заказчика
    заключалась в неудовлетворительном пользовательском опыте. 1С-приложения работали медленно, скорость работы интернет-магазина существенно снижалась в периоды высоких нагрузок, происходили сбои в работе сотрудников, простои персонала. Также происходили задержки в бизнес-процессах: выставления счетов была низкая, были заметны пробелы в безопасности, случалась остановка работы кассовых аппаратов («зависания»). Более того, происходила частая потеря данных, например, однажды в результате случайного удаления из базы компания потеряла 7000 документов.

    Текущий подрядчик-интегратор 1С-решений не смог помочь и порекомендовал компании оптимизировать архитектуру.

    Компании-заказчику требовалось:

    • улучшить производительность работы 1С-приложений;

    • перенести инфраструктуру на собственные мощности, размещённые в новом центре обработки данных;

    • наладить администрирование web-серверов и 1С-серверов.

    Решение Git in Sky

    На базе работающей инфраструктуры заказчика наши InfraOps-инженеры реализовали следующие решения:

    • Выстроили тонкий мониторинг 1С-процессов изнутри через Prometheus.
    • Выполнили профилирование кода 1С. Отметим, что обычно анализ кода выполняют не DevOps- или SRE-инженеры, не системные интеграторы, а программисты на стороне заказчика или 1С-френчайзи. Но с учётом того, что у наших инженеров есть такие компетенции, они могут хорошо выполнять профилирование кода 1С и иногда берут на себя эту работу.
    • Выстроили новую модульную архитектуру решения, оптимизировали производительность 1С-приложений.
    • Помогли с переездом из облака на физический сервер.
    • Устранили проблемы информационной безопасности (ИБ).
    • Организовали процесс администрирования компонентов инфраструктуры 24/7.

    Итоги проекта по оптимизации инфраструктуры заказчика

    • выстроенный мониторинг позволил видеть процессы 1С-сервера: количество пользователей в базе, время нагрузки на сервер;

    • производительность 1С-инфраструктуры увеличилась на 70%;

    • простои персонала сократились на 90%;

    • доступность сервисов достигла значения 99.9;

    • количество ИБ-уязвимостей снизилось почти до 0.

    Вместо заключения

    Сегодня InfraOps при тесном взаимодействии с системной интеграцией, DevOps и SRE (Site Reliability Engineering — обеспечение бесперебойной работы высоконагруженных сервисов) играет ключевую роль в обеспечении стабильности и надёжности IT-инфраструктуры. Это происходит за счёт грамотной настройки инфраструктуры и своевременного, высокопрофессионального реагирования на инциденты. Рассмотренные выше подходы позволяют бизнесу функционировать более эффективно и быстрее достигать своих целей, не терять данные, не подвергать риску репутацию и, соответственно, не терять доходы.