====== Netapp ONTAP9 ====== **Diese Doku wurde erstellt unter ONTAP 9.x (9.3 und 9.4)** ====== Globales ====== **Anzeigen der ONTAP Version** version \\ **Anzeigen der Seriennummer** system node show -node \\ **Anzeigen der Mode Settings der FC/Netzwerk Ports** ucadmin show ucadmin show -c \\ **Anzeigen der FC/Netz Devices in der NetApp** ucadmin show \\ **NTP Anzeigen** cluster time-service ntp server show \\ **NTP Sync anzeigen (diag mode)** cluster time-service ntp status show \\ **NTP setzten** cluster time-service ntp server modify -server -version auto Beispiel: cluster time-service ntp server modify -server 192.168.0.11 -version auto \\ **NTP Sync anzeigen (diag mode)** cluster time-service ntp status show \\ **Timezone anzeigen** timezone \\ **Timezone wechseln** timezone -timezone Europe/Vienna \\ **Wechseln in den diag Mode** set diag \\ **Wechseln in den Admin Mode** set admin \\ **Anzeigen aller Lizenzen** license show license show-status \\ **Lizenz hinzufügen** license add \\ ====== Service Prozessor ====== **Infos zum Service Prozessor** system service-processor show \\ **Anmelden am Server Prozessor** TBD \\ ===== Netzwerk vom Service Prozessor ===== ** Netzwerk vom SP Aneigen ** system service-processor show system service-processor network show \\ ** Vergeben der Netzwerkeinstellungen ** system service-processor network modify -node storage01-01 -address-family IPv4 -enable true -ip-address 10.0.0.11 -netmask 255.255.255.0 -gateway 10.0.0.1 ===== Update vom Service Prozessor ===== ** Anzeigen der BMC Version ** system service-processor show system service-processor image show system service-processor image show -instance \\ ** Anzeigen ob Autopatch aktiviert ist ** system service-processor image show -fields autoupdate \\ ** Herunterladen eines neuen SP/BMC Images ** \\ Es muss ein neues Image von der NetApp Webseite runter geladen werden. Dies muss via eines WebServers der im Netz des Managements steht zur verfügung gestellt wird. set -privilege advanced system node image get -node -package Beispiel: Storage01::> set -privilege advanced Storage01::*> system node image get -node Storage01n1 -package http://10.0.0.115/netapp/308-03872_A0_11.3P2_BMC_FW.zip Storage01::*> system node image package show \\ ** Update des Images am SP ** \\ Wenn Autoupdate auf true steht sollte innerhalb der nächsten 30 Minuten das Update automatisch durchgeführt werden. \\ Wenn Autoupdate auf false steht oder man nicht so lange warten möchte kann man dies auch manuell starten.\\ system service-processor image show -fields autoupdate \\ Wenn Autoupdate auf true steht man jedoch trotzdem nicht warten möchte kann man das Update auch manuell durchführen. system service-processor image update -node -package Beispiel: Storage01::*> system service-processor image update -node Storage01n1 -package 308-03872_A0_11.3P2_BMC_FW.zip \\ ** Anzeigen des Updatestatus ** system service-processor image update-progress show \\ ** Anzeigen der Version nach dem Update ** system service-processor show \\ Danach sollte man sich am Service Prozessor via SSH anmelden und checken ob der Switch noch ein Update braucht. Hier ist es am besten man folgt den Update-Pfad auf der NetApp Seite den man bekommt wenn man das Image runter lädt. \\ \\ ====== Interfaces ====== **Anzeigen der Netzwerkkarten und Devices** network port show \\ **Interface Group anzeigen** ifgrp show \\ **Interface Group anlegen** ifgrp create -node -ifgrp a0a –distr-func ip –mode multimode_lacp \\ **Interfaces in ifgrp legen** ifgrp add-port -node -ifgrp -port Beispiel: ifgrp add-port -node storage01n1 -ifgrp a0a -port e0c ifgrp add-port -node storage01n1 -ifgrp a0a -port e0d \\ **VLANs anzeigen** vlan show \\ **VLAN einrichten** vlan create -node -vlan-name - Beispiel: vlan create -node rtp-nau-01 -vlan-name a0a-44 \\ **LANs löschen** vlan delete -node -vlan-name - \\ Beispiel: vlan delete -node rtp-nau-01 -vlan-name a0a-44 \\ ====== Ipspaces ====== Möchte man mit IP Spaces arbeiten muss dieser angelegt werden bevor man einen SVM anlegt. **Anzeigen der IP Spaces** ipspace show \\ **Anlegen eines IP Space** ipspace create -ipspace \\ ====== Broadcast Domain ====== Dies ist eine Gruppe von Ports in ONTAP. \\ Ein physischer oder auch virtueller Netzwerk Port kann immer nur in einer Broadcast Domain enthalten sein. Dies wird gerne verwendet wenn ein Hosting Provider die Kunden separieren möchte und einzelne Interfaces für einen Kunden reservieren möchte. **Anzeigen der Broadcast Domains** broadcast-domain show \\ Mehr Infos gibt es dazu von mir noch nicht. Ist aber ganz einfach ;-) \\ ====== Lifs ====== Es können bei einem bestehenden LIF keine Protokolle mehr hinzugefügt werden. Daher lieber vorher denken oder etwas offener anlegen und die Protokoll dann später im SVM einschränken ;-) \\ **Anzeigen der Lifs bzw. der Storage Netzwerk Interfaces. Hier sind alle physischen und virtuellen (LIF) angeführt** network interface show \\ **Anlegen eines Lifs** network interface create -vserver -lif -role data -data-protocol -home-node Beispiel (anlegen eines Lifs für FiberChannel für ESX Server) network interface create -vserver esx_fc -lif lif_esx_fc_01 -role data -data-protocol fcp -home-node netapp-207-01 0c \\ **Lif zwischen Nodes migrieren** network interface revert -vserver -lif Beispiel (Lif zur Homenode migrieren) network interface revert -vserver netapp-213 -lif cluster_mgmt \\ **Löschen eines Lifs** network interface modify -vserver snapmirror -lif lif_snap_01 -status-admin down network interface delete -vserver snapmirror -lif lif_snap_01 \\ **Failover Policies** [[https://library.netapp.com/ecmdocs/ECMP1636021/html/GUID-92CC5F58-5EB8-4E2D-88F0-FA2F740062E0.html]] \\ **Failover Groups anzeigen** failover-groups show \\ **DNS / Hostname File** vserver services name-services dns hosts create –vserver -address -hostname -alias \\ ====== Fibre Channel ====== **Globaler Status zu den Adaptern** fcp adapter show \\ **Genaue Infos zu einem FC Port** fcp adapter show -instance -node -adapter Bespiel: fcp adapter show -instance -node netapp-ssh-01 -adapter 0c \\ **Adapter aktivieren / deaktivieren** network fcp adapter modify -node -adapter -status-admin Beispiel: network fcp adapter modify -node netapp-207-01 -adapter 0c -status-admin \\ ====== SVM (Storage Virtual Maschine) ====== Vserver werden benötigt bzw. verwendet um den Client Traffic von echten NetApp Kopf abzuschirmen. Will man also ein Volume anlegen und dieses via NFS oder FC präsentieren muss dies in einem Vserver erfolgen. \\ ===== Anlegen eines Vservers ===== vserver create -vserver -subtype default -rootvolume -rootvolume-security-style unix -language C.UTF-8 -snapshot-policy default -is-repository false -foreground true -aggregate -allowed-protocols -comment Beispiel: (anlegen eines Vservers für ESX Server die via FC angebunden werden) vserver create -vserver esx_fc -subtype default -rootvolume root_esx_fc -rootvolume-security-style unix -language C.UTF-8 -snapshot-policy default -is-repository false -foreground true -aggregate aggr_sas_01 -allowed-protocols fcp -comment vserver_for_esx_fiberchannel \\ ===== Verserver DNS Settings anzeigen ===== vserver services dns show \\ ===== Vserver DNS Settings setzten ===== (wird für AD Join benötigt) vserver services dns create -vserver presseshare -domains domain.loc -name-servers 192.168.13.100,192.168.13.88,192.168.13.77 \\ ===== Vserver in das AD Join ===== cifs create -vserver -cifs-server -domain Beispiel: cifs create -vserver net23_pu_cifs_medialib_01 -cifs-server MEDIALIB -domain supergeiledomain.loc \\ WICHTIG! \\ Wird ein Volume angelegt das als CIFS Share verwendet werden soll muss man den security-style vom Vol auf NTFS stellen. \\ ===== Einem Vserver ein Aggr zuteilen ===== Dies wird zB für Trident benötigt. Kann online durchgeführt werden und das Aggr muss nicht dezidiert sein. vserver modify -vserver -aggr-list Beispiel: vserver modify -vserver trident_test -aggr-list aggr_sata_01_n1 vserver modify -vserver trident_test -aggr-list aggr_sata_01_n1,aggr_sata_02_n1 vserver show -vserver \\ ===== Aggr einem Vserver wieder wegnehmen ===== vserver remove-aggregates -vserver -aggregates Beispiel: vserver remove-aggregates -vserver trident_test -aggregates aggr_sata_01_n1 \\ \\ ===== Export Policy ===== \\ **Anzeigen der Policy** vserver export-policy show \\ **Anzeigen der Berechtigungen einer Policy** vserver export-policy rule show \\ **Erstellen einer Export Policy** vserver export-policy create -vserver esx_pu_nfs_02 -policyname esx \\ **Hinzufügen von rules zur Policy** vserver export-policy rule create -vserver esx_pu_nfs_02 -policyname esx -clientmatch -rorule any -rwrule any -allow-suid true -allow-dev true -protocol -superuser any -ruleindex 1 \\ **Hinzufügen von IPs zur rule** vserver export-policy rule add-clientmatches -policyname esx -ruleindex 1 -clientmatches \\ ====== Disken ====== Der Befehl "storage disk" kann auch abgekürzt werden durch "disk" **Anzeigen der aller Disks** storage disk show \\ **Anzeigen aller Disk Optionen eines Node** storage disk option show storage disk option show -node \\ **Auto Assign Option verändern** storage disk option modify -autoassign \\ **Globale Handling mit Disken** storage disk show \\ **Anzeigen der Spare Disken** storage aggregate show-spare-disks disk show -container-type spare \\ **Anzeigen unassigned Platten** disk show -container-type unassigned \\ **Anzeigen defekter Disken** storage disk show -state broken disk show -container-type broken disk show -broken \\ **Anzeigen der Partner Disken** storage disk show -state partner \\ **Anzeigen aller Disken eines Aggr** storage disk show -aggregate \\ **Anzeigen der Ownership der Disks** storage disk show -ownership \\ **Disk auto Assign** disk option show \\ **Disk einen Kopf zuweisen** storage disk assign -disk -owner Beispiel: storage disk assign -disk NET-1.1 -owner sim-cluster-01 \\ **Disk einem Kopf wegnehmen** storage disk removeowner -disk storage disk removeowner -disk Beispiel: storage disk removeowner -disk NET-1.1,NET-1.2,NET-1.3,NET-1.4 <\code> \\ **Disk blinken lassen** storage disk set-led -action blink -duration \\ **Disk blinken deaktivieren** storage disk set-led blinkoff -disk NET-1.1 \\ **Disk mit einer anderen ersetzten (Daten kopieren)** storage disk replace -disk -action start -replacement \\ **Disk löschen (zero)** disk zerospares -owner netapp-ssh-01 \\ **Disk zero Prozess anzeigen** disk show -state zeroing \\ ** Disk Pfade anzeigen ** storage array disk paths show node run -node -command storage show disk -p \\ ====== Aggregate ====== Der Befehl "storage aggregate" kann auch abgekürzt werden durch "aggr" \\ **Anzeigen aller Aggr** storage aggregate show \\ **Anzeigen der Auslastung der Aggr** df -A -autosize \\ **Anzeigen der Status Infos eines Aggr** storage aggregate show-status \\ **Anzeigen der Speicherplatzes in einem Aggr (Details)** storage aggregate show-space \\ **Anzeigen aller Optionen eines Aggr** aggr show \\ **Anzeigen aller Aggr die nicht online sind** storage aggregate show -state !online \\ **Anlegen eines neuen Aggr** storage aggregate create -aggregate -diskcount -raidtype -maxraidsize -disksize Beispiel: storage aggregate create -aggregate aggr_test01 -diskcount 5 -raidtype raid_dp -maxraidsize 6 -disksize 1 \\ **Erweitern eines Aggr** Hier muss man gut aufpassen bezüglicher der Performance! Thema Rebalance! storage aggregat add-disks -aggregate -diskcount -disksize Beispiel: storage aggregat add-disks -aggregate aggr_test01 -diskcount 1 -disksize 1 \\ **Löschen eines Aggr** aggr offline -aggregate aggr_test01 \\ **Raidsize im Aggr ändern** aggr modify -aggregate aggr_test01 -maxraidsize 14 \\ **Umbenennen eines Aggr** storage aggregate rename -aggregate Beispiel: storage aggregate rename -aggregate aggr_test01 aggr_test_01 \\ ** Anzeigen ob alle Plex online sind (Metrocluster) ** storage aggregate plex show -fields aggregate,status,is-online,Plex,pool \\ ===== Hybride Aggr ===== **Anlegen eines normalen Aggr** aggr create -aggregate aggr_test01 -diskcount 5 -raidtype raid_dp -maxraidsize 16 -disktype FCAL -node svl-nau-01 \\ **Anzeigen ob ein Aggr als Hybride eingestellt ist** aggr show -fields hybrid-enabled \\ **Setzten der Hybride Option** aggr modify -aggregate aggr_test01 -hybrid-enabled true \\ **SSDs hinzufügen in das Hybride Aggr** aggr add -aggregate aggr_test01 -raidtype raid4 -diskcount 3 -disktype ssd \\ **Anzeigen der des Status des Aggr** aggr show-status aggr_test01 \\ ===== FabricPool Aggr ===== Dies geht nur mit SSD Aggr. \\ Hier werden Daten die normal lokal liegen in die Cloud ausgelagert. \\ Hier kann die Entscheidung von der Storage getroffen werden via Policy wann und was ausgelagert werden soll. \\ Storagegrid ist gratis dabei. Wenn AWS oder die MS Cloud verwendet wird muss eine Lizenz gekauft werden. \\ ====== Volume ====== ===== Normales FlexVol ===== **Anlegen eines Volumes** Beispiel: (Volume für ESX via FC und Snapshots täglich für drei Tage) volume create -vserver -volume -aggregate -size -state online -policy -unix-permissions ---rwxr-xr-x -type RW -snapshot-policy -foreground true -space-guarantee volume -percent-snapshot-space 0 Beispiel: volume create -volume vol_srv_01 -aggregate aggr_sas_01 -size 1t -state online -policy default -unix-permissions ---rwxr-xr-x -type RW -snapshot-policy rt_3_days -foreground true -space-guarantee volume -percent-snapshot-space 0 \\ **Volumes anzeigen** df -V -autosize df -V -h volume show \\ **Volumes anzeigen die nicht online sind** volume show -state !online \\ **Volumes anlegen** vol create -vserver -volume -aggregate -size -state online -policy -unix-permissions ---rwxr-xr-x -type RW -snapshot-policy -foreground true Beispiel für alles default vol create -vserver svm_red -volume test01 -aggregate svl01_data_001 -size 5G -state online -policy default -unix-permissions ---rwxr-xr-x -type RW -snapshot-policy default -foreground true \\ **Volumes löschen** volume offline -vserver svm_red -volume test01 volume delete -vserver svm_red -volume test01 \\ Nach dem löschen eines Volumes wird der Speicher noch nicht sofort freigegeben. Es gibt eine Recovery-Queue die das Volume per default noch für 12 Stunden aufhebt und dann automatisch löscht. \\ Benötigt man den Speicher sofort kann man im Diag Modus diese Queue löschen. netapp-001::> set diagnostic netapp-001::> vol show netapp-001::*> vol recovery-queue show netapp-001::*> vol recovery-queue purge-all -vserver svm_01 \\ **Volumes verschieben** volume move start -vserver -volume -destination-aggregate -perform-validation-only false Beispiel: volume move start -vserver svm_red -volume vol_move -destination-aggregate svl01_data_001 -perform-validation-only false \\ **Volume Move Status** volume move show Beispiel: svl-nau::> vol move show Vserver Volume State Move Phase Percent-Complete Time-To-Complete --------- ---------- -------- ---------- ---------------- ---------------- svm_red vol_move healthy replicating 31% Wed Nov 28 09:15:06 2018 \\ **Volume Rehost** Verschiebt Volumes zwischen SVM's. Dies geht nur offline. \\ **Volume Clone** Beispiel: vol clone create -flexclone vol_iso_03 -type RW -parent-vserver esx_fc_213 -parent-volume vol_iso_02 -foreground true -parent-snapshot daily.2018-12-03_0010 \\ **Volume Clone Split** Bespiel: vol clone split start -flexclone vol_iso_03 -vserver esx_fc_213 -foreground true \\ ** Inodes eines Volumes** Anzeigen der Max und verbrauchten Inodes vol show -fields files,files-used Beispiel: storage01::> vol show app_sata_01 -fields files,files-used vserver volume files files-used ---------- ------------------ -------- ---------- app_nfs_01 app_sata_01 21251126 20205424 \\ **Vergrößern der Inodes** vol modify -vserver -files 30000000 \\ ===== FlexGroup Volume ===== Ein Volume kann nur maximal 100Tb groß werden. Durch Flex Group Vol können mehrere Volumes zu einer Gruppe verbaut werden. \\ **Anlegen FlexGroup Volume über Deloy (ich mach dies lieber manuell)** flexgroup deploy -vserver svm_red -size 5G -type RW \\ **Anlegen FlexGroup Volume manuell** vol create -vserver svm_red -volume -aggr-list -aggr-list-multiplier 4 -size 5G Beispiel: vol create -vserver svm_red -volume vol_gr1 -aggr-list svl01_data_001 svl02_data_001 -aggr-list-multiplier 4 -size 5G \\ **AnzeigenFlexGroup Volume der einzelnen Stücke** volume show -vserver svm_red -volume vol_gr* -is-constituent true \\ **Vergrößern FlexGroup Volume (hinzufügen neuer Volumes)** vol expand -vserver svm_red -volume vol_gr1 -aggr-list svl01_data_003,svl02_data_002 -aggr-list-multiplier 1 -foreground true \\ **Vergrößern FlexGroup Volume (einzelne Volumes vergrößern)** vol modify -vserver svm_red -volume vol_gr1 -size 8G vol modify -vserver svm_red -volume vol_gr1 -size +1G \\ **ACHTUNG! Verkleiner ist NICHT möglich!** \\ **Löschen FlexGroup Volumes** vol offline -vserver svm_red -volume vol_gr1 vol delete -vserver svm_red -volume vol_gr1 \\ ===== Quota ===== Quotas können auf User / Gruppen / Qtrees gesetzt werden. \\ ** Quota Policy anlegen - legt nur eine leer Policy an ** \\ Man kann nur eine Policy pro vServer anlegen.\\ vol quota policy create -vserver -policy-name Beispiel: vol quota policy create -vserver esx_pu_nfs_01 -policy-name appserver1 \\ ** Quota Rule auf die Policy legen - hinterlegt das Regelwerk ** vol quota policy rule create -vserver -policy-name -volume -type -target -soft-disk-limit -disk-limit Beispiel: vol quota policy rule create -vserver esx_tu_nfs_01 -policy-name appserver1 -volume tu_sata_nfs_01 -type tree -target qt_appserver1 -soft-disk-limit 10G -disk-limit 12G \\ ** Quota Policy dem vServer zuweisen ** vserver modify -vserver -quota-policy Beispiel: vserver modify -vserver esx_tu_nfs_01 -quota-policy appserver1 \\ ** Quota auf dem Volume aktivieren ** vol quota on -vserver -volume Beispiel: vol quota on -vserver esx_tu_nfs_01 -volume tu_sata_nfs_01 \\ ** Quota Report von einem vServer anzeigen ** vol quota report -vserver Beispiel: vol quota report -vserver esx_tu_nfs_01 ** Quota Regel anpassen / ändern ** vol quota policy rule modify -vserver -policy-name -volume -type tree -target -soft-disk-limit -disk-limit vol quota resize -vserver -volume -foreground Beispiel: vol quota policy rule modify -vserver esx_tu_nfs_01 -policy-name appserver1 -volume tu_sata_nfs_01 -type tree -target qt_appserver1 -soft-disk-limit 18G -disk-limit 20G vol quota resize -vserver esx_tu_nfs_01 -volume tu_sata_nfs_01 -foreground vol quota report -vserver esx_tu_nfs_01 \\ ====== Snapshots ====== Volume Snapshots werden mittels snapshot policies gesteuert. In den snapshot policies sind die schedules konfiguriert. **Anzeigen der Snapshot policies** snapshot policy show Vserver: EC-Nearstore01 Number of Is Policy Name Schedules Enabled Comment ------------------------ --------- ------- ---------------------------------- default 3 true Default policy with hourly, daily & weekly schedules. Schedule Count Prefix SnapMirror Label ---------------------- ----- ---------------------- ------------------- hourly 6 hourly - daily 2 daily daily weekly 2 weekly weekly default-1weekly 3 true Default policy with 6 hourly, 2 daily & 1 weekly schedule. Schedule Count Prefix SnapMirror Label ---------------------- ----- ---------------------- ------------------- hourly 6 hourly - daily 2 daily - weekly 1 weekly - none 0 false Policy for no automatic snapshots. Schedule Count Prefix SnapMirror Label ---------------------- ----- ---------------------- ------------------- - - - - 3 entries were displayed. **Anzeigen der Volume Snapshot Policy** volume show -vserver backup_iscsi -fields snapshot-policy,volume vserver volume snapshot-policy ------------ ----------------- --------------- backup_iscsi ecs01veeam_RC0_01 none backup_iscsi ecs01veeam_RC1_01 none backup_iscsi ecs01veeam_RC2_01 none backup_iscsi ecs02veeam_RC0_01 none backup_iscsi ecs02veeam_RC1_01 none backup_iscsi ecs02veeam_RC2_01 none backup_iscsi root_backup_iscsi default backup_iscsi veeam_tape_01 none 8 entries were displayed. ** Disable Volume Snapshots** volume modify -vserver backup_iscsi -volume ecs02veeam_RC2_01 -snapshot-policy none **Delete Volume Snapshots** snapshot delete -vserver backup_iscsi -volume ecs02veeam_RC2_01 -snapshot snapshot delete -vserver backup_iscsi -volume ecs02veeam_RC2_01 -snapshot * \\ **Erstellen einer Snapshot Policy** snapshot policy create -policy -count1 -enabled true -schedule1 Beispiel: snapshot policy create -policy rt_5_days -count1 5 -enabled true -schedule1 daily \\ **Snapspot Verzeichnis** \\ So kann man die Sichtbarkeit des .snapshot Verzeichnisses ein und ausschalten vol modify -vserver -volume -snapdir-access \\ Hat man CIFS im Einsatz muss hier am Share selbst auch noch etwas tun damit der Verzeichnis angezeigt wird cifs share properties add -vserver -share-name -share-properties showsnapshot \\ ===== Snapshot Schedule anlegen ===== **Anlegen eines Jobs** job schedule cron create -name 12hour -minute 10 -hour 0,12 \\ Anlegen einer Snapshot Policy snapshot policy create -policy rt_5_days_2hours -enabled true -schedule1 12hour -count1 5 netapp::> snapshot policy show -policy rt_5_days_2hours Vserver: netapp-ssh Number of Is Policy Name Schedules Enabled Comment ------------------------ --------- ------- ---------------------------------- rt_5_days_2hours 1 true - Schedule Count Prefix SnapMirror Label ---------------------- ----- ---------------------- ------------------- 12hour 5 12hour - \\ ====== LUN ====== **Erstellen einer Lun** lun create -path -size -ostype -space-reserve -space-allocation -class regular -vserver Beispiel: lun create -path /vol/vol_lin_01/lun_lin_01 -size 500G -ostype vmware -space-reserve disabled -space-allocation disabled -class regular -vserver esx_fc \\ **Lun mappen** lun map -path -igroup Beispiel: lun map -path /vol/vol_lin_01/lun_lin_01 -igroup ESX_01 \\ **Unmap einer Lun** lun unmap -path -igroup * Beispiel: lun unmap -path /vol/vol_lin_01/FAS207_SRV_01 -igroup * \\ **Löschen einer Lun** lun delete \\ ====== Deduplication ====== **Status Dedup** sis status volume efficiency show -vserver esx_fc -volume \\ **Dedup auf einem Volume aktivieren (nicht inline sondern per Schedule)** volume efficiency on -volume -vserver volume efficiency modify -volume -policy default Optional: volume efficiency modify -volume -schedule mon-sun@2 \\ **Anzeigen der Jobs und dessen Details** vol efficiency show vol efficiency show -instance vol efficiency show -instance -vserver esx_pu_nfs_02 -volume pu_sas_winRC0_01 \\ **Anzeigen der Ersparnis aller Volumes** df -V -h -s \\ **Cross Volume Inline Deddup** Parameter -cross-volume-inline-dedup \\ Inline Dedup auf FAS (nicht AFF Systemen). Inline Dedup macht aktuell NUR auf SSD's sinn. Hier wird auf SSD's IO's und schreibe Zyklen gespart dafür belastet es den Kopf. Normal kann man dies nur auf AFF Systemen setzten. Hat man jedoch eine FAS mit SSD's kann man dies auch aktivieren. Dazu ist jedoch davor ein wichtiger Schritt nötig. Storage04::> set -privilege diag Storage04::*> system node run -node Storage04n1 Type 'exit' or 'Ctrl-D' to return to the CLI Storage04n1> priv set diag Warning: These diagnostic commands are for use by NetApp personnel only. Storage04n1*> options sis.idedup_allow_non_aff_hya on Storage04n1*> options sis sis.do_idedup_policy_check off sis.idedup_allow_non_aff_hya on sis.max_vfiler_active_ops 8 Storage04::*> set -privilege admin Storage04::> volume efficiency modify -vserver esx_pu_nfs_02 -volume pu_ssd_oraRC1_01 -inline-dedupe true -policy default \\ ====== Komprimierung ====== Es gibt zwei verschiedene Arten \\ \\ **Adaptive** \\ Es werden immer 8 Blöcke komprimiert Hier wird das System nicht so stark belastet jedoch wird nicht stark komprimiert. \\ Diese Variante sollte man für Daten verwenden die stark unter Last sind. Auch viele Random Reads funktionieren hier sehr viel flotter als unter "Secondary". \\ **Secondary** \\ Es werden immer 32 Blöcke komprimiert. Hier wird das System stärker belastet jedoch wird auch mehr komprimiert. Sollte nur in speziellen Fällen verwendet werden. \\ \\ **Post Compression** \\ Wird via Schedule gestartet und das Volume wird nach den Veränderungen gescannt. \\ Diese Art der Compression ist geeignet für FAS Systeme mit SATA und SAS Disken. **Inline Compression** \\ Wird wie der Name schon sagt Inline gemacht. Sprich bevor ein IO geschrieben wird, wird dieser schon versucht im Ram der Storage zu komprimieren. Damit spart man sich IO und geht schonend mit SSDs um. \\ Diese Art der Compression ist geeignet für FAS und AFF Systeme mit SSDs. Über Hybride Aggr kann man auch noch nachdenken. \\ **Aktivieren der normalen Adaptive Post Komprimierung mit dem default Schedule** vol efficiency modify -vserver -volume -compression true \\ **Aktivieren der normalen Adaptive Post + der Inline Komprimierung mit dem default Schedule ** vol efficiency modify -vserver -volume -compression true -inline-compression true \\ Diese Befehle lassen sich natürlich auch noch wie immer mit einer Policy und einem Schedule versehen. \\ ====== Compaction ====== Hier werden nicht volle 4k WAFL Blöcke mit anderen nicht vollen Blöcken gefüllt so das man möglichst volle 4k Blöcke erreicht. Geht nur für Thin Volume's. \\ ====== Snapmirror ====== Um einen Snapmirror einzurichten der den lokalen Cluster verlässt muss ein Intercluster Peering durchgeführt werden. \\ \\ ACHTUNG! \\ Snapmirror wird in der Shell anders behandelt als im Systemmanger bzw GUI.\\ Shell: Es wird immer alles auf der Destination gestartet bzw. angezeigt.\\ Systemmanger: Es wird immer alles auf der Source angezeigt und gestartet. \\ \\ ===== Intercluster Peering ===== [[https://docs.netapp.com/ontap-9/index.jsp?topic=%2Fcom.netapp.doc.pow-csp%2FGUID-0F81B700-7B79-456F-9C89-3A7D6451AEB6.html|NetApp Offiziell]] In diesem Beispiel ist Cluster01 (HA Pärchen) der Source und Cluster02 (Single Node) die Destination \\ **Lif's erstellen** \\ **Lif erstellen auf Knoten 1 im Cluster 1** cluster1::> network interface create -vserver cluster1 -lif inter1_1 -role intercluster -home-node cluster1-01 -home-port e0f -address 192.168.1.101 -netmask 255.255.255.0 -status-admin up -failover-policy local-only -firewall-policy intercluster \\ **Lif erstellen auf Knoten 2 im Cluster 1** cluster1::> network interface create -vserver cluster1 -lif inter1_2 -role intercluster -home-node cluster1-02 -home-port e0f -address 192.168.1.102 -netmask 255.255.255.0 -status-admin up -failover-policy local-only -firewall-policy intercluster \\ **Lif erstellen auf dem Knoten 1 im Cluster 2** cluster2::> network interface create -vserver cluster2 -lif inter1_1 -role intercluster -home-node cluster2-01 -home-port e0f -address 192.168.1.110 -netmask 255.255.255.0 -status-admin up -failover-policy local-only -firewall-policy intercluster \\ ===== Snapmirror ===== **Snapmirror anlegen**\\ Dies muss auf dem Ziel durchgeführt werden cluster2::> snapmirror create -source-path svm1:vol_src01 -destination-path svm1_clust2:vol_dest01 -vserver svm1_clust2 -throttle unlimited -type XDP -policy MirrorAllSnapshots -schedule hourly cluster2::> snapmirror create -source-path svm1:vol_srv01 -destination-path svm1_clust2:vol_dest01 -vserver svm1_clust2 -throttle unlimited -type XDP cluster2::> snapmirror initialize -destination-path svm1_clust2:vol_dest01 \\ **Anzeigen auf dem Source welche Snapmirror es gibt bzw. von him ziehen** snapmirror list-destinations \\ **Snapmirror aufbrechen auf der Destination** cluster2::> snapmirror break -destination-path svm1_clust2:vol_dest01 \\ **Snapmirror sync nach einem aufbrechen** \\ Nach dem Broken-Off den Sync in der gleichen konstelation wieder aufnehmen \\ Snapmirror umdrehen \\ Snapmirror nach dem Broken-Off umdrehen da die STBY Seite das Volume übernommen hat.\\ Danach ist der alte Source die neue Destination\\ snapmirror resync -destination-path svm1:vol_src1 -source-path svm1_clust2:vol_dest1 \\ \\ Möchte man dies wieder auf den original Stand zurück stellen musss man das gleiche wieder mit einem Broken-Off und einem resync machen.\\ Dies macht man einfach so: cluster1::> snapmirror break -destination-path svm1:vol_src1 cluster2::> snapmirror resync -destination-path svm1_clust2:vol_dest1 -source-path svm1:vol_src1 \\ Unterbrechen eines Snapmirrors cluster2::> snapmirror quiesce -destination-path svm1_clust2:vol_dest1 \\ Nach einer Unterbrechen wieder starten cluster2::> snapmirror resume -destination-path svm1_clust2:vol_dest1 \\ ====== Trident ====== Um Trident für Kubernetes einzusetzten müssen ein paar Dinge auf der NetApp konfiguriert werden.\\ Hier verwende ich das Beispiel das wir für uns durchgeführt haben. ===== Vserver anlegen ===== vserver create -vserver ont_k8_test_trident_01 -subtype default -rootvolume root_ont_k8_test_trident_01 -rootvolume-security-style unix -language C.UTF-8 -snapshot-policy default -data-services data-iscsi,data-nfs,data-cifs,data-flexcache -foreground true -aggregate aggr_sata_01n2 -comment "Fuer ONTEC K8S Test Cluster" -aggr-list aggr_sata_01n2 -max-volumes 50 \\ ===== Vserver NFS Service konfigurieren ===== vserver nfs create -vserver ont_k8_test_trident_01 -access true -v3 enabled -v4.0 enabled -tcp enabled -v4.0-acl disabled -v4.0-read-delegation disabled -v4.0-write-delegation disabled -v4-id-domain defaultv4iddomain.com -v4-grace-seconds 45 -v4-acl-preserve enabled -v4.1 enable -rquota disabled -v4.1-acl disabled -vstorage disabled -v4-numeric-ids enabled -v4.1-read-delegation disabled -v4.1-write-delegation disabled -mount-rootonly enabled -nfs-rootonly disabled -permitted-enc-types des,des3,aes-128,aes-256 -showmount enabled -name-service-lookup-protocol udp -idle-connection-timeout 360 -allow-idle-connection disabled -v3-hide-snapshot disabled -showmount-rootonly disabled \\ ===== Vserver Global Export Policy anlegen ===== export-policy rule create -vserver ont_k8_trident_01 -policyname default -clientmatch 0.0.0.0/0 -rorule any -rwrule any -allow-suid true -allow-dev true -protocol any -superuser any -ruleindex 1 \\ ===== Firewall Policy anlegen ===== system services firewall policy create -vserver ont_k8_test_trident_01 -policy fp_k8s_trident -service dns -allow-list 0.0.0.0/0 system services firewall policy create -vserver ont_k8_test_trident_01 -policy fp_k8s_trident -service ndmp -allow-list 0.0.0.0/0 system services firewall policy create -vserver ont_k8_test_trident_01 -policy fp_k8s_trident -service ndmps -allow-list 0.0.0.0/0 system services firewall policy create -vserver ont_k8_test_trident_01 -policy fp_k8s_trident -service portmap -allow-list 0.0.0.0/0 system services firewall policy create -vserver ont_k8_test_trident_01 -policy fp_k8s_trident -service http -allow-list 0.0.0.0/0 onstore03::> system services firewall policy show -vserver ont_k8_test_trident_01 Vserver Policy Service Allowed ------- ------------ ---------- ------------------- ont_k8_test_trident_01 fp_k8s_trident dns 0.0.0.0/0 http 0.0.0.0/0 ndmp 0.0.0.0/0 ndmps 0.0.0.0/0 portmap 0.0.0.0/0 \\ ===== Lif anlegen (Data und MGT für Trident) ===== network interface create -vserver ont_k8_test_trident_01 -lif lif_ont_k8_test_trident_01 -service-policy default-data-files -role data -data-protocol nfs,cifs,fcache -address 10.27.8.131 -netmask 255.255.255.0 -home-node onstore03n2 -home-port a0a-1008 -status-admin up -failover-policy system-defined -firewall-policy fp_k8s_trident -auto-revert false -failover-group br_1008 onstore03::> net int sh -vserver ont_k8_test_trident_01 (network interface show) Logical Status Network Current Current Is Vserver Interface Admin/Oper Address/Mask Node Port Home ----------- ---------- ---------- ------------------ ------------- ------- ---- ont_k8_test_trident_01 lif_ont_k8_test_trident_01 up/up 10.27.8.131/24 onstore03n2 a0a-1008 true \\ ===== Service Policy anlegen und lif zuweisen ===== set advanced network interface service-policy create -policy sp_k8s_trident -allowed-addresses 0.0.0.0/0 -vserver ont_k8_test_trident_01 -services management-https data-nfs data-cifs data-core data-flexcache data-iscsi set admin onstore03::> net interface service-policy show -vserver ont_k8_test_trident_01 (network interface service-policy show) Vserver Policy Service: Allowed Addresses --------- -------------------------- ---------------------------------------- ont_k8_test_trident_01 default-data-blocks data-core: 0.0.0.0/0 data-iscsi: 0.0.0.0/0 default-data-files data-core: 0.0.0.0/0 data-nfs: 0.0.0.0/0 data-cifs: 0.0.0.0/0 data-flexcache: 0.0.0.0/0 default-management data-core: 0.0.0.0/0 management-ssh: 0.0.0.0/0 management-https: 0.0.0.0/0 sp_k8s_trident data-core: 0.0.0.0/0 data-nfs: 0.0.0.0/0 data-cifs: 0.0.0.0/0 data-flexcache: 0.0.0.0/0 data-iscsi: 0.0.0.0/0 management-https: 0.0.0.0/0 net interface modify -vserver ont_k8_test_trident_01 -lif lif_ont_k8_test_trident_01 -service-policy sp_k8s_trident ===== User für Trident vorbereiten ===== security login password -username vsadmin -vserver ont_k8_test_trident_01 security login unlock -username vsadmin -vserver ont_k8_test_trident_01 onstore03::> security login show -vserver ont_k8_test_trident_01 Vserver: ont_k8_test_trident_01 Second User/Group Authentication Acct Authentication Name Application Method Role Name Locked Method -------------- ----------- ------------- ---------------- ------ -------------- vsadmin http password vsadmin no none vsadmin ontapi password vsadmin no none vsadmin ssh password vsadmin no none \\ ===== Trident Json ===== Für Kubernetes kann man dann dieses JSON dafür verwenden { "version": 1, "storageDriverName": "ontap-nas", "managementLIF": "10.27.8.129", "dataLIF": "10.27.8.129", "svm": "ont_k8_test_trident_01", "username": "vsadmin", "password": "ASDF!!!", "nfsMountOptions": "nfsvers=3", "autoExportPolicy": true, "autoExportCIDRs": ["10.27.8.0/24"] } \\ ===== Cluster Peering ===== \\ **Cluster Peer Anfrage auf von Cluster1 auf Cluster2 stellen (PW setzten – irgendwas wird nur einmal gebraucht)** cluster1::> cluster peer create -peer-addrs Beispiel: onstore03::> cluster peer create -peer-addrs 172.25.1.21,172.25.1.22 -generate-passphrase -offer-expiration 2days Notice: Passphrase: gapasdfjleigSgVyk+79WEby Expiration Time: 12/20/2019 16:09:08 +01:00 Initial Allowed Vserver Peers: - Intercluster LIF IP: 172.25.1.24 Peer Cluster Name: estore Warning: make a note of the passphrase - it cannot be displayed again. \\ **Cluster Peer Anfrage von Cluster2 auf Cluster1 stellen (PW muss gleich sein)** cluster2::> cluster peer create -peer-addrs Beispiel: estore::> cluster peer create -peer-addrs 172.25.1.23,172.25.1.24 Notice: Use a generated passphrase or choose a passphrase of 8 or more characters. To ensure the authenticity of the peering relationship, use a phrase or sequence of characters that would be hard to guess. Enter the passphrase: Confirm the passphrase: \\ **Anzeigen des Cluster Peerings** cluster1::> cluster peer show Peer Cluster Name Cluster Serial Number Availability Authentication ------------------------- --------------------- -------------- -------------- cluster2 1-80-000008 Available ok cluster2::> cluster peer show Peer Cluster Name Cluster Serial Number Availability Authentication ------------------------- --------------------- -------------- -------------- cluster1 \\ **Anzeigen des Peer Status** cluster peer show cluster peer show -instance cluster peer health show \\ ===== Vserver peering ===== \\ Jetzt müssen noch die Vserver verbunden werden damit dann später ein Snapmirror funktionieren kann. Dies muss man nur auf einem System machen. **SVM Peering von Cluster1 auf Cluster 2** cluster1::> vserver peer create -vserver svm1 -peer-vserver svm1_clust2 -applications snapmirror -peer-cluster cluster2 Anzegen des SVM Peerings cluster1::> vserver peer show Peer Peer Peering Remote Vserver Vserver State Peer Cluster Applications Vserver ----------- ----------- ------------ ----------------- -------------- --------- svm1 svm1_clust2 initializing cluster2 snapmirror svm1_clust2 cluster2::> vserver peer show Peer Peer Peering Remote Vserver Vserver State Peer Cluster Applications Vserver ----------- ----------- ------------ ----------------- -------------- --------- svm1_clust2 svm1 pending cluster1 snapmirror svm1 \\ ====== Monitoring ====== **Anzeigen der globalen Systemauslastung** system node run -node sysstat -usx Beispiel: system node run -node sim-cluster-01 sysstat -usx \\ **Auslastung und Durchsatz allgemein** statistics disk show (-interval 5 -iterations 5) statistics aggregate show (-interval 5 -iterations 5) statistics volume show (-interval 5 -iterations 5) statistics lun show (-interval 5 -iterations 5) \\ **Auslastung der einzelnen Spindeln (advanced user)** statistics disk show -sort-key disk_busy statistics disk show -sort-key disk_busy -interval 5 -iterations 5 statistics disk show -sort-key disk_busy -interval 30 -iterations 1 \\ **Durchsatz der einzelnen Spindeln (advanced user)** Latency in Microsekunden Bps = Bytes per secound statistics disk show -sort-key operation_latency \\ **Anzeige der top Clients** statistics top client show \\ **Anzeigen der top Files** statistics top file show \\ **Ausgabe von sehr genauen Stats (sehr viel Info)**\\ ACHTUNG! Nicht vergessen diesen Job wieder zu stoppen!\\ set -privilege advanced statistics start –object resource_headroom_cpu|aggr statistics show –object resource_headroom_cpu|aggr statistics stop -sample-id statistics start -preset statit statistics start stop statistics show -preset statit -counter disk_busy \\ ==== Cache Stats ==== Diag Modus only \\ Cache Stats starten statistics start -sample-id test -object ext_cache_obj -counter inserts|hit_percent -duration 10 \\ Cache Stats ansehen statistics show -sample-id test \\ Sample löschen statistics samples delete -sample-id test \\ \\ ====== Autosuport ====== ** Anzeigen der aktuellen Einstellungen** node autosupport show \\ ** Aktivieren vom Autosuppor inkl. Einstellungen** node autosupport modify -node -state enable -mail-hosts -from -to -support enable -transport https Beispiel: node autosupport modify -node storage1 -state enable -mail-hosts 192.168.123.15 -from netapp@ich.at -to to@ich.at -support enable -transport https \\ ** Wohin wird überall versendet** node autosupport destinations show \\ ** Autosupport Check** system node autosupport check show system node autosupport check show-details \\ ** Anzeigen der History ** system node autosupport history show \\ ** Senden einer fehlgeschlagenen Nachricht ** system node autosupport history retransmit \\ ** Versenden einer Message für einen Upgrade ** system node autosupport invoke -node onstore03n1 -type test -message Systemupdate ===== Autosuport Download ===== Falls man ein Autosupport Bundle erstellen und runterladen muss, geht man so vor. \\ ==== Autosupport erstellen ==== autosupport invoke -node * -type all -message "invoke.all" -uri file:///mroot/etc/log/retransmit/body.7z \\ Bis alle Daten gesammelt wurden kannes einige Zeit dauern. \\ So kann man sich einen Überblick verschaffen autosupport history show autosupport history show -node -seq-num <####> \\ ==== Download vom Autosupport ==== https:///spi//etc/log/retransmit/ Beispiel: https://172.22.3.8/spi/Storage01n1/etc/log/retransmit/ \\ ====== Cluster (nicht MetroCluster!) ====== Kurzer Check vor dem Failover network interface show -failover-policy disabled storage failover show system health config show \\ Takeover von Node 2 auf Node 1 storage failover takeover -ofnode \\ **Giveback von Node2 auf Node1** storage failover giveback –ofnode \\ **Cluster DBs kontrollieren(diag mode)** cluster ring show \\ Disable HA to be able to disable cluster failover: cluster ha modify -configured false Warning: This operation will unconfigure cluster HA. Cluster HA must be configured on a two-node cluster to ensure data access availability in the event of storage failover. Do you want to continue? {y|n}: y Notice: HA is disabled. storage failover modify -enabled false -node estore01 storage failover modify -enabled false -node estore02 ====== MetroCluster ====== **Status anuzeigen des MetroClusters** metrocluster node show metrocluster operation show === MetroCluster takeover und giveback === Um dies durchzuführen sind ein paar Schritte mehr nötig als unter dem 7-Mode.\\ \\ **Takeover bzw. Switchover**\\ Health Check davor (Es müssen nicht alle Befehle immer durchgeführt werden jedoch die ersten 4 sind immer anzuraten): metrocluster show system health config show metrocluster node show metrocluster interconnect mirror show metrocluster check run metrocluster check aggregate show metrocluster check cluster show metrocluster check lif show metrocluster check node show metrocluster check config-replication show metrocluster vserver show metrocluster check enable-periodic-check \\ ** Switchover (erst wenn die ersten vier Schritte kontrolliert worden sind)** metrocluster switchover \\ **Switchback (hier sind einige Punkte zu beachten)**\\ Auf der noch laufenden Node sind dies Befehle durchzuführen. Diese sollten jedoch kurz bevor man den Giveback vor hat durchführen. metrocluster heal -phase aggregate metrocluster heal -phase root-aggregate metrocluster operation show \\ Danach muss man sich via dem Services Prozessor auf der aktuell abgeschalteten Nodes anmelden ssh -l admin SP> system console boot_ontap \\ ONTAP bootet eine Zeit lang. Dies kann man sehr gut über den Service Prozessor sehen. Ist die Node erfolgreich gestartet ist es empfohlen 3-5 Minuten zu warten bis man den Switchback durchführt. \\ Switchback (auszuführen auf der Node die noch aktiv ist): metrocluster show metrocluster vserver show -cluster metrocluster switchback \\ ====== ONTAP Mediator ====== ONTAP Mediator kann auf er Webseite runtergeladen werden. Dieser sollte auf dienem dritten Standort laufen. \\ Installiert wird dieser auf einer Linux VM. Siehe dazu die Doku von NetApp. \\ ==== Mediator am Metrocluster konfigurieren ==== metrocluster configuration-settings mediator add -mediator-address Beispiel: SuperCluster01::> metrocluster configuration-settings mediator add -mediator-address 172.11.11.11 Adding the mediator and enabling Automatic Unplanned Switchover. It may take a few minutes to complete. Please enter the username for the mediator: mediatoradmin Please enter the password for the mediator: Confirm the mediator password: Successfully added the mediator. \\ Danach ist der Mediator registiert SuperCluster::> metrocluster configuration-settings mediator show Mediator IP Port Node Configuration Connection Status Status --------------- ------- ----------------------- ------------- ----------- 172.11.11.11 31784 Node01 true true Node02 true true Node03 true true Node04 true true SuperCluster::> storage disk show -container-type mediator Usable Disk Container Container Disk Size Shelf Bay Type Type Name Owner ---------------- ---------- ----- --- ------- ----------- --------- -------- NET-1.1 - - - VMDISK mediator - Node01 NET-1.2 - - - VMDISK mediator - Node02 NET-1.3 - - - VMDISK mediator - Node03 NET-1.4 - - - VMDISK mediator - Node04 4 entries were displayed. \\ Danach sollte man noch die ONTAP Doku checken da es für das Umschalten vom Cluster noch ein paar Optionen gibt. \\ ====== Verschlüsselung ====== Verschlüssung von Aggregaten bzw. Volumes ===== Anzeigen der verschlüsselten Aggrs ===== aggr show -fields encrypt-with-aggr-key \\ ===== Anzeigen der verschlüsselten Volumes ===== vol show -fields encrypt \\ ===== Anzeigen Verschlüsselungs Jobs ===== vol encryption conversion show \\ ===== Anzeigen der Verschlüsslungskeys ===== security key-manager show \\ ===== NAE Aggr erstellen ===== Neues verschlüsseltes Aggr erstellen aggr create -aggregate test -encrypt-with-aggr-key true ....... \\ Bestehendes Aggr verschlüsselen. ACHTUNG! Sind schon Vol angelegt und sind diese nicht verschlüsselt muss dies davor gemacht werden. aggr modify -aggregate aggr_sas_01n1 -encrypt-with-aggr-key true \\ ====== Logs ====== **Anzeigen der Logs der letzten 10 Minuten** event log show -time >10m \\ ====== Health ====== **Anzeigen der Health Alert Logs** system health config show system health subsystem show \\ Mehr Details: system health subsystem show -instance \\ **Anzeigen der letzten Alert Logs** system health alert show \\ Wenn die NetApp einmal einen Error in den Logs hatte bleibt dieser auch so lange bestehen bis man diesen gelöscht hat. Dies passiert auch bei jedem Metrocluster Switch. Hier wird auch das Monitoring (Checkmk) immer rot bleiben.\\ \\ **Löschen der Fehler aus dem Log**\\ (Sehr brutale Methode) system health alert delete -monitor * -alert-id * \\ **Sensor Daten** \\ system node environment sensors show system node run -node -command environment chassis list-sensors \\ ====== Firmware ====== **Anzeigen der physischen Disken (Modell und Firmware)** storage disk show -physical storage show disk \\ **Anzeigen des Update-Status von Disken** disk firmware show-update-status \\ **Kontrolle des Disk Qual Firmware Packs** node run -node * -command rdfile /etc/qual_devices_v3 \\ **Anzeigen der aktuell Shelf Firmware** node run -node * sysconfig -a \\ ====== User ====== **Anzeigen der User und dessen Berechtigungen** security login show \\ **Anlegen von Users für ein CheckMk Monitoring** security login create -user-or-group-name monitoring -application http -authentication-method password -role readonly security login create -user-or-group-name monitoring -application ontapi -authentication-method password -role readonly \\ **Anlegen eines SSH Keys für den User Admin**\\ Danach kann sich der User Admin entweder mit PW oder mit Key anmelden. Es ist nicht beides erforderlich.\\ security login modify -user-or-group-name admin -application ssh -authentication-method password -second-authentication-method publickey security login publickey create -username admin -index 0 -publickey "SSH-Key" security login modify -user-or-group-name admin -application ssh -authentication-method password -second-authentication-method none \\ ====== Upgrade Disk Firmware ====== ===== Disk Firmware Anzeigen ===== Anzeigen der Disk Firmware storage disk show -fields disk,type,model,firmware-revision,usable-size \\ ===== Disk Firmware Update ===== set -privilege advanced storage firmware download -node * -package-url http:///path/all.zip storage disk firmware update -node storage disk firmware show-update-status \\ ===== Disk Qual Pack ===== ==== Qual Pack Version anzeigen ==== node run -node -command rdfile /etc/qual_devices_v3 \\ ==== Qual Pack installieren ==== set -privilege advanced storage firmware download -node * -package-url http:///path/qual_devices.zip \\ ===== Shutdown ===== ==== Shutdown Local Cluster ==== system node autosupport invoke -node * -type all -message "MAINT=8h Power Maintenance" system node halt -node * -skip-lif-migration-before-shutdown true -ignore-quorum-warnings true -inhibit-takeover true \\ ==== Shutdown Metro Cluster ====