Stockage: Les commandes powershell de référence


Scripting, Stockage, Système d'exploitation / lundi, juin 10th, 2013

Voici un référentiel sur le stockage concernant Windows Server 2012 😉

STOCKAGE

Pour tous savoir, lancez gcm –module Storage

Disque Physique

Get-PhysicalDisk # lister tous les disques

Get-PhysicalDisk | Sort Size -Descending # lister tous les disques par décroissance

Get-StoragePool -IsPrimordial $false | Get-PhysicalDisk # lister les disques associés à un pool

Les pools

Get-StoragePool # lister les pools de stockage

$pDisks= Get-PhysicalDisk $s=Get-StorageSubSystem New-StoragePool -FriendlyName "Monpool" -PhysicalDisks $pDisks[0] , $pDisks[1] -StorageSubSystemFriendlyName $s.FriendlyName # créer un nouveau pool "Monpool" composé de 2 disques

Disques virtuels

New-VirtualDisk -FriendlyName "VD1" -StoragePoolFriendlyName "Pool1" -Size 100GB -ResiliencySettingName "Mirror" -ProvisioningType Thin # créer un disque virtuel de 100 Go en miroir et Thin Provisonné

New-VirtualDisk -FriendlyName "VD1" -StoragePoolFriendlyName "Pool1" -ResiliencySettingName "Parity" -UseMaximumSize # créer un disque virtuel le plus gros possible en parité

Remove-VirtualDisk -FriendlyName "VD1" # supprimer un disque virtuel

Volumes

Get-VirtualDisk -FriendlyName "VD1" | get-disk | Initialize-Disk -PartitionStyle "MBR" # initialiser un disque en MBR

Get-VirtualDisk -FriendlyName "VD1" | get-disk | New-Partition -Size 500GB -DriveLetter P # créer une partition de 500 Go avec la lettre P

Format-Volume -DriveLetter P -FileSystem NTFS -NewFileSystemLabel "Données” # formater le disque P avec le label Données

Format-Volume -DriveLetter Z -FileSystem ReFS -Confirm:$false # formater Z en ReFS sans confirmation

Partages

Pour tous savoir, lancez gcm –module SMBShare

Partage SMB

Get-smbshare # lister tous les partages

New-SmbShare -Name "Partage1" -Path "D:\partage1" -FullAccess "e-novatic\cgeorgeot" # créer un partage "Partage1" sur d:\partage1 avec un accès total pour e-novatic\cgeorgeot

Remove-SmbShare -Name "partage1" # supprimer le partage "partage1"

Server SMB

Get-SmbClientConfiguration # obtenir la configuration cliente SMB

Get-SmbServerConfiguration # obtenir la configuration server SMB

Deduplication

Pour tous savoir, lancez gcm –module Deduplication

Volume

Get-DedupVolume # lister les volumes dédupliqués

Enable-DedupVolume P: # activer la déduplication sur P

Set-DedupVolume P: -ExcludeFileType "txt", "log" -MinimumFileAgeDays 10 # configurer la déduplication sur P en excluant les fichiers txt et log avec un age de 10 jours

Get-DedupStatus P: # obtenir le status

Planification

Get-DedupSchedule # obtenir le status

Set-DedupSchedule ThroughputOptimization-2 -Type Optimization -Start "8:00 AM" -Days "Sunday","Friday" # créer une tâche d'optimisation à 08h tous les vendredi et dimanche

Jobs

Start-DedupJob P: -Type Optimization # démarrer un job d'optimisation

Get-DedupJob # obtenir les jobs en cours

iSCSI Target

Pour tous savoir, lancez gcm –module iSCSITarget

Disque iSCSI virtuel

Get-IscsiVirtualDisk # lister les disques iSCSI

New-IscsiVirtualDisk -Path "c:\stockage\VM1.vhd" -size 400GB # créer un disque iSCSI de 400 Go

Remove-IscsiVirtualDisk –Path "c:\stockage\VM1.vhd" # supprimer un disque iSCSI

Serveur CIBLE

New-IscsiServerTarget -TargetName "VMDisques" # créer une cible VMDisques

Set-IscsiServerTarget -TargetName "VMDisques" -initiatorId "IQN: iqn.2009-05.local.e-novatic:hv-1.e-novatic.local","DNSNAME:hv-2.e-novatic.local" # association (unmask) des initiateurs à la cible VMdisques

Get-iscsiTarget # liste toutes les cibles

Remove-IscsiServerTarget –TargetName "VMdisques" # supprimer une cible

Mapping

Add-IscsiVirtualDiskTargetMapping -Path "c:\stockage\DC.vhd" -TargetName VMDisques # mapper un disque à une cible

Get-IscsiServerTarget | where {$_.Status -eq "Connected"} | fl LunMappings # lister les LUNs connectées

Initiateur ISCSI

Pour tous savoir, lancez gcm –module iSCSI

$Target=New-iSCSITargetPortal -TargetPortalAddress “192.168.0.1” # découverte du portail à l'adresse 192.168.0.1

$Portal = Get-iSCSITargetPortal # détail d'un portail

Connect-iSCSITarget -NodeAddress $Target.NodeAddress # connexion à un portail

Get-IscsiSession | where IsConnected -eq $true # lister les sessions actives

Register-IscsiSession -SessionIdentifier (Get-IscsiSession)[1].SessionIdentifier # faire d'une connexion iSCSI en persistente

Pour tout savoir sur les cmdlets Windows Server 2012, rendez-vous ici.