Archivi tag: powershell

Copy-VMFile: copiare un file dall’Host Hyper-V in una macchina virtuale

HyperV_logoCon Windows Server 2012 R2, in Hyper-V è stato introdotto il cmdlet Copy-VMFile. Questo serve per copiare un file dall’Host Hyper-V in una macchina virtuale.

Sintassi
Copy-VMFile "nome.della.macchina" -SourcePath c:\file\da\copiare.xyz -DestinationPath C:\path\destinazione\copiare.xyz -FileSource Host

Prerequisiti

  • Integration Services” nelle VM aggiornati
    Per verificarlo:
    Get-VM | Select Name, IntegrationServicesVersion, @{Name="IsUpdateNeeded";Expression={$_.IntegrationServicesVersion -lt [version]'6.3.9600.16384'}}
  • Guest Services Interface” abilitati
    Per verificarlo
    Get-VM | Get-VMIntegrationService -Name "Guest Service Interface" | Select VMName, Enabled
    Per abilitarli
    Get-VM "nome.VM" | Get-VMIntegrationService -Name "Guest Service Interface" | Enable-VMIntegrationService -Passthru
  • Servizio “Hyper-V Guest Service Interface” all’interno della VM sia abilitato
    Per verificarlo

Get-Service -Name vm*

Technet con descrizione del funzionamento del cmdlet Copy-VMFile: https://technet.microsoft.com/en-us/library/dn464282(v=wps.630).aspx

Script Powershell – Report farm Hyper-V

HyperV_logoMi occorreva uno script che restituisse lo stato dei volumi configurati in un cluster Hyper-V.

Mi sono imbattuto in questo simpatico script che oltre a fare quello che cercavo, invia tramite e-mail un report dettagliato in HTML sulla farm Hyper-V.
Tra le varie voci del report:

VM Name
Up-Time
Integration Component Version
Clustered or Not
No of vProcessors
StartUp Memory
Minimum Memory
Maximum Memory
Average Memory (If Resource Metering is enabled)
vDisk1-Storage (CSV Volume or Local Drive Letter)
VHDX – Disk 1 – Allocated Size
VHDX – Disk 1 – Actual Usage
Disk Fragmentation
vDisk2-Storage (CSV Volume or Local Drive Letter)
VHDX – Disk 2 – Allocated Size
VHDX – Disk 2 – Actual Usage
Disk Fragmentation
Type of Disk – VHD or VHDX
vNIC – Legacy or Synthetic
Date – First Snapshot created

Screenshot: Storage Report

Reference: http://insidevirtualization.com/hyperv3/hyper-v-dashboard-v-3-3-released/

Schedulare uno script Powershell EMS 2010 usando lo schedulatore di Windows

Step per schedulare uno script che utilizza la Exchange Management Shell (EMS) 2010.

  1. Dallo schedulatore, “Create Basic Task…
  2. Schedulare lo script nella sezione “Trigger
  3. Nella sezione “Action“, selezionare “Start a program
    • In Program/script: C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
    • In Add arguments (optional): -WindowsStyle Hidden -command “. ‘C:\Program Files\Microsoft\Exchange Server\V14\bin\RemoteExchange.ps1’; Connect-ExchangeServer -auto; c:\script\myscript.ps1”
       WindowsStyle Hidden: per non far apparire finestre a monitor
       c:\script\myscript.ps1: script da far girare

Create Basic Task Wizard

Script ruoli FSMO e GlobalCatalogs

Script Powershell per individuare i ruoli FSMO ed i server GC

DISCLAIMER: Nessuna garanzia per lo script. Lo usate a vostro rischio. Lo scrivente non è responsabile di qualunque danno possa eventualmente derivarne 😉