Может ли Azure запускать локальный сценарий по расписанию? - PullRequest
0 голосов
/ 30 апреля 2019

У нас есть много заданий, которые должны выполняться на наших локальных компьютерах, но мы хотим иметь возможность запускать и управлять этими заданиями из облака.Это не задания типа администратора компьютера.Они больше относятся к бизнес-задачам.

Мы серьезно подумали о том, чтобы сделать это несколькими разными способами:

  1. Приложения логики / Microsoft Flow могут создатьфайл в папке на локальном компьютере с использованием локального шлюза данных .Затем мы могли бы использовать этот файл в качестве триггера для локального скрипта, который постоянно работает и следит за этой папкой.Однако это кажется неуклюжим, поскольку приложения логики не запускают скрипт напрямую, а только через простое событие создания файла.Этот подход также потребует от нас использовать единую комбинацию имени пользователя и пароля в приложениях логики и не забывать обновлять этот пароль.
  2. Сетка событий Azure может теперь перенаправляет события из Azure в гибридное соединение, которое передает это событие на определенный порт на локальном компьютере.Теоретически у нас может быть сценарий PowerShell , контролирующий этот порт и обрабатывающий входящее событие.Мне кажется, это лучший способ запуска сценария на локальном компьютере из облака, однако я не уверен, будет ли он работать так, как я ожидаю.

У нас также естьМы рассмотрели несколько других способов использования Azure для такого рода вещей:

  1. Azure Automation Гибридные модули Runbook могут запускать задания на месте.Однако этот сервис, по-видимому, полезен в основном для административных задач, а не для повседневных процессов.
  2. Azure DevOps может запускать сценарии для запуска на локальном компьютере с использованием Self-Hosted Agents .Однако я не думаю, что DevOps Azure предназначен для запуска производственного процесса по заданному графику.Он предназначен только для конвейеров разработки программного обеспечения.
  3. Фабрика данных Azure Среда выполнения интеграции позволяет перемещать данные с локального SQL Server в облако.Это кажется идеальной платформой для переноса данных из локальной среды в облако, но я не думаю, что фабрика данных Azure может запустить настоящий локальный сценарий из облака.Я думаю, что он может работать только с локальным SQL Server.

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

Я думаю, что попробую подход Azure Event Grid и получуДиспетчер гибридных подключений установлен на некоторых локальных компьютерах, а затем поддерживает некоторые сценарии PowerShell, работающие круглосуточно, для мониторинга указанного порта.Как только событие из сетки событий Azure направляется в диспетчер гибридных подключений, оно направляет его на порт, который прослушивает PowerShell, и затем PowerShell может запускать задание, которое необходимо запустить на локальном компьютере.

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

1 Ответ

0 голосов
/ 01 мая 2019

Неясно, какой тип данных вы собираетесь отправлять из облака. Вам нужно подумать о

1) Хотите ли вы, чтобы функция Pull или Push запускала задачи? Я бы порекомендовал Pull, если вы хотите проводить техническое обслуживание на своих локальных компьютерах. В дополнение к тому, что ваши локальные компьютеры имеют ограниченную емкость и не могут масштабироваться в зависимости от нагрузки с помощью Push.

2) Хотите установить дополнительное программное обеспечение сервера? Azure Service Bus не требуется никаких шлюзов для работы в помещении.

Сервисная шина Azure может быть реализована с помощью службы Windows, IIS всегда в приложении, она по-прежнему дает гибкость интеграции с программным обеспечением сторонних производителей, поскольку она может работать с приложениями логики, потоками и функциями Azure. может использоваться с служебной шиной Azure.

...