Заметки из Зазеркалья

19.03.2018

1С:Центр администрирования. Администрирование – это просто

Данная статья является анонсом новой функциональности.
Не рекомендуется использовать содержание данной статьи для освоения новой функциональности.
Полное описание новой функциональности будет приведено в документации к соответствующей версии.
Полный список изменений в новой версии приводится в файле v8Update.htm.

Мы готовим к выпуску beta-версию нового прикладного решения. Рабочее название продукта 1С:Центр администрирования (недавно мы называли его «Библиотека автоматизации», но нам разонравилось :-).

Для кого и для чего предназначен продукт

Если вы занимаетесь задачами администрирования, эксплуатации, сопровождения, вы знаете насколько трудоемким и затратным может стать процесс, например, обновления на новый релиз конфигурации или платформы 1С:Предприятие. Если в вашем контуре количество машин и информационных баз можно сосчитать по пальцам одной руки, то такая задача может быть успешно и в срок выполнена администратором вручную. А если в вашем контуре 100 или 1000 машин?

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

Целевая аудитория:

  • КОРП внедрения,
  • облачные решения,
  • крупный контур с большим количеством баз, серверов,
  • крупная распределенная информационная база (например, розничная сеть),
  • централизованный процесс эксплуатации большого числа мелких клиентов (вне облака).

Преимущества продукта

  • Универсальное решение для автоматизации любых задач администрирования. Да, вам больше не придется для каждого нового проекта писать автоматизацию «на коленке»;
  • Набор сценариев может расширяться администратором. Мы постарались предусмотреть и подготовить набор основных сценариев для использования «из коробки», но если ваши сценарии очень специфичны, вы легко сможете адаптировать продукт под них;
  • Возможность создания сложных сценариев из более простых (да, там есть конструктор!);
  • Простота встраивания в имеющийся IT-ландшафт. 1С:Центр администрирования можно использовать как самостоятельную конфигурацию или встроить как подсистему в уже существующую.
  • Единое рабочее место и единая точка контроля. Системы любого объема может администрировать один (!) человек;
  • Количество автоматизируемых единиц оборудования не имеет значения.

Концепция и возможности продукта

1С:Центр администрирования работает с командами и скомпонованными из них сценариями. Основное правило – сценарий переводит систему в новое состояние (state).

Команда – это максимально простое, но при этом самодостаточное действие, которое можно произвести над системой для перевода ее из состояния "1" в состояние "2" (запуск службы, обновление конфигурации информационной базы, изменение настройки кластера и т.п.). Команда фактически является простым сценарием автоматизации.

Сценарий автоматизации – это последовательность команд автоматизации выстроенных в порядке, необходимом для перевода системы из состояния "1" в состояние "2".

01.png

Основные сценарии автоматизации в виде скриптов и поставляемых данных будут доступны в составе 1С:Центр администрирования «из коробки». Также пользователям решения предоставляется возможность расширять как состав команд, так и создавать в режиме конструктора новые или менять существующие сценарии.

С помощью 1С:Центр администрирования в планируемой к выпуску версии будет предоставлена возможность централизованного выполнения следующих сценариев:

  • скачивание обновлений прикладных конфигураций, технологической платформы 1С:Предприятие 8, PostgreSQL,
  • установка/обновление/удаление технологической платформы 1С:Предприятие 8,
  • обновление прикладных решений (конфигураций) на новые релизы,
  • удаленная настройка кластера серверов 1С:Предприятия 8,
  • настройка программных компонент через централизованное развертывание файлов настроек,
  • выполнение таких типовых задач администрирования как:
    • перезапуск служб,
    • сбор, копирование, архивирование технологических данных (журналы, счетчики и т.д.),
  • выполнение внешних обработок.

Со временем мы будем расширять набор поставляемых сценариев.

Архитектура решения

1С:Центр администрирования – это многокомпонентный продукт. Логически он состоит из управляющей конфигурации (рабочее место администратора) и исполняющей части (те программные компоненты, которые устанавливаются на машины автоматизируемого контура).

02.png

Управляющая конфигурация разработана на 1С:Предприятии и выполняет следующие функции:

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

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

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

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

03.png

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

04.png

На основании принятой на вход команды Агент запускает необходимый для ее выполнения скрипт.

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

Предвкушая возможные вопросы вида " - Теперь нам еще Python и YAML учить?", напоминаем: знание этих языков вам потребуется только в том случае, если поставляемый с 1С:Центр администрирования набор скриптов вас не будет устраивать, и вы решите написать собственные.

Некоторые интересные возможности управляющей конфигурации

Базовый функционал - создание сценариев автоматизации из существующих шаблонов.

05.png

Доступно конструирование новых сценариев.

06.png

Параметры команд можно заполнять из данных конфигурации, в которую встроен 1С:Центр администрирования.

07.png

Есть возможность планирования и контроля задач автоматизации с использованием календаря...

08.png

… в том числе с возможностью создания задач с регулярным запуском.

09.png

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

10.png

Планируемый комплект поставки beta-версии

  • Конфигурация «1С:Центр администрирования»;
  • Расширение конфигурации «1С: Центр администрирования» (функционально идентичное конфигурации);
  • Агент;
  • Набор скриптов и конфигурационных файлов;
  • Поставляемые данные: набор сценариев автоматизации, готовых к запуску «из коробки»;
  • Комплект документации.

Что в планах к выпуску «финалки»

В планах на развитие у нас много задумок, которые мы планируем вносить в продукт уже после выпуска beta-версии:

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

Теги: Администрирование 

Рассказать друзьям: