#c# #powershell
#c# #powershell
Вопрос:
У меня есть несколько сценариев Powershell, которые я хочу выполнить на 4 удаленных машинах. Я хочу сделать это сбалансированным по нагрузке способом. То есть приложение / инструмент, который я ищу (или должен создать), должен запланировать 1 сценарий на каждой из 4 удаленных машин и ждать. Каждый раз, когда машина завершает выполнение сценария, она должна запланировать для него выполнение другого сценария. Это должно продолжаться до тех пор, пока не будут выполнены все скрипты.
Я готов использовать либо C #, либо Powershell для реализации этого. Может кто-нибудь, пожалуйста, сказать, есть ли простой способ добиться этого? Есть ли какой-либо инструмент или приложение, которые уже доступны для использования?
Любая помощь будет принята с благодарностью.
Комментарии:
1. Почему вы используете термин «балансировка нагрузки» — вы просто хотите запустить скрипт на нескольких серверах
2. Согласен с @manojlds — посмотрите на ultramonkey. org или что-то в этом роде. Сценарии бывают разные.
3. Да, вероятно, термин «балансировка нагрузки» немного вводит в заблуждение. Причина, по которой я использовал это, заключалась в том, чтобы подразумевать, что я хочу запускать скрипты только на машине, которая в данный момент простаивает и завершила последнее выполнение скрипта, тем самым балансируя нагрузку на машины. Невозможно запустить несколько сценариев одновременно.
Ответ №1:
Просто напишите простой контроллер и службу Windows. Установите службу на каждую из ваших 4 машин, а контроллер — на основную машину.
Служба должна проверять контроллер после каждого завершенного выполнения сценария, чтобы узнать, есть ли еще работа. Если есть, возьмите следующий скрипт и выполните. Если нет, перейдите в режим ожидания и продолжайте проверять время от времени.
Дизайн для этого типа не очень сложный.
Комментарии:
1. Спасибо, Крис. Я раньше не писал службу WCF, но я бы наверняка хотел ее написать. Не могли бы вы предоставить немного больше информации об этом?
2. @naspras: я не думал о WCF. Достаточно обычной старой службы Windows.
3. Не могли бы вы дать мне еще несколько советов и помочь? Кроме того, как будет выглядеть контроллер?