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

На самом деле существует несколько вариантов автоматизации. Мы коротко рассмотрим каждый из них, со всеми достоинствами и недостатками.

Пакетные файлы

Вам всем, несомненно, хорошо знаком этот старый способ автоматизации задач. Простой, но весьма полезный текстовый файл, который содержит разнообразные команды для системы, к которой мы подключаемся. В преды­дущих версиях SharePoint (2003, 2007 и даже 2010), когда мы использовали PSConfig вместо PowerShell, это было лучшее средство. Изучение команд stsadm и возможностей их применения с последующим созданием задач обслуживания или решения проблем значительно облегчает работу администратора (экран 1).

 

Использование командного файла
Экран 1. Использование командного файла

Этот подход будет еще эффективнее, если объединить пакетные файлы с инструментами планирования, такими как Scheduled Tasks («Расписание заданий») в Windows, или каким-нибудь другим подходом. Единственное ограничение — охват управляемых объектов. Функциональность stsadm недостаточна для администраторов, да и подготовка пакетных файлов — не самая простая задача.

Сценарии PowerShell

Добро пожаловать в новый мир, в котором, вероятно, вы найдете более удачный подход к автоматизации. За последние несколько лет PowerShell реализован в различных продуктах Microsoft. Конечно, возможности первой версии для SharePoint были ограничены, но со временем функциональность была расширена. PowerShell проектировался специально для администрирования таких систем, как SharePoint (экран 2).

 

Администрирование с помощью PowerShell
Экран 2. Администрирование с помощью PowerShell

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

Функции Azure

О функциях Azure и их использовании вместе с SharePoint написано немало. Однако возможности функций Azure выходят далеко за рамки простого использования с SharePoint. Azure Functions — служба, в которой можно публиковать код настраиваемого прикладного интерфейса API. Azure Functions поддерживает специальные меры безопасности и маршрутизацию запросов. Мы можем определять триггеры, на которые реагирует конкретная функция, например веб-запрос или сообщение очереди (экран 3).

 

Использование функций Azure
Экран 3. Использование функций Azure

При необходимости можно создать собственный код API, который взаимодействует с SharePoint локально и в «облаке». Впоследствии к нему можно обратиться с помощью стандартных запросов HTTP для выполнения административных действий и других задач. Это означает, что достаточно знать HTTP URL-адрес, передать необходимые данные в качестве параметров, и код будет выполнен. Конечно, прежде чем использовать код, его нужно создать. При необходимости его можно объединить с запросами PowerShell, сформированными как назначенные задания в Windows.

Решения на основе пользовательского кода

Они похожи на функции Azure, хотя создаются нами и доступны внутри нашей компании. Пользовательское решение может предназначаться для любых действий. Подключаясь к основным библиотекам DLL, используемым SharePoint локально и в «облаке», мы можем добиться того, чтобы пользовательское приложение делало в точности то, что нам требуется (экран 4).

 

Использование кода собственной разработки
Экран 4. Использование кода собственной разработки

В различных источниках в Интернете есть много утилит, созданных для автоматизации и администрирования SharePoint. Однако не забывайте: кто-то должен написать код, а впоследствии вносить в него необходимые изменения и отслеживать версии.

Сторонние инструменты

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

Как правило, в инструменты такого типа встроены процессы выполнения по расписанию, благодаря которым упрощается управление как локально, так и в «облаке».

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