Archive

Archive for the ‘virtualization’ Category

Estrarre l’elenco degli Scheduled Task di vCenter con PowerCLI

Qualche giorno fa mi e’ stato chiesto se c’era un modo facile e veloce per estrarre l’elenco degli Scheduled Task di vCenter: ovviamente ho pensato subito a PowerCLI e… si fa tutto con un comando di una sola riga !

Eccolo qui:

(Get-View ScheduledTaskManager).ScheduledTask | %{ (Get-View $_).Info }

 

Nota: le date e gli orari restituiti sono espressi in UTC

Categories: vmware, vsphere Tags:

#VMworld 2014: annunci… senza limiti!

26 Aug 2014 Leave a comment

No-limits

Come tutti saprete, e’ in corso il VMworld 2014 US e proprio ieri c’e’ stata la prima general session (se l’avete persa, sarà disponibile a breve qui: http://www.vmware.com/now).

Ogni VMworld porta numerosi annunci, ma direi che questa volta la lista e’ veramente impressionante… e probabilmente non e’ ancora stato annunciato tutto!

Ecco quanto annunciato fino ad ora:

Inoltre qualche giorno prima dell’inizio del VMworld era stato annunciata l’acquisizione di CloudVolumes da parte di VMware e la disponibilità di Ubuntu in vCloud Air

Categories: vmware, vmworld Tags: , ,

#VMworld 2014: announcements … NO Limits!

26 Aug 2014 Leave a comment

No-limits[5]

As you know, yesterday was the day for the first general session at VMworld 2014 US (if you have missed it, it will be available here: http://www.vmware.com/now).

Each VMworld is full of announcements, but this year the list is impressive… and I’m not sure the list is complete!

So, here it is te announcements list:

A few days before VMworld was announced the acquisition of CloudVolumes by VMware and Ubuntu images availability on vCloud Air

Categories: vmware, vmworld Tags: , ,

Import-Export VM notes with PowerCLI

24 Jul 2014 Leave a comment

In a previous post I blogged about exporting and importing custom attributes, but sometimes you need to do the same also for notes.

A little PowerCLI and all is done quickly.

Export

Just connect to our source vCenter, export all notes and disconnect:

Connect-VIserver -server VCsource.vlab.local
$vmList = Get-VM
$noteList = @()
foreach ($vm in $vmList) {
$row = “” | Select Name, Notes
$row.name = $vm.Name
$row.Notes = $vm | select Notes
$notelist += $row
}
$noteList | Export-Csv “.\exported-notes.csv” –NoTypeInformation

Disconnect-VIServer “*” -Confirm:$False

 

Import

And now lets import all notes:

Connect-VIserver -server VCdest.vlab.local

$noteList = Import-Csv “.\exported-notes.csv”
foreach($nLine in $noteList){
if ( $nLine.Notes -ne “”){
Set-VM -VM $nLine.Name -Notes $nLine.Notes -Confirm:$false
}
}

Disconnect-VIServer “*” -Confirm:$False

Categories: vmware, vsphere Tags: ,

Import-Export delle note delle VM tramite PowerCLI

24 Jul 2014 Leave a comment

Nel precedente post ho presentato un paio di script per importare e esportare i custom attributes, ma capita di aver bisogno di fare la stessa cosa anche per le note delle vm.

Anche in questo caso, con pochissime righe in PowerCLI il tutto si risolve velocemente.

Export

Per esportare è sufficiente connettersi al vCenter, esportare tutte le note e disconnettersi:

Connect-VIserver -server VCsource.vlab.local
$vmList = Get-VM
$noteList = @()
foreach ($vm in $vmList) {
    $row = "" | Select Name, Notes
    $row.name = $vm.Name
    $row.Notes = $vm | select Notes
    $notelist += $row
}
$noteList | Export-Csv ".\exported-notes.csv" –NoTypeInformation

Disconnect-VIServer "*" -Confirm:$False

 

Import

E ora reimportiamo il tutto:

Connect-VIserver -server VCdest.vlab.local

$noteList = Import-Csv ".\exported-notes.csv"
foreach($nLine in $noteList){
    if ( $nLine.Notes -ne ""){
        Set-VM -VM $nLine.Name -Notes $nLine.Notes -Confirm:$false
    }
}

Disconnect-VIServer "*" -Confirm:$False

Categories: vmware, vsphere Tags: ,

Import–Export VM custom attributes from vCenter with PowerCLI

21 Jul 2014 1 comment

Some time ago, during a migration, I needed to migrate all VM custom attributes from a cluster in a first vCenter to another one.

As easy (and boring…) as is to just retype the attributes value, there was over 400 VMs, and I didn’t want to do this by hand.

So…PowerCLI to the rescue! Here the two little script I used for this task.

 

Export

First lets connect to our source vCenter and export all custom attributes:

Connect-VIserver -server VCsource.vlab.local

$attList = @()
$attList = Get-CustomAttribute -TargetType VirtualMachine
$attList | Export-Csv “.\exported-attributes.csv” –NoTypeInformation

then lets export all attributes values and disconnect:

$valueList =@()
Get-cluster CL01 | get-vm | % {
for($i = 0; $i -lt $_.CustomFields.Count; $i ++ ){
$row = “” | Select VMname, FieldKey, FieldValue
$row.VMname = $_.Name
$row.FieldKey = $_.CustomFields.Keys[$i]
$row.FieldValue = $_.CustomFields.Values[$i]
$valueList += $row
}
}
$valueList | Export-Csv “.\exported-attributes-value.csv” -NoTypeInformation

 

Disconnect-VIServer –server “*” -Confirm:$False

 

Import

Ok, now we have all vm moved to the destination vCenter and is time to import all attributes.

First connect to destination vCenter and re-create attributes:

Connect-VIserver -server VCdest.vlab.local

$attList = @()
$attList = Import-Csv “.\exported-attributes.csv”
foreach ($CustAttrib in $attList){
New-CustomAttribute -Name $CustAttrib.Name -TargetType $CustAttrib.TargetType
}

and, at last, lets import all attribute values and disconnect:

$NewAttribs = Import-Csv “.\exported-attributes-value.csv”
foreach($line in $NewAttribs){
# if value is empty, skip it (just to have all the import go faster)
if( $line.FieldValue -ne “”) {
Set-CustomField -Entity (get-vm $line.VMName) -Name $line.FieldKey -Value $line.FieldValue -confirm:$false
}
}

Disconnect-VIServer “*” -Confirm:$False

 

Easy peasy, doesn’t it?  Occhiolino

Categories: vmware, vsphere Tags: ,

Import–Export dei custom attributes delle VM tramite PowerCLI

21 Jul 2014 Leave a comment

Qualche tempo fa, durante una migrazione, mi e’ capitato di dover migrare tutti i valori degli attributi custom delle VM da un vCenter ad un altro.

Per quanto fosse un compito facile (basta ricreare gli attributi e copiare via via i valori), c’erano più di 400 VM e non volevo farlo a mano.

Niente di meglio che usare un po’ di PowerCLI ! Ecco qui i due piccoli script che ho usato.

 

Export

Per prima cosa connettiamoci al vCenter sorgente e esportiamo tutti i custom attribute:

Connect-VIserver -server VCsource.vlab.local

$attList = @()
$attList = Get-CustomAttribute -TargetType VirtualMachine
$attList | Export-Csv “.\exported-attributes.csv” –NoTypeInformation

ora esportiamo anche tutti i valori dei custom attibute delle varie VM e disconnettiamoci:

$valueList =@()
Get-cluster CL01 | get-vm | % {
for($i = 0; $i -lt $_.CustomFields.Count; $i ++ ){
$row = “” | Select VMname, FieldKey, FieldValue
$row.VMname = $_.Name
$row.FieldKey = $_.CustomFields.Keys[$i]
$row.FieldValue = $_.CustomFields.Values[$i]
$valueList += $row
}
}
$valueList | Export-Csv “.\exported-attributes-value.csv” -NoTypeInformation

 

Disconnect-VIServer –server “*” -Confirm:$False

 

Import

Ok, ora è il momento di importare tutto nel vCenter destinazione (ovviamente dopo aver migrato le varie VM).

Per prima cosa connettiamoci al vCenter destinazione e ricreiamo gli attribute:

Connect-VIserver -server VCdest.vlab.local

$attList = @()
$attList = Import-Csv “.\exported-attributes.csv”
foreach ($CustAttrib in $attList){
New-CustomAttribute -Name $CustAttrib.Name -TargetType $CustAttrib.TargetType
}

ed infine importiamo i valori e disconnettiamoci:

$NewAttribs = Import-Csv “.\exported-attributes-value.csv”
foreach($line in $NewAttribs){
# if value is empty, skip it (just to have all the import go faster)
if( $line.FieldValue -ne “”) {
Set-CustomField -Entity (get-vm $line.VMName) -Name $line.FieldKey -Value $line.FieldValue -confirm:$false
}
}

Disconnect-VIServer “*” -Confirm:$False

 

Meglio così che farsi un lungo e noioso lavoro di copiatura no?  Occhiolino

Categories: vmware, vsphere Tags: ,
Follow

Get every new post delivered to your Inbox.

Join 1,063 other followers