VMware
Yaml
code posted
created at 02 Jun 01:28, updated at 02 Jun 13:08
Edit
|
Back
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
require 'rbvmomi' require 'highline/import' #Constition de la liste des VMs à partir du fichier vmlist liste_vms = File.open("vmlist","r").readlines liste_vms.map! { |vm| vm.chomp } #Username et mot de passe username = ask("Utilisateur: ") { |q| q.echo = true } password = ask("Mot de passe: ") { |q| q.echo = "*" } #Connexion à vCenter puis recherche du DataCenter vim = RbVmomi::VIM.connect host: '10.100.101.24', user: "COS-NANTEAU\\administrateur", password: "poli%4g", insecure: true dc = vim.serviceInstance.find_datacenter("CRPF-DC") or fail " DataCenter Introuvable" #Créé une liste des VMs qui existent dans le datacenter à partir de la liste vms=liste_vms.select{|vmName| dc.find_vm(vmName)} #Averti l'utilisateur pour les VMs qui n'existent pas. (liste_vms-vms).each{|vmName| puts "#{Time.now} !EE! #{vmName} n'existe pas dans le Datacenter, elle sera ignoree"} vms.each do |vmName| vm = dc.find_vm(vmName) if vm.runtime.powerState == "poweredOn" vm.PowerOffVM_Task.wait_for_completion puts "#{Time.now} *OK* #{vmName} Signal d'extinction" else puts "#{Time.now} !EE! #{vmName} est deja OFF" end end |
1.15 KB in 2 ms with coderay