Платформа Imagenarium: вся инфраструктура как код — в одном контейнере

Логотип компании
Платформа Imagenarium: вся инфраструктура как код — в одном контейнере
Серьезный аргумент за то, чтобы использовать российскую платформу Imagenarium вместо сложных решений на базе Kubernetes, — она сама представляет собой простой контейнер, что значительно упрощает взаимодействие с ней.

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

В зависимости от инфраструктуры и ее масштабов разработчикам приходится выбирать между очень простыми решениями, которые не предоставляют нужный функционал, и очень сложными и дорогостоящими. Среди разработчиков сформировался даже некий стереотип о контейнерных платформах: «Если ваша инфраструктура выросла до нескольких десятков серверов или виртуальных машин, то для управления процессами деплоя ПО на них вам необходимо внедрить платформенное решение на базе Kubernetes».

В 2022 году тренд на развитие российский программных продуктов приобрел еще большие масштабы, а на рынке появилось множество новых решений. Увидев пресс-релиз о новой контейнерной платформе на российском рынке, я ожидал увидеть и новый продукт. Но, как оказалось, платформа под названием Imagenarium существует с 2017 года, поэтому не является продуктом “новой волны” импортозамещения, имеет свою историю и предлагает интересный функционал для разработчиков.

Всё свое ношу с собой

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

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

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

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

Так, Imagenarium реализует такие традиционные для контейнеров сервисы, как мониторинг и распределение нагрузки, работа с хранилищами и DRBD, автоматическое развертывание и откаты на предыдущие версии, самопроверка, автоматизированное распределение нагрузки и наличие API, обеспечивающего доступ ко всем функциям платформы.

Платформа Imagenarium: вся инфраструктура как код — в одном контейнере. Рис. 1

Богатый внутренний мир

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

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

Принципиальное отличие Imagenarium от классических средств оперирования контейнерами на платформе Kubernetes в том, что сама она размещается в одном-единственном контейнере. При этом шаблоны развертывания задач в Imagenarium просты и понятны, что позволяет специалистам заказчика быстро осваивать их — и сразу же переходить к деплойменту собственных решений. Развитый же API с детальным и внятным интерфейсом, о котором уже упоминалось, дает возможность интегрировать Imagenarium в любые сценарии автоматизации CI/CD. Платформа имеет гибкую политику лицензирования, причем доступ к ограниченной версии Imagenarium Community Edition предоставляется бесплатно.

Сделай сам (в контейнере)

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

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

Предусмотрена также централизация работы платформы, развернутой на различных системах внутри контура заказчика, за счет интеграции с корпоративным порталом посредством SSO. Дополнительно возможно также использование LDAP, если по каким-то причинам это удобнее. Без приобретения каких бы то ни было лицензий Imagenarium работает под ОС семейства Windows, на основе ядра Linux (включая Астра Linux и RED OC), под OSX и FreeBSD; поддерживаются процессоры архитектуры ARM 8 и проприетарные ЦП разработки Apple Silicon в составе новейших MacBook.

Самое же значительное преимущество Imagenarium с точки зрения разработчика — создает ли тот ПО для внутренних или внешних заказчиков — в том, что данная платформа обеспечит сохранение полной инфраструктуры среды разработки, включая десятки сервисов, несколько СУБД, всевозможные очереди и сервисные шины в виде кода, полностью соответствуя концепции IaC (Infrastructure as Code). Слепок этой конфигурация будет сбережен в чрезвычайно удобном формате Git, знакомом сегодня практически любому программисту, и в ходе установки контейнера в среде заказчика развернут именно в первоначальном виде, оптимальном для исполнения рабочего кода, — насколько бы сильно итоговое окружение не отличалось от исходного.

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

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

Выводы

Российский продукт, который имеет уникальный для рынка функционал, свое позиционирование и примеры реальных внедрений – это повод порадоваться, что российские компании действительно делают нужные продукты, а не всецело копируют западные решения. Кроме того, в пользу этого решения говорит не только его функционал, но и опыт внедрений с 2017 года. За 5 лет работы разработчики платформы могли накопить достаточную экспертизу и отладить работу своего продукта.

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

Опубликовано 24.01.2023

Об авторах
Похожие статьи