Quantcast
Channel: VMware Communities: Message List
Viewing all articles
Browse latest Browse all 219035

Re: scheduled tasks multiple vm

$
0
0

Смысл скрипта, который Вы привели в том, что вначале нужно явно в тексте скрипта указать имя вцентра или нескольких:

$VIServers = “vCenter” ( то есть переменная $VIServers принимает значение vCenter)

, затем скрипт получает список вм на этих вцентрах, применяет к ним фильтр по имени: $VMs = Get-View -ViewType VirtualMachine -Filter @{"Name" = "PCX*"}

и потом уже с подходящими машинами делает действия.

Чтобы Вам рестартовать другие машины, или на другом вцентре, надо будет править сам скрипт.

 

Смысл того, что привёл я в том, что скрипт остаётся неизменным. Переменные ему перезаются при запуске.

(Как в примере.\Restart-VMs.ps1 -vCenter vc01.ict-freak.local -vmName "VM1","VM2") то есть $vCenter в скрипте принимает значение  vc01.ict-freak.local, а $vmName принимает значения VM1 и VM2

$VIServer  и $vm  - встроенные объекты (как я понимаю), то есть они не задаются, они уже есть в PowerCLI и имеют понятные значения.

 

param(                                        обозначает, что параметры будут указываться призапуске (напр -vCenter vc01 -vmName "VM1","VM2" )
  [parameter(Mandatory
=$true)]
  [
string[]]$vCenter,                        -   обозначает, что введённый за -vCenter аргумент будет подставляться в переменную $vCenter (-vCenter vc01)
  [parameter(Mandatory
=$true)]
  [
string[]]$vmName                -   обозначает, что введённый за -vmName аргумент будет подставляться в переменную $vMname (-vmName "VM1","VM2")
)

Запустить весь скрипт можно так, как указано там в примере.

 

Если Вам необходимо рестартовать разные машины в разное время, то в случае с вашим скриптом надо делать разные скрипты и запихивать их в планировщик. В случае со скриптом, который я привел, надо будет запускать всего 1 скрипт, просто указывая разные аргументы. Это намного проще


Viewing all articles
Browse latest Browse all 219035

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>