Представлен (https://github.com/vstconsulting/polemarch/releases/tag/0.0.8) релиз 0.0.8 (https://github.com/vstconsulting/polemarch/Polemarch), web-интерфейса для оркестровки серверной инфраструктуры на базе Ansible. Данный релиз является уже beta-версией и предзнаменует выпуск первого стабильного релиза 0.1.0.
Код проекта написан на языках Python и Javascript с использованием фреймворков Django и Celery. Проект распространяется под лицензией AGPL.
Основные возможности Polemarch:
- Разделение задач на проекты:
Возможность разделять задачи на проекты с различным набором конфигурационных файлов внутри и собственным набором модулей и плейбуков.
- Загрузка репозитория Ansible с плейбуками, настройками и другими файлами из различных хранилищ:
На данный момент поддерживаются 3 вида хранилищ репозиториев проекта: git, tar и пустой проект для локальных изменений.
- Импорт данных инвентаризации из файла:
Для простоты перехода от cli к gui был реализован механизм импорта inventory-файлов. Теперь достаточно только указать файл и заполнить поля ключей авторизации.
- Запуск задач по расписанию или с интервалом:
Встроенный масштабируемый crontab-scheduler и конструктор расписания в GUI.
- Запуск ansible-модулей или плейбуков из проекта:
Удобный интерфейс для запуска модулей и playbook внутри проекта содержит в себе так же подсказки по каждому параметру запуска.
- Создание, экспорт и импорт шаблонов операций:
Для удобства community и внешних интеграций реализован механизм загрузки/выгрузки шаблонов запуска модулей и playbook`ов.
- История запусков операций с подробным выводом и подсветкой текста из привычной cli:
Каждый запуск ansible сохраняет лог операций с подробным выводом, который так же содержит в себе подсветку аналогичную стандартному выводу в консоль. Однако для периодических задач можно установить флаг, который направит весь вывод в лог worker`а. Историю операций можно просмотреть как по конкретному проекту, так и по инвенторию.
- Горизонтальное масштабирование (с использованием сервера БД и RabbitMQ):
Пакет "из коробки" не требует каких-либо настроек для минимального запуска, однако для рабочего окружения рекомендуется настроить работу в связке с MySQL, RabbitMQ и Memcache. Все настройки описаны в документации и интуитивно доступны для понимания.
- Гибкая настройка веб-сервера (uWSGI):
Переход на uwsgi в релизе 0.0.8 позволил избавиться от ошибок при установке и расширил возможности конфигурирования веб-сервера. В дальнейших релизах планируется реализация All_in_One сервиса для удобства развёртывания небольших конфигураций.
- Простой запуск (установка из rpm/deb-пакета):
Пакет распространяется в виде rpm/deb-пакетов, однако поддерживает и ручную установку. Установка системным пакетом не требует какого-либо конфигурирования для минимального запуска. В отличии от AWX (открытая реализация Ansible Tower (руководство по установке (https://github.com/ansible/awx/blob/devel/INSTALL.md)) или Semaphore (руководство по установке (https://github.com/ansible-semaphore/semaphore/wiki/Installa...)) пакет polemarch имеет ниже порог вхождения, требует меньше "тяжёлых" зависимостей (например, docker или PostgreSQL) и большую стабильность в установке и работе после перехода на uwsgi.
- Адаптивный дизайн интерфейса:
Интерфейс был разработан так, чтобы им было достаточно удобно пользоваться даже с мобильного телефона.
URL: https://github.com/vstconsulting/polemarch/releases/tag/0.0.8
Новость: http://www.opennet.ru/opennews/art.shtml?num=47276