storage:netapp:ontap9
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| storage:netapp:ontap9 [2022/12/15 14:17] – stone | storage:netapp:ontap9 [2024/09/26 08:37] (current) – stone | ||
|---|---|---|---|
| Line 130: | Line 130: | ||
| Wenn Autoupdate auf true steht sollte innerhalb der nächsten 30 Minuten das Update automatisch durchgeführt werden. \\ | 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.\\ | 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. | Wenn Autoupdate auf true steht man jedoch trotzdem nicht warten möchte kann man das Update auch manuell durchführen. | ||
| Line 333: | Line 337: | ||
| </ | </ | ||
| + | \\ | ||
| + | WICHTIG! \\ | ||
| + | Wird ein Volume angelegt das als CIFS Share verwendet werden soll muss man den security-style vom Vol auf NTFS stellen. | ||
| \\ | \\ | ||
| Line 919: | Line 926: | ||
| < | < | ||
| vol modify -vserver < | vol modify -vserver < | ||
| + | </ | ||
| + | \\ | ||
| + | |||
| + | Hat man CIFS im Einsatz muss hier am Share selbst auch noch etwas tun damit der Verzeichnis angezeigt wird | ||
| + | < | ||
| + | cifs share properties add -vserver < | ||
| </ | </ | ||
| Line 1114: | Line 1127: | ||
| **Lif erstellen auf dem Knoten 1 im Cluster 2** | **Lif erstellen auf dem Knoten 1 im Cluster 2** | ||
| < | < | ||
| + | \\ | ||
| + | |||
| + | |||
| + | ===== Snapmirror ===== | ||
| + | |||
| + | |||
| + | **Snapmirror anlegen**\\ | ||
| + | Dies muss auf dem Ziel durchgeführt werden | ||
| + | < | ||
| + | |||
| + | cluster2::> | ||
| + | |||
| + | cluster2::> | ||
| + | </ | ||
| + | \\ | ||
| + | |||
| + | **Anzeigen auf dem Source welche Snapmirror es gibt bzw. von him ziehen** | ||
| + | < | ||
| + | \\ | ||
| + | |||
| + | **Snapmirror aufbrechen auf der Destination** | ||
| + | < | ||
| + | \\ | ||
| + | |||
| + | **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\\ | ||
| + | < | ||
| + | \\ | ||
| + | \\ | ||
| + | |||
| + | 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: | ||
| + | < | ||
| + | cluster2::> | ||
| + | \\ | ||
| + | |||
| + | Unterbrechen eines Snapmirrors | ||
| + | < | ||
| + | \\ | ||
| + | |||
| + | |||
| + | Nach einer Unterbrechen wieder starten | ||
| + | < | ||
| + | \\ | ||
| + | |||
| + | |||
| + | ====== 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, | ||
| + | </ | ||
| + | \\ | ||
| + | |||
| + | ===== 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, | ||
| + | </ | ||
| + | \\ | ||
| + | |||
| + | ===== 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::> | ||
| + | Vserver Policy | ||
| + | ------- ------------ ---------- ------------------- | ||
| + | ont_k8_test_trident_01 | ||
| + | fp_k8s_trident | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | </ | ||
| + | \\ | ||
| + | |||
| + | ===== 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, | ||
| + | |||
| + | onstore03::> | ||
| + | (network interface show) | ||
| + | Logical | ||
| + | Vserver | ||
| + | ----------- ---------- ---------- ------------------ ------------- ------- ---- | ||
| + | ont_k8_test_trident_01 | ||
| + | lif_ont_k8_test_trident_01 | ||
| + | | ||
| + | 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::> | ||
| + | (network interface service-policy show) | ||
| + | Vserver | ||
| + | --------- -------------------------- ---------------------------------------- | ||
| + | ont_k8_test_trident_01 | ||
| + | default-data-blocks | ||
| + | | ||
| + | |||
| + | default-data-files | ||
| + | | ||
| + | | ||
| + | | ||
| + | |||
| + | default-management | ||
| + | | ||
| + | | ||
| + | |||
| + | sp_k8s_trident | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | |||
| + | |||
| + | |||
| + | 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::> | ||
| + | |||
| + | Vserver: ont_k8_test_trident_01 | ||
| + | | ||
| + | User/ | ||
| + | Name | ||
| + | -------------- ----------- ------------- ---------------- ------ -------------- | ||
| + | vsadmin | ||
| + | vsadmin | ||
| + | vsadmin | ||
| + | </ | ||
| + | \\ | ||
| + | |||
| + | ===== Trident Json ===== | ||
| + | Für Kubernetes kann man dann dieses JSON dafür verwenden | ||
| + | < | ||
| + | { | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | } | ||
| + | </ | ||
| \\ | \\ | ||
| Line 1200: | Line 1393: | ||
| - | ===== Snapmirror ===== | ||
| - | |||
| - | |||
| - | **Snapmirror anlegen**\\ | ||
| - | Dies muss auf dem Ziel durchgeführt werden | ||
| - | < | ||
| - | |||
| - | cluster2::> | ||
| - | |||
| - | cluster2::> | ||
| - | </ | ||
| - | \\ | ||
| - | |||
| - | **Anzeigen auf dem Source welche Snapmirror es gibt bzw. von him ziehen** | ||
| - | < | ||
| - | \\ | ||
| - | |||
| - | **Snapmirror aufbrechen auf der Destination** | ||
| - | < | ||
| - | \\ | ||
| - | |||
| - | **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\\ | ||
| - | < | ||
| - | \\ | ||
| - | \\ | ||
| - | |||
| - | 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: | ||
| - | < | ||
| - | cluster2::> | ||
| - | \\ | ||
| - | |||
| - | Unterbrechen eines Snapmirrors | ||
| - | < | ||
| - | \\ | ||
| - | |||
| - | |||
| - | Nach einer Unterbrechen wieder starten | ||
| - | < | ||
| - | \\ | ||
| Line 1301: | Line 1449: | ||
| </ | </ | ||
| \\ | \\ | ||
| + | |||
| + | ==== 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 | ||
| + | </ | ||
| + | \\ | ||
| + | \\ | ||
| + | |||
| + | |||
| Line 1378: | Line 1549: | ||
| \\ | \\ | ||
| ====== Cluster (nicht MetroCluster!) ====== | ====== 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 | Takeover von Node 2 auf Node 1 | ||
| Line 1516: | Line 1696: | ||
| Danach sollte man noch die ONTAP Doku checken da es für das Umschalten vom Cluster noch ein paar Optionen gibt. | 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 ====== | ====== Logs ====== | ||
| **Anzeigen der Logs der letzten 10 Minuten** | **Anzeigen der Logs der letzten 10 Minuten** | ||
| Line 1527: | Line 1750: | ||
| < | < | ||
| system health subsystem show</ | system health subsystem show</ | ||
| + | \\ | ||
| + | |||
| + | Mehr Details: | ||
| + | < | ||
| + | system health subsystem show -instance | ||
| + | </ | ||
| \\ | \\ | ||
| Line 1534: | Line 1763: | ||
| 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.\\ | 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**\\ | **Löschen der Fehler aus dem Log**\\ | ||
| Line 1593: | Line 1823: | ||
| < | < | ||
| storage disk show -fields disk, | storage disk show -fields disk, | ||
| - | </ | ||
| - | \\ | ||
| - | |||
| - | ===== Disk Qual Pack ===== | ||
| - | Qual Pack installieren | ||
| - | < | ||
| - | set -privilege advanced | ||
| - | storage firmware download -node * -package-url http://< | ||
| </ | </ | ||
| \\ | \\ | ||
| Line 1611: | Line 1833: | ||
| storage disk firmware show-update-status | storage disk firmware show-update-status | ||
| </ | </ | ||
| - | |||
| \\ | \\ | ||
| - | ====== Upgrade ONTAP ====== | + | ===== Disk Qual Pack ===== |
| - | ===== Allgemein | + | ==== Qual Pack Version anzeigen |
| - | Am besten man geht in den Active IQ unter [[https:// | + | |
| - | \\ | + | |
| - | + | ||
| - | ===== Update ===== | + | |
| - | Das Update von einem Single Cluster ist im Grunde recht simpel. \\ | + | |
| - | Befolgen der Anweisungen vom Active IQ. \\ | + | |
| - | \\ | + | |
| - | + | ||
| - | ===== Repository ===== | + | |
| - | Anzeigen der Images im local Repo und eventuell löschen von alten Images. | + | |
| < | < | ||
| - | cluster image package show-repository | + | node run -node <node> -command rdfile / |
| - | cluster image package delete -version | + | |
| </ | </ | ||
| \\ | \\ | ||
| - | ===== ONTAP Image Download | + | ==== Qual Pack installieren |
| - | Download vom ONTAP Image auf die Nodes | + | |
| < | < | ||
| - | cluster image package | + | set -privilege advanced |
| + | storage firmware download -node * -package-url http://<web-server>/ | ||
| </ | </ | ||
| \\ | \\ | ||
| - | ===== Autosupport ===== | ||
| - | Dem Autosupport eine Startmeldung geben | ||
| - | < | ||
| - | autosupport invoke -node * -type all -message "MAINT Starting_NDU" | ||
| - | </ | ||
| - | \\ | ||
| - | ===== Update Validieren ===== | ||
| - | Update Check | ||
| - | < | ||
| - | cluster image validate -version < | ||
| - | </ | ||
| - | \\ | ||
| - | Update | + | |
| + | |||
| + | ===== Shutdown ===== | ||
| + | ==== Shutdown Local Cluster ==== | ||
| < | < | ||
| - | cluster image update | + | system node autosupport invoke |
| - | cluster image update | + | system node halt -node * -skip-lif-migration-before-shutdown true -ignore-quorum-warnings true -inhibit-takeover true |
| - | cluster image show-update-progress | + | |
| </ | </ | ||
| - | \\ | ||
| - | ===== Autosupport ===== | ||
| - | Dem Autosupport eine Endemeldung geben | ||
| - | < | ||
| - | autosupport invoke -node * -type all -message "MAINT END" | ||
| - | </ | ||
| \\ | \\ | ||
| + | ==== Shutdown Metro Cluster ==== | ||
storage/netapp/ontap9.1671113845.txt.gz · Last modified: by stone
