NETAPP : Configuration de baies NetApp via PowerShell


 

 

1. Présentation de la baie NetApp Séries FAS2000 iSCSI

Le NetApp FAS2020/2040 est une baie de 12 disques SATA, cette baie supporte le protocole iSCSI et fournit un espace de stockage d’environ 6~7 To.

http://m.softchoice.com/files/pdf/brands/netapp/FAS2000ProductDatasheet.pdf

 

2. Configuration standard de la baie

Une adresse par défaut est pré-enregistrée en usine : 10.10.10.10.

Cette information est fournie dans les documents inclus dans le packaging du NAS.
Bien vérifier les adresses pré-configurées en usine dans le document fourni par Bosch.

 

3. Module PowerShell NetApp

Afin de lancer des scripts PowerShell sur les baies NetApp, il faut ajouter les CMDLETS PowerShell NetApp sur votre machine cliente.

Pour installer les CMDLETS (NetApp DataOntap PowerShell ToolKit) il faut télécharger le modèle DataONTAP à partir du site de NetApp puis extraire les fichiers dans :

 C:\Windows\system32\WindowsPowerShell\v1.0\Modules\DataONTAP 

Afin d’importer le module PowerShell NetApp tapez :

Import-Module DataONTAP

Tapez Get-NaHelp pour obtenir de l’aide sur les commandes DataONTAP PowerShell.
Vous pouvez ouvrir directement le fichier d’aide en version HTLM qui se trouve dans le répertoire ci-dessous :

 C:\Windows\system32\WindowsPowerShell\v1.0\Modules\DataONTAP\webhelp\index.html 

 

4. Script de configuration générale

Import-Module DataONTAP

Write-Host "Connexion au NVR NetApp FAS2020/2040..."                -ForegroundColor yellow
Write-Host " "
Connect-NaController 10.10.10.10 -Credential root
Write-Host " "
Write-Host "Connexion établie..." -ForegroundColor yellow
Write-Host " "
Write-Host "Lancement de la configuration automatique du SAN..."    -ForegroundColor yellow

# Désactivation des interfaces e0c et e0d pour les FAS2040
Write-Host "Désactivation des intérface e0c et e0d..."      	-ForegroundColor yellow
Set-NaNetInterface e0c -Down
Set-NaNetInterface e0d -Down

# -----------------------------------------------------------------------------------------------

# Paramétrage Time
Write-Host "Paramétrage du Time..."                                 -ForegroundColor yellow
Set-NaOption timed.enable on
Set-NaOption timed.log on
Set-NaOption timed.proto ntp
Set-NaOption timed.sched hourly
Set-NaOption timed.max_skew 1m
Set-NaOption timed.servers 10.0.0.1

# -----------------------------------------------------------------------------------------------

# Configuration de la TimeZone
Write-Host "Paramétrage de la TimeZone..."                         -ForegroundColor yellow
Set-NaTimezone -Timezone Europe/Paris

# -----------------------------------------------------------------------------------------------

# Paramétrage SNMP
Write-Host "Paramétrage du SNMP..."                                -ForegroundColor yellow
Set-NaOption snmp.enable on
Set-NaOption snmp.access legacy
Set-NaSnmpContact support.san@domaine.local	#OK Uniquement avec Firmware 3.x - FAS2040
Set-NaSnmpLocation 'Centre X'			#OK Uniquement avec Firmware 3.x - FAS2040

# -----------------------------------------------------------------------------------------------

# Paramétrage Domaine et DNS
Write-Host "Paramétrage du Domaine et des options DNS..."         -ForegroundColor yellow
Set-NaOption dns.domainname domaine.local
Set-NaOption dns.update.ttl 24h
Set-NaOption dns.cache.enable on

# -----------------------------------------------------------------------------------------------

# Paramétrage de connexion à l'équipement
Write-Host "Paramétrage de connexion à l'équipement..."           -ForegroundColor yellow
Set-NaOption autologout.telnet.enable on
Set-NaOption httpd.admin.top-page.authentication on	#ON=Authentification instantanée

# -----------------------------------------------------------------------------------------------

# Ajout de disk a un volume (disk 1 et 2 font deja partie de vol0, ajout des disks 0,3,4,5,6,7,8,9,10 dans vol0 et le disque 11 reste en spare) 
Write-Host "Ajout de 11 disk au volume vol0 + 1 Disk Spare ..." -ForegroundColor yellow
add-NaAggr vol0 -Disks 0c.00.0,0c.00.3,0c.00.4,0c.00.5,0c.00.6,0c.00.7,0c.00.8,0c.00.9,0c.00.10

# Suppréssion de la réservation de Snapshot
Write-Host "Suppréssion de la réservation de Snapshot..."        -ForegroundColor yellow
Set-NaSnapshotReserve -TargetName vol0 -Percentage 0

# --------------------------------------------------------------------------------------

# Création des Initiator Groups
Write-Host "Création des Initiator Groups..."                    -ForegroundColor yellow
New-NaIgroup -Name IQNGroup1 -Protocol "iscsi" -Type "linux"
New-NaIgroup -Name IQNGroup2 -Protocol "iscsi" -Type "linux"

# Ajout des Initiators IQN aux Initiator Groups
Write-Host "Ajout des IQN au IQNGroupe1..."      	       -ForegroundColor yellow
Add-NaIgroupInitiator -Igroup IQNGroup1 -Initiator iqn.2005-12.com.bosch:vrm001122334455
Add-NaIgroupInitiator -Igroup IQNGroup2 -Initiator iqn.2005-12.com.bosch:vrm006677889910

Write-Host "Ajout des IQN au IQNGroupe2..."                      -ForegroundColor yellow
Add-NaIgroupInitiator -Igroup IQNGroup2 -Initiator iqn.2005-12.com.bosch:vrm101f74f74c78
Add-NaIgroupInitiator -Igroup IQNGroup2 -Initiator iqn.2005-12.com.bosch:vrmb8ac6fa2ecaf

#---------------------------------------------------------------------------------------

# Méssage de FIN de script
$message1 = "* Fin du script de configuration. *"
$message2 = "* Merci de vérifier que le NVR est bien configuré 🙂 *"
$shell = new-object -comobject wscript.shell
$shell.popup("$message1")
$shell.popup("$message2")

 

5. Script de création de LUNs

Les paramètres sont à adapter selon le besoin :

$Name_Lun = ‘x’ (ou ‘x’ = nom de la LUN), -Size Ygb (ou ‘Y’ = taille de la LUN)

# Creation de LUN
$Name_Lun = '<strong>X</strong>'
fonction Create_Lun ($Name_Lun)

# Creation de LUN
New-NaLun -path '/vol/vol0/'+$Name_Lun -Type 'linux' -Size <strong>Y</strong>gb

# Possitionement du commentaire
Set-NaLunComment /vol/vol0/NOMLUN $Name_Lun

# Ajout des initiator groups										
Add-NaLunMap '/vol/vol0/'+$Name_Lun IQNGroup1
Add-NaLunMap '/vol/vol0/'+$Name_Lun IQNGroup2

 

6. Autres commandes PowerShell

Connexion à un système NetApp:

Connect-NaController 10.10.10.10 -Credential root

Afficher la version du système :

Get-NaSystemversion

Afficher la liste des volumes :

Get-navol

Afficher la liste des LUN et des Initiators Groups :

Get-NaLun | Get-NaLunMap

Afficher la liste des disques :

Get-NaDisk

Afficher les catégories :

Get-NaHelp -CategoryList
Get-NaHelp –Category iscsi

Obtenir des informations sur une commande :

Get-help *navol*

 

Print Friendly, PDF & Email

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *