Как автоматизировать разрозненный технологический процесс в Azure - PullRequest
0 голосов
/ 28 мая 2019

У меня есть еженедельный процесс, который я хочу автоматизировать в Azure.Общий процесс состоит из примерно 5 отдельных подпроцессов.Общее время выполнения составляет около 8 часов.Технологии подпроцесса включают:

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

  2. Сценарии T-SQL, работающие на виртуальной машине Windows в Azure, которые по завершении должны вызвать ...

  3. Задания служб SSIS, выполняемые на виртуальной машине Windows в Azure, которые по завершении должны запускаться ...

  4. Приложение c #, которое выполняется на виртуальной машине Windows в Azure, которое по завершении должно запускаться...

  5. Код Python, работающий на виртуальной машине Linux в Azure.

Мой вопрос: что такое технология или технологии Azure (например, Runbook автоматизации), приложение логики) можно было бы сшить эту штуку вместе, чтобы вернуть мне мои выходные?Заранее спасибо.

Ответы [ 2 ]

1 голос
/ 28 мая 2019

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

Самое сложное для вас - сделать эти разрозненные приложения доступными для сторонних служб. Работая в виртуальных машинах Windows, они не имеют естественных конечных точек, таких как собственные службы Azure.

Есть много способов сделать это, в зависимости от вашей способности изменять виртуальные машины и навыки программирования.

Продолжение: Поскольку все виртуальные машины находятся в одном домене и подключены к сети, первое, на что следует обратить внимание, это немного старая школа (новая и блестящая не всегда лучшая), Задачи Windows . Как минимум на 2-4.

Это означает, что задача расписания на # 2 может проверить электронную почту, затем запустить ее SQL, а затем запустить задачу на # 3.

# 3 может запустить свои задания, а затем запустить задачу на # 4, которая запускает программу c #. Тогда # 4 может запустить скрипт Python. Ваш большой пробел в том, как запустить скрипт Python. Это может быть так же просто, как FTP-файл триггера для задачи на # 5, чтобы увидеть.

Сценарии Windows могут быть выполнены в PowerShell. Не очень элегантно, но и не ваше окружение.

Наконец, и почти самое важное, вы можете использовать Azure Monitor и пользовательский формат журнала для отслеживания процесса.

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

Это может быть решено с помощью функций Durable - и шаблона Внешних событий: https://docs.microsoft.com/en-us/azure/azure-functions/durable/durable-functions-external-events

  1. Функция, запускаемая таймером, еженедельно запускает функцию оркестратора.
  2. .VM (или Docker-контейнер и т. Д.), Который содержит ваш загрузчик данных и внедряет URL-адрес обратного вызова.
  3. Теперь оркестратор ожидает внешнего события (см. Ссылку выше)
  4. Callback-URLуказывает на другую функцию Azure, которая вызывает событие для продолжения работы оркестратора: https://docs.microsoft.com/en-us/azure/azure-functions/durable/durable-functions-external-events#send-events
  5. оркестратор запускает следующую внешнюю задачу с тем же шаблоном ...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...