Purpose:
I needed a way to query a netapp filer to give all the volumes and their total size with snapshot reserve.This is my second powershell script so be easy on me :-) Also this requires dataontap powershell toolkit
param([string]$NetAppHost, [string]$username) Import-module DataOnTap $PathtoCSV = "C:\NetappTotalVolume.csv" If ($NetAPPHost){$strNetAPPHost = $NetAPPHost} ELSE{$strNetAPPHost = Read-Host "What is the Netapp hostname/IP?"} If (!$strNetAPPHost){Write-Host "Error: Netapp hostname/ip not entered";exit} If ($username){$strusername = $username} ELSE{$strusername = Read-Host "What username?"} If (!$strusername){Write-Host "Error: Username not entered";exit} Connect-NAController $strNetAPPHost –cred $strusername $allvolumesnames = get-navol | Select-Object Name,Available,TotalSize,snapshotpercentreserved #set headers of CSV file "Hostname,Available Space(GB),Used Space(GB),Total Volume Space(GB)" > $PathtoCSV foreach ($netapp_vol in $allvolumesnames) { $CurrentVolname = $netapp_vol.name $VolumeSizeTotal = [math]::Round([decimal]((($netapp_vol.snapshotpercentreserved * 100) * $netapp_vol.TotalSize) + $netapp_vol.TotalSize)/1gb,2) $VolumesAvailable = [math]::Round([decimal]$netapp_vol.available/1gb,2) #Create/add to CSV file $Combine = $CurrentVolname,$VolumeAvailable1GB,$VolumeUsedSpace1GB,$VolumeSizeTotal1GB $Combine -join "," >> $PathtoCSV }
No comments:
Post a Comment