Pemilik komponen yang dapat dioperasikan: FILE
Profil keterampilan: engineer deployment Halaman ini memberikan petunjuk untuk menyiapkan penyimpanan file dan blok untuk cluster menggunakan NetApp ONTAP.16.1. Mengonfigurasi switch cluster ONTAP
Periksa sandi
switch-xx-ad-stgesw01-admindanswitch-xx-ad-stgesw02-admin(keduanya akan memiliki nilai yang sama). Jika sandi tidak ada, inisialisasi kredensial dan buat sandi acak baru. Login ke switch melalui konsol untuk menyetel sandi administrator:# configure terminal # username ADMIN_USER password PASSWORD # exit # copy running-config startup-configSimpan kredensial di Secret dan tambahkan ke
cell.yamlapiVersion: v1 kind: Secret metadata: name: netapp-ontap-cluster-switch-credential namespace: gpc-system type: Opaque stringData: username: ADMIN_USER password: PASSWORDJalankan perintah berikut untuk mendapatkan nama switch penyimpanan:
kubectl get storageswitch -n gpc-systemAnda akan melihat output yang mirip dengan berikut ini:
NAME AGE MANAGEMENTIP kb-ab-stgesw01 10d 192.0.2.0 kb-ab-stgesw02 10d 192.0.2.1Untuk setiap switch, lakukan langkah-langkah berikut dan gunakan nama switch.
Jalankan perintah berikut untuk mengambil konfigurasi switch dari CR
switchstaticconfig:kubectl get switchstaticconfigs -n gpc-system $SWITCH_NAME-static-config -o yaml | /root/release/scripts/yq_linux_amd64 '.spec.config'Anda akan melihat output yang mirip dengan berikut ini:
banner motd ! ****************************************************************************** * NetApp Reference Configuration File (RCF) * * Switch : Nexus N9K-C9336C-FX2 * Filename : Nexus-9336C-RCF-v1.8-Cluster.txt * Date : 11-01-2021 * Version : v1.8 * * Port Usage: * Ports 1- 3: Breakout mode (4x10G) Intra-Cluster/HA Ports, int e1/1/1-4, e1/2/1-4, e1/3/1-4 * Ports 4- 6: Breakout mode (4x25G) Intra-Cluster/HA Ports, int e1/4/1-4, e1/5/1-4, e1/6/1-4 * Ports 7-34: 40/100GbE Intra-Cluster/HA Ports, int e1/7-34 * Ports 35-36: Intra-Cluster ISL Ports, int e1/35-36 * * Dynamic breakout commands: * 10G: interface breakout module 1 port <range> map 10g-4x * 25G: interface breakout module 1 port <range> map 25g-4x * * Undo breakout commands and return interfaces to 40/100G configuration in config mode: * no interface breakout module 1 port <range> map 10g-4x * no interface breakout module 1 port <range> map 25g-4x * interface Ethernet <interfaces taken out of breakout mode> * inherit port-profile CLUSTER * priority-flow-control mode auto * service-policy type qos type input ROCE_QOS * exit * * This RCF supports Clustering, HA, RDMA, and DCTCP using a single port profile. * ****************************************************************************** ! conf t ! interface breakout module 1 port 1-3 map 10g-4x interface breakout module 1 port 4-6 map 25g-4x ! feature lacp feature lldp feature ssh feature sftp-server feature scp-server ! vlan 17,18 exit ! cdp enable cdp advertise v1 cdp timer 5 system default switchport no system default switchport shutdown snmp-server community cshm1! group network-operator errdisable recovery interval 30 port-channel load-balance src-dst ip-l4port-vlan no ip domain-lookup logging console 1 ! ! class-map type qos match-any HA match dscp 40 match cos 5 ! class-map type qos match-any RDMA match dscp 16 match cos 2 ! class-map type qos match-any CT match dscp 0 match cos 0 ! policy-map type qos ROCE_QOS class type qos HA set qos-group 5 class type qos RDMA set qos-group 2 class type qos class-default set qos-group 0 ! class-map type network-qos HA_NETQOS match qos-group 5 ! class-map type network-qos RDMA_NETQOS match qos-group 2 ! class-map type network-qos CT_NETQOS match qos-group 0 ! policy-map type queuing ROCE_QUEUING class type queuing c-out-8q-q7 priority level 1 class type queuing c-out-8q-q6 bandwidth remaining percent 0 class type queuing c-out-8q-q5 bandwidth remaining percent 43 random-detect threshold burst-optimized ecn class type queuing c-out-8q-q4 bandwidth remaining percent 0 class type queuing c-out-8q-q3 bandwidth remaining percent 0 class type queuing c-out-8q-q2 random-detect threshold burst-optimized ecn bandwidth remaining percent 28 class type queuing c-out-8q-q1 bandwidth remaining percent 0 class type queuing c-out-8q-q-default bandwidth remaining percent 28 random-detect threshold burst-optimized ecn ! policy-map type network-qos NETQOS class type network-qos HA_NETQOS pause pfc-cos 5 mtu 9216 class type network-qos RDMA_NETQOS pause pfc-cos 2 mtu 9216 class type network-qos CT_NETQOS mtu 9216 ! system qos service-policy type network-qos NETQOS service-policy type queuing output ROCE_QUEUING ! copp profile strict ! ! !********** Port Profiles ********** ! port-profile type ethernet CLUSTER description 10/25/40/1000GbE Intra-Cluster/HA Nodes switchport mode trunk switchport trunk allowed vlan 1,17-18 spanning-tree port type edge trunk spanning-tree bpduguard enable mtu 9216 state enabled exit ! ! !********** Interfaces ********** ! interface e1/1/1-4, e1/2/1-4, e1/3/1-4, e1/4/1-4, e1/5/1-4, e1/6/1-4, e1/7-34 inherit port-profile CLUSTER priority-flow-control mode auto service-policy input ROCE_QOS exit ! !********** Intra-Cluster ISL ports ********** ! interface Ethernet1/35 description Intra-Cluster Switch ISL Port 1/35 (port channel) priority-flow-control mode auto switchport mode trunk switchport trunk allowed vlan 1 mtu 9216 channel-group 1 mode active no shutdown ! interface Ethernet1/36 description Intra-Cluster Switch ISL Port 1/36 (port channel) priority-flow-control mode auto switchport mode trunk switchport trunk allowed vlan 1 mtu 9216 channel-group 1 mode active no shutdown ! interface port-channel1 service-policy input ROCE_QOS priority-flow-control mode auto switchport mode trunk switchport trunk allowed vlan 1 mtu 9216 no shutdown ! !********** Set management ip ********** ! interface mgmt0 ip address 172.28.2.10/29 ! vrf context management ip route 0.0.0.0/0 mgmt0 172.28.2.9 ! hostname kb-ad-stgesw01 ! end ! !********** Save config ******* copy run start !Deploy konfigurasi switch yang diperoleh ke switch menggunakan kabel serial atau server konsol dengan menyalin dan menempelkan konten ke switch.
Konfigurasi ini mengasumsikan bahwa:
- Untuk A250: e0c/e0d di perangkat penyimpanan terhubung ke port 4-6 menggunakan kabel breakout.
- Untuk A400: e3a/e3b di perangkat penyimpanan terhubung ke port 7-34 menggunakan kabel 40GbE atau 100GbE (non-breakout).
- Untuk A800: e0a/e1a di perangkat penyimpanan terhubung ke port 7-34 menggunakan kabel 40GbE atau 100GbE (non-breakout).
Namun, hal ini mungkin tidak terjadi. Di banyak penginstalan, perangkat penyimpanan terhubung ke port 4-6, meskipun perangkatnya adalah A400 atau A800. Jika A400 atau A800 terhubung ke port 4-6, sesuaikan konfigurasi switch untuk menghapus baris berikut sebelum menerapkan:
interface breakout module 1 port 1-3 map 10g-4x interface breakout module 1 port 4-6 map 25g-4xKemudian, ganti baris ini:
interface e1/1/1-4, e1/2/1-4, e1/3/1-4, e1/4/1-4, e1/5/1-4, e1/6/1-4, e1/7-34Dengan ini:
interface e1/1-34Dengan perubahan ini, port 1-34 semuanya dikonfigurasi untuk kabel 40GbE atau 100GbE (non-breakout).
Selain itu, hapus baris berikut dari bagian banner MOTD pada konfigurasi untuk menghindari kemungkinan kebingungan di masa mendatang:
* Ports 1- 3: Breakout mode (4x10G) Intra-Cluster/HA Ports, int e1/1/1-4, e1/2/1-4, e1/3/1-4 * Ports 4- 6: Breakout mode (4x25G) Intra-Cluster/HA Ports, int e1/4/1-4, e1/5/1-4, e1/6/1-4 * Ports 7-34: 40/100GbE Intra-Cluster/HA Ports, int e1/7-34Ganti baris ini dengan:
* Ports 1-34: 40/100GbE Intra-Cluster/HA Ports, int e1/1-34Konfirmasi CR objek ManagementSwitch.
Lihat objek
ManagementSwitchcluster KIND bootstrap dan temukan CR yang benar yang merepresentasikan switch yang menyimpan perangkat penyimpanan. Identifikasi switchport fisik pada switch pengelolaan, yang terhubung secara fisik ke switch penyimpanan, dan konfirmasi bahwa koneksi ini ada di CR ManagementSwitch di lacpGroups.Misalnya, jika koneksi pengelolaan ke switch penyimpanan terhubung ke port 10 dan 11 di switch pengelolaan, konfirmasi bahwa info berikut ada:
kind: ManagementSwitch spec: ... serverNetwork: ... lacpGroups: - - 10 - - 11Gunakan perintah berikut untuk mendapatkan lacpGroups:
kubectl get ManagementSwitchinternal <switch-name> --namespace=gpc-system -o=jsonpath='{.spec.serverNetwork.lacpGroups}'Contoh output akan terlihat seperti ini, sehingga Anda dapat mengonfirmasi keberadaan port:
[[1],[2],[3],[4],[5],[6]]
16.2. Menginisialisasi appliance ONTAP
Ulangi langkah-langkah berikut untuk setiap pengontrol pada sistem AFF 250/400/800. Setiap sistem memiliki dua pengontrol atau node.
Gunakan konsol serial dan nama pengguna default
adminuntuk terhubung ke node pengontrol penyimpanan.Verifikasi versi sistem NetApp ONTAP.
- Jalankan perintah
version. - Versi sistem NetApp ONTAP harus 9.15.1. Jika versinya lebih lama dari 9.15.1, upgrade node ke 9.15.1 sebelum bootstrap cluster admin org. Untuk mengetahui detailnya, lihat Panduan Upgrade.
- Jalankan perintah
Tetapkan alamat antarmuka IP interkoneksi cluster.
Pertama, temukan nilai
.spec.network.clusterInterconnectIPyang diharapkan untukStorageNodesaat ini di cellcfg.# Note, this command relies on yq, which can be downloaded from https://github.com/mikefarah/yq. # If you do not want to install yq, you can manually inspect cellcfg/*-storage.yaml to determine the IPs. cat cellcfg/*-storage.yaml | /root/release/scripts/yq_linux_amd64 'select(.kind == "StorageNode") | (.metadata.name, .spec.network.clusterInterconnectIP)'Menjalankan perintah sebelumnya akan mencetak nama semua
StorageNodedan nilai.spec.network.clusterInterconnectIP-nya. Contoh:aa-ad-stge01-01 169.254.0.1 --- aa-ad-stge01-02 169.254.0.3 --- aa-ad-stge02-01 169.254.0.5 --- aa-ad-stge02-02 169.254.0.7 --- aa-ad-stge03-01 169.254.0.9 --- aa-ad-stge03-02 169.254.0.11Dari contoh sebelumnya, untuk node
aa-ad-stge03-01, IP169.254.0.9dan169.254.0.10akan digunakan pada langkah-langkah berikut. Hal ini karena169.254.0.9adalah IP yang ditentukan dalam cellcfg untuk nodeaa-ad-stge03-01dan169.254.0.10adalah IP berikutnya (secara numerik) setelah169.254.0.9.Selanjutnya, periksa nilai IP interkoneksi cluster yang sebenarnya untuk node saat ini.
network interface showAnda akan melihat dua antarmuka jaringan yang dimulai dengan
169.254, mirip dengan output berikut:::> net int show (network interface show) Logical Status Network Current Current Is Vserver Interface Admin/Oper Address/Mask Node Port Home ----------- ---------- ---------- ------------------ ------------- ------- ---- Cluster clus1 up/up 169.254.19.166/16 localhost e3a true clus2 up/up 169.254.19.167/16 localhost e3b trueJika alamat untuk antarmuka
clus1cocok dengan nilai yang ditentukan dalam cellcfg dan alamat untuk antarmukaclus2adalah IP berikutnya setelah alamatclus1(secara numerik), Anda dapat melewati langkah ini dan melanjutkan ke langkah berikutnya.Jika Anda hanya melihat 1 antarmuka untuk vserver Cluster, jalankan
net port showuntuk memverifikasi bahwa port kedua sudah aktif dan berjalan. Jika demikian, berarti Anda melewatkan salah satu antarmuka dan Anda memiliki dua opsi untuk memperbaikinya:Opsi 1: Tambahkan IP interconnect secara manual dengan perintah berikut:
net interface create -vserver Cluster -lif clus2 -role cluster -address <interconnect-ip> -netmask 255.255.0.0 -home-node localhost -home-port <port>interconnect-ip: Pilih IP berikutnya (secara numerik) setelah IP interconnect cluster yang ditentukan dalam cellcfg untuk node saat ini. Misalnya, jika IP interkoneksi cluster yang ditentukan dalam cellcfg untuk node saat ini adalah
169.254.0.3, pilih169.254.0.4.port: Bergantung pada model ONTAP, port dapat berbeda. Anda harus memilih port yang tidak memiliki antarmuka yang ditampilkan dalam output sebelumnya.
- Untuk A250: pilih antara e0c dan e0d.
- Untuk A400: pilih antara e3a dan e3b.
- Untuk A800: pilih antara e0a dan e1a.
Opsi 2: Reset ke setelan pabrik node ONTAP (Opsi ini melibatkan config 9a dan 9b di menu boot ONTAP). Jalankan kembali perintah setelah reset untuk memeriksa apakah ada 2 IP. Perhatikan bahwa sebaiknya coba opsi 1 terlebih dahulu dan hanya beralih ke opsi 2 jika tidak berfungsi dengan benar.
Selanjutnya, perbarui IP interkoneksi
clus1menjadi nilaiclusterInterconnectIPyang ditentukan untuk node saat ini di cellcfg.net int modify -vserver Cluster -lif clus1 -address <interconnect-ip>- interconnect-ip: Nilai
clusterInterconnectIPyang ditentukan dalam cellcfg untuk node saat ini.
Selanjutnya, perbarui IP interkoneksi
clus2menjadi IP berikutnya (secara numerik) setelah nilaiclusterInterconnectIPyang ditentukan untuk node saat ini di cellcfg.net int modify -vserver Cluster -lif clus2 -address <next-interconnect-ip>- next-interconnect-ip: Pilih IP berikutnya (secara numerik) setelah IP interkoneksi cluster yang ditentukan dalam cellcfg untuk node saat ini. Misalnya, jika IP interkoneksi cluster yang ditentukan dalam cellcfg untuk node saat ini adalah
169.254.0.3, pilih169.254.0.4.
Terakhir, periksa nilai IP interkoneksi cluster yang sebenarnya untuk node saat ini agar cocok dengan nilai yang diharapkan dalam cellcfg.
network interface showAnda akan melihat dua antarmuka jaringan yang dimulai dengan
169.254, mirip dengan output berikut. Alamat untuk antarmukaclus1harus cocok dengan nilai yang ditentukan dalam cellcfg. Alamat untuk antarmukaclus2harus berupa IP berikutnya setelah alamatclus1(secara numerik).::> net int show (network interface show) Logical Status Network Current Current Is Vserver Interface Admin/Oper Address/Mask Node Port Home ----------- ---------- ---------- ------------------ ------------- ------- ---- Cluster clus1 up/up 169.254.0.1/16 localhost e3a true clus2 up/up 169.254.0.2/16 localhost e3b trueOpsional: verifikasi konektivitas antar-cluster.
ping -lif clus2 -vserver Cluster -destination <interconnect-ip-other-node>interconnect-ip-other-node: Pilih IP intercluster dari node lain. Jika ada konektivitas, ping akan membalas.
Tetapkan sandi admin (sandi ini harus sama di semua node dan digunakan saat mengisi sandi). Pastikan sandi memenuhi persyaratan kerumitan atau Anda akan melihat peringatan tentang akun pengguna yang tidak mematuhi persyaratan.
::> security login password Enter your current password: Current password is empty, press Enter Enter a new password: Enter NEW_PASSWORD Enter it again: Enter NEW_PASSWORDTetapkan IP dan gateway pengelolaan. Lihat petunjuk di bawah tentang cara mendapatkan informasi yang diperlukan.
::> cluster setup Type yes to confirm and continue: yes Enter the node management interface port: e0M Enter the node management interface IP address: IP_ADDRESS for this node Enter the node management interface netmask: NETMASK for this IP Enter the node management interface default gateway: GATEWAYKeluar dari wizard penyiapan cluster setelah menyetel gateway default dengan memasukkan
ctrl+c.Jalankan perintah berikut untuk mendapatkan informasi subnet:
# cat cellcfg/*-storage.yaml | /root/release/scripts/yq_linux_amd64 'select(.kind == "StorageCluster") | (.spec.network.clusterManagement.netmask)'Anda akan melihat output yang mirip dengan berikut ini:
203.0.113.0Jalankan perintah berikut untuk mendapatkan informasi gateway:
kubectl get subnetclaim -n root kb-ad-mgmtsw01-stge-os-subnet -o jsonpath={.status.ipv4SubnetStatus.gateway} ; echoAnda akan melihat output yang mirip dengan berikut ini:
203.0.113.1Berikut adalah contoh cara mendapatkan informasi IP:
# cat cellcfg/*-storage.yaml | /root/release/scripts/yq_linux_amd64 'select(.kind == "StorageNode") | (.metadata.name, .spec.network.managementIP)' kb-ad-stge01-01 203.0.113.0 --- kb-ad-stge01-02 203.0.113.0 --- kb-ad-stge02-01 203.0.113.0 --- kb-ad-stge02-02 203.0.113.0Aktifkan SSH untuk pengguna admin:
security login create -user-or-group-name admin -application ssh -authentication-method password -role adminGanti nama node menjadi nama yang ditentukan dalam
cell.yaml.system node rename -node localhost -newname NODE_NAMEPastikan disk dikonfigurasi dengan benar.
Jalankan
storage aggregate show -fields uses-shared-disksdan verifikasi bahwaaggr0menampilkan nilai benar (true). Contoh output:::> storage aggregate show -fields uses-shared-disks aggregate uses-shared-disks --------- ----------------- aggr0 trueJalankan
run -node * sysconfig -rdan verifikasi bahwa ada nama perangkat yang berakhiranP3. Hal ini untuk memastikan disk memiliki 3 partisi. Contoh output:::> run -node * sysconfig -r 1 entry was acted on. Node: localhost Aggregate aggr0 (online, raid_dp) (block checksums) Plex /aggr0/plex0 (online, normal, active, pool0) RAID group /aggr0/plex0/rg0 (normal, block checksums) RAID Disk Device HA SHELF BAY CHAN Pool Type RPM Used (MB/blks) Phys (MB/blks) --------- ------ ------------- ---- ---- ---- ----- -------------- -------------- dparity 0n.18P3 0n 0 18 0 SSD-NVM N/A 63849/16345536 63857/16347584 parity 0n.19P3 0n 0 19 0 SSD-NVM N/A 63849/16345536 63857/16347584 data 0n.20P3 0n 0 20 0 SSD-NVM N/A 63849/16345536 63857/16347584 data 0n.21P3 0n 0 21 0 SSD-NVM N/A 63849/16345536 63857/16347584 data 0n.22P3 0n 0 22 0 SSD-NVM N/A 63849/16345536 63857/16347584Jalankan
run -node local disk show -nuntuk memverifikasi bahwa partisi disk adalahNot Owneddan ada2 * <number of disks>partisi. Contoh ini menunjukkan 24 partisi yang tidak dimiliki untuk 12 disk.::> run -node local disk show -n DISK OWNER POOL SERIAL NUMBER HOME DR HOME ------------ ------------- ----- ------------- ------------- ------------- 0n.21P1 Not Owned NONE S5Y0NA0T100941NP001 0n.21P2 Not Owned NONE S5Y0NA0T100941NP002 0n.22P1 Not Owned NONE S5Y0NA0T100944NP001 0n.22P2 Not Owned NONE S5Y0NA0T100944NP002 0n.18P1 Not Owned NONE S5Y0NA0T101588NP001 0n.18P2 Not Owned NONE S5Y0NA0T101588NP002 0n.20P1 Not Owned NONE S5Y0NA0T100947NP001 0n.20P2 Not Owned NONE S5Y0NA0T100947NP002 0n.3P1 Not Owned NONE S5Y0NA0T100942NP001 0n.3P2 Not Owned NONE S5Y0NA0T100942NP002 0n.1P1 Not Owned NONE S5Y0NA0T100943NP001 0n.1P2 Not Owned NONE S5Y0NA0T100943NP002 0n.5P1 Not Owned NONE S5Y0NA0T101314NP001 0n.5P2 Not Owned NONE S5Y0NA0T101314NP002 0n.2P1 Not Owned NONE S5Y0NA0T100946NP001 0n.2P2 Not Owned NONE S5Y0NA0T100946NP002 0n.23P1 Not Owned NONE S5Y0NA0T100939NP001 0n.23P2 Not Owned NONE S5Y0NA0T100939NP002 0n.19P1 Not Owned NONE S5Y0NA0T101608NP001 0n.19P2 Not Owned NONE S5Y0NA0T101608NP002 0n.0P1 Not Owned NONE S5Y0NA0T100873NP001 0n.0P2 Not Owned NONE S5Y0NA0T100873NP002 0n.4P1 Not Owned NONE S5Y0NA0T101609NP001 0n.4P2 Not Owned NONE S5Y0NA0T101609NP002Jika salah satu langkah ini gagal, reset sistem ke setelan pabrik.
16.3. Menyiapkan Network Time Protocol
Dapatkan IP server NTP untuk relay NTP yang berjalan di bootstrap cluster:
kubectl get ntpservers -n ntp-system -o jsonpath='{.items[*].status.managementIP}{"\n"}'
Untuk setiap server NTP, jalankan perintah berikut di node ONTAP pertama:
cluster time-service ntp server create -server NTP_SERVER_IP
Misalnya, jika node ONTAP Anda adalah kb-ad-stge01-01, kb-ad-stge01-02, kb-ad-stge02-01, dan kb-ad-stge02-02, Anda menjalankan perintah di node kb-ad-stge01-01.
16.4. Periksa folder cellcfg
Untuk mengambil nilai nama pengguna dan sandi penyimpanan untuk penyimpanan file, gunakan file vendor hardware yang dikhususkan untuk penyimpanan, misalnya, WO15_SO7100911835-2_GDCH-4d-A250-A400_DD-010223.xlsx
16.4.1. Verifikasi sandi admin
Temukan nama secret ONTAP yang dirujuk di /CELLCFG/file-storage.yaml setelah StorageCluster.spec.adminSecretName.
Temukan Secret yang sesuai dan pastikan nilainya terisi. Jika tidak, ganti nama pengguna dan sandi admin:
apiVersion: v1
kind: Secret
metadata:
name: SECRET_NAME
namespace: gpc-system
type: Opaque
stringData:
netapp_username: admin
netapp_password: PASSWORD
16.4.2. Memverifikasi lisensi ONTAP
Lisensi software ONTAP Anda harus disediakan oleh vendor HW.
Temukan kolom StorageCluster.spec.licenses di folder /cellcfg/af-storage.yaml dan pastikan lisensi diisi.
Jika tidak, isi kolom dengan lisensi:
apiVersion: ontap.netapp.storage.private.gdc.goog/v1alpha1
kind: StorageCluster
metadata:
creationTimestamp: null
name: zl-stge-clus-01
namespace: gpc-system
spec:
...
licenses:
- LICENSE_1
- LICENSE_2
- LICENSE_3
Sebagai referensi, berikut adalah contoh tampilan entri lisensi dalam konfigurasi sel:
licenses:
ABGITNWODUEVQELPECCAAAAAAAAA
AHJJWYTTTXKZOFKVBTBAAAAAAAAA
AHZTHBPQACAAAAKVBTBAAAAAAAAA
ALTXOYXSVDDCMADPECCAAAAAAAAA
ANWFPBPQACAAAAKVBTBAAAAAAAAA
APLKENWODUEVQELPECCAAAAAAAAA
ARIHVQFAHJMIWBDPECCAAAAAAAAA
AXFTCRFAHJMIWBDPECCAAAAAAAAA
16.5. Validasi preflight
Jalankan perintah validasi:
gdcloud system check-config --config PATH_TO_CELL_CONFIG --artifacts-directory PATH_TO_ARTIFACTS \
--scenario FileBlockStorage
Jika ada error dalam log, ikuti pesan untuk memperbaiki masalah dan jalankan validasi lagi.
16.5.1. Potensi masalah
Bagian ini berisi potensi masalah yang mungkin Anda temui saat melakukan validasi pra-penerbangan pada perangkat penyimpanan blok file.
16.5.1.1. NumDisks untuk StorageAggregate
Abaikan kegagalan validasi pada jumlah disk yang salah, tetapi verifikasi nilai NumDisks secara manual di CR StorageAggregate. StorageAggregate ditentukan dalam file xx-storage.yaml.
Jumlah total disk yang dikonfigurasi untuk StorageAggregates untuk satu appliance blok file harus sama dengan jumlah disk yang ditampilkan di appliance dikurangi jumlah disk cadangan. Praktik terbaiknya adalah mencadangkan satu disk cadangan untuk setiap 12 disk.
Untuk menghitung nilai NumDisks, gunakan rumus berikut:
NumDisks = (Total_Disks/2) - ceil(Total_Disks/12)
NumDisks sama dengan 10 jika Anda menerapkan formula ke contoh (24/2) - ceil(24/12) yang dijelaskan di bagian ini.
16.6. Jalankan penginstalan
Jalankan perintah penginstalan:
gdcloud system storage install -v 3 --config PATH_TO_CELL_CONFIG
Perintah ini akan melakukan hal berikut:
- Menyiapkan cluster NetApp dan menambahkan node yang tersedia
- Membuat agregat
- Menyiapkan LACP dan VLAN di port data
- Menyiapkan lisensi
- Mengonfigurasi Monitoring
- Mengonfigurasi pengelolaan kunci eksternal
Setelah tugas selesai, jalankan node show di konsol ONTAP untuk memastikan tidak ada peringatan seperti ini:
kb-stge-clus-01::> node show
Node Health Eligibility Uptime Model Owner Location
--------- ------ ----------- ------------- ----------- -------- ---------------
kb-ad-stge01-01
true true 5 days 02:49 AFF-A250
kb-ad-stge01-02
true true 6 days 18:24 AFF-A250
kb-ad-stge02-01
true true 5 days 01:52 AFF-A800
kb-ad-stge02-02
true true 5 days 01:52 AFF-A800
kb-ad-stge03-01
true true 7 days 00:15 AFF-A400
kb-ad-stge03-02
true true 7 days 00:26 AFF-A400
Warning: Cluster operation (cluster join) for node "kb-ad-stge03-01" is not complete and the node is not fully functional.
Run "cluster join" on that node to complete the operation.
6 entries were displayed.
Jika ada, ikuti petunjuk dan login ke node ini, lalu jalankan perintah cluster join yang sesuai untuk memastikan perintah tersebut hilang setelah operasi.
16.7. Memperbarui setelan keamanan
Menetapkan banner login:
security login banner modify -vserver <cluster name> -message "<banner>"Membatasi waktu tunggu sesi CLI hingga sepuluh menit:
system timeout modify 10Menerapkan kerumitan sandi dan upaya login maksimum pada peran admin:
security login role config modify -vserver CLUSTER_NAME -role admin -passwd-minlength 15 -passwd-min-special-chars 1 -passwd-min-lowercase-chars 1 -passwd-min-uppercase-chars 1 -passwd-min-digits 1 -disallowed-reuse 25 -max-failed-login-attempts 3Membatasi waktu tunggu sesi UI hingga sepuluh menit:
::> set diag Warning: These diagnostic commands are for use by NetApp personnel only. Do you want to continue? {y|n}: y ::> cluster application-record create -name sysmgr.inactivitytimeout -value 10 -vserver <cluster name>Menyesuaikan setelan penguncian pengguna:
::> security login role config modify -vserver * -max-failed-login-attempts 3 -lockout-duration 1 -role * ::> security ssh modify -vserver * -max-authentication-retry-count 3Menonaktifkan port USB (perlu mulai ulang agar dapat diterapkan):
::> set diag ::*> system node usb-ports modify -node * -is-disabled-next-boot trueHapus sertifikat bootstrap.
Temukan sertifikat bootstrap-web-ca:
::> security certificate show-user-installedOutputnya akan terlihat seperti ini jika sertifikat bootstrap-web-ca ada:
Vserver Serial Number Certificate Name Type ---------- --------------- -------------------------------------- ------------ aa-aa-stge01 45B86E1B5CF1CC144B874C80A39D2A99 bootstrap-web-ca server-ca Certificate Authority: bootstrap-web-ca Expiration Date: Mon Feb 19 22:55:03 2029
Saat Anda ingin memulai ulang node, mulai ulang node satu per satu dengan perintah berikut:
::> system node reboot -node <node-name> -inhibit-takeover true
16.8. Menyimpan pengguna akses darurat
Empat akun breakglass dibuat secara otomatis dan disimpan sebagai secret Kubernetes berikut selama penyiapan.
- storage-root-level1
- storage-root-level1-backup
- storage-root-level2
- storage-root-level2-backup
Untuk storage-root-level2 dan storage-root-level2-backup, simpan dan amankan kredensial Anda di atas kertas seperti yang ditentukan:
Dapatkan nama pengguna dan sandi dari secret dengan perintah berikut, ganti SECRET_NAME dengan secret yang ingin Anda gunakan:
kubectl get secret -n gpc-system SECRET_NAME -o jsonpath='{.data.username}' | base64 --decode kubectl get secret -n gpc-system SECRET_NAME -o jsonpath='{.data.password}' | base64 --decodeDapatkan nama cluster ONTAP:
::> cluster identity showPerhatikan apakah ada pengguna yang tidak terduga dengan hak istimewa administrator:
::> useradmin user list- Opsional: Hapus dengan persetujuan dari Operator Infrastruktur. Selalu lakukan pada workload produksi dan pelanggan:
::> security login delete -user-or-group-name <username> -vserver <Cluster Name> -authentication-method password -application amqp ::> security login delete -user-or-group-name <username> -vserver <Cluster Name> -authentication-method password -application console ::> security login delete -user-or-group-name <username> -vserver <Cluster Name> -authentication-method password -application http ::> security login delete -user-or-group-name <username> -vserver <Cluster Name> -authentication-method password -application ontapi ::> security login delete -user-or-group-name <username> -vserver <Cluster Name> -authentication-method password -application service-processor ::> security login delete -user-or-group-name <username> -vserver <Cluster Name> -authentication-method password -application ssh ```Hapus pengguna administrasi NetApp yang dibuat di langkah sebelumnya.
::> security login delete -user-or-group-name admin -vserver <Cluster Name> -authentication-method password -application amqp ::> security login delete -user-or-group-name admin -vserver <Cluster Name> -authentication-method password -application console ::> security login delete -user-or-group-name admin -vserver <Cluster Name> -authentication-method password -application http ::> security login delete -user-or-group-name admin -vserver <Cluster Name> -authentication-method password -application ontapi ::> security login delete -user-or-group-name admin -vserver <Cluster Name> -authentication-method password -application service-processor ::> security login delete -user-or-group-name admin -vserver <Cluster Name> -authentication-method password -application sshOperator infrastruktur (IO) utama menuliskan nama pengguna dan sandi untuk setiap perangkat dengan jelas di kertas terpisah. Mereka melipat kertas sedemikian rupa sehingga isinya tidak terlihat, memberi label pada kertas tersebut, misalnya "Kredensial root untuk switch TOR 1", dan menyerahkannya kepada engineer L1 untuk disimpan dengan aman.
Dengan pengawasan IO utama, engineer L1 menyimpan dokumen di brankas fisik.
IO menambahkan anotasi ke secret untuk menandai bahwa secret telah disimpan di brankas.
kubectl annotate secrets storage-root-level2 -n gpc-system disk.gdc.goog/persisted=''16.9. Memperbarui server NTP
Lakukan langkah-langkah berikut setelah cluster admin diinstal:
Dapatkan IP server NTP baru untuk relay NTP yang berjalan di cluster admin:
kubectl get ntpservers -n gpc-systemDi ONTAP, hapus semua server NTP yang ada:
cluster time-service ntp server show cluster time-service ntp server delete -server NTP_SERVER_IPTambahkan server NTP baru ke ONTAP:
cluster time-service ntp server create -server NTP_SERVER_IP