Canonical распространила «чары» Juju на Kubernetes

17 ноябрь, 2020 - 10:25

Canonical распространила «чары» Juju на Kubernetes

Фирма Canonical портировала для Kubernetes свою Charm Open Operator Collection, основанную на DevOps-инструменте Juju крупнейшую коллекцию операторов жизненного цикла приложений. Таким образом, коллекция, находящаяся в публичном репозитории Charmhub.io, в дополнение к облачным и традиционным приложениям для Windows и Linux теперь поддерживает контейнерные приложения Kubernetes.

От таких популярных DevOps-программ, как Ansible, Puppet, Chef или Salt, Juju отличается тем, что оперирует уровнем выше, управляя не виртуальными машинами, а сервисами. Для этого инструмент использует «чары» — charms — повторно применяемые выражения лучших практик DevOps для развёртывания, для установки исправлений, апгрейда и даже для изменения архитектуры.

Как заявил исполнительный директор и учредитель Canonical, Марк Шаттлворт (Mark Shuttleworth), другие «DevOps-методы управления конфигурацией не работают с контейнерами. Вы не можете перейти к контейнеру и настроить его. С Juju Charms вы получите пакет многократно используемого операционного кода». И далее, «хотя количество микросервисов стремительно растет вместе с количеством строк кода, необходимых для интеграции, Juju Charms по-прежнему берёт на себя интеграцию между сервисами и приложениями». Результат этого — упрощение установки и интеграции многочисленных приложений и сервисов.

Операторы Charmhub имеют декларативные точки для многоразовой автоматической интеграции между операторами от различных поставщиков. В каждый оператор встроен код для управления динамической интеграцией во время развёртывания, с применением передовых практик безопасности и доступности на протяжении всего процесса.

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

Хотя для написания операторов подойдёт любой язык, предпочтительным для Juju считается Python. Charmhub предоставляет разработчикам на Python средства совместного использования кода и сотрудничества для повторного использования в операторах библиотек и определений интерфейсов. Python Operator Framework осуществляет низкоуровневое управление жизненным циклом и интеграцией.