«1С» анонсировала новый инструмент для автоматизации операций – 1С:Центр администрирования. Для описания скриптов автоматизации был выбран Python.
Как в своем блоге пишет фирма «1С», администрирование теперь станет простым. Инструмент пока находится в стадии beta-тестирования. Основное предназначение продукта – автоматизация рутинных операций, связанных с обслуживанием инфраструктуры 1С. «Из коробки» поставляются готовые сценарии автоматизации, но разработчик прикладного решения может разработать собственные. Вот список сценариев, поставляемый в комплекте:
-
скачивание обновлений прикладных конфигураций, технологической платформы 1С:Предприятие 8, PostgreSQL;
-
установка/обновление/удаление технологической платформы 1С:Предприятие 8;
-
обновление прикладных решений (конфигураций) на новые релизы;
-
удаленная настройка кластера серверов 1С:Предприятия 8;
-
настройка программных компонентов через централизованное развертывание файлов настроек.
Выполнение таких типовых задач администрирования как:
-
перезапуск служб;
-
сбор, копирование, архивирование технологических данных (журналы, счетчики и т.д.);
-
выполнение внешних обработок.
Как пишет «1С», состав сценариев будет пополняться.
Архитектура решения
Судя по описанию, решение построено по концепции сервер-клиент. Клиентская часть – агенты, установленные на компьютере, по http протоколу забирают инструкции и скрипты для выполнения с сервера и сообщают ему результат выполнения.
Что интересно: серверная часть, управляющая конфигурация – это стандартная 1С конфигурация, таким образом возможна ее доработка под конкретные нужды.
К большой радости 1С-разработчиков, увлекающихся языком программирования Python: внезапно, в качестве языка автоматизации в сценариях используется именно этот язык. Да, это не опечатка :) поддерживается только Python, без языка 1С.
Некоторые подробности об управляющей конфигурации
Базовый функционал – создание сценариев автоматизации из существующих шаблонов.
Также доступен конструктор новых сценариев автоматизации.
Сценарии могут быть запущены по расписанию.
Но и это еще не все
Так как это не финальная версия продукта, в ней реализованы не все запланированные возможности. А в планах у «1С» следующее:
-
версионирование сценариев;
-
возможность использовать в конструкторе условия и циклы;
-
работа с артефактами и расширение инструментария по анализу результатов выполнения сценариев. Касаемо артефактов: тут, очевидно, «привет» teamcity и подобным системам continuous Integration. Для тех, кто не работал с ними, уточню: в процессе запуска задания могут появляться какие-либо данные. В случае с 1С это может быть файл cf или данные из журнала регистрации. Именно эти данные, получившиеся в результате выполнения, и называются артефактами;
-
удаленный запуск сценариев (по внешнему событию).
Эра DevOps в 1С
1С:Центр администрирования – довольно интересный инструмент, цель которого очевидна: предоставить возможность вести разработку на 1С по методологии DevOps. Само собой, это не серебряная пуля, установка которой решит все проблемы в ваших процессах разработки. Но это инструмент, с помощью которого можно вывести разработку решений на новый уровень. В ручных операциях все хорошо, когда есть исполнитель, точно помнящий их последовательность.
Как только происходит замена этого исполнителя, начинаются проблемы, связанные с неточностью документации, увеличением времени на уточнение шагов для выполнения этого действия и сопутствующие проблемы.
Автоматические методы имеют свои недостатки, но они лишены человеческого фактора и выполняют те же действия за меньшее время. Плюс это способ разгрузить разработчика от монотонной работы и предоставить больше времени для разработки.