Halaman ini menguraikan proses perluasan dinamis sistem Anda dengan menggabungkan lebih banyak resource penyimpanan dan komputasi. Petunjuk diberikan untuk jenis perluasan berikut:
- Perluasan rak server horizontal: Menambahkan rak baru ke zona. Rak ini mencakup node komputasi, konsol, switch Top-of-Rack (ToR), dan switch pengelolaan (MGMT).
- Perluasan server vertikal: Menambahkan blok perluasan server ke dalam rak yang memiliki slot perluasan kosong.
- Ekspansi penyimpanan file dan blok vertikal: Menambahkan node penyimpanan ke dalam rak yang memiliki slot ekspansi kosong di cluster penyimpanan yang ada. Node penyimpanan yang terhubung ke switch penyimpanan yang sama adalah bagian dari cluster yang sama.
Untuk mengetahui informasi selengkapnya tentang berbagai jenis ekspansi dinamis, lihat Ringkasan ekspansi dinamis.
Sebelum memulai
Anda harus menyiapkan hal berikut sebelum membuat perubahan pada zona:
- Lakukan pemeriksaan hardware dan persetujuan dengan OEM . Ikuti petunjuk di Pemeriksaan Rak.
- Ikuti pembuatan KUBECONFIG
untuk membuat
KUBECONFIGbagi cluster admin node bidang kontrol. Gunakan file konfigurasiKUBECONFIGyang dihasilkan untuk semua langkahkubectldalam panduan ini. Pastikan versi Google Distributed Cloud (GDC) dengan air gap saat ini di cluster root minimal versi 1.13.1:
kubectl --kubeconfig $KUBECONFIG get org root -n gpc-systemDownload file tar GDC. Untuk mengetahui informasi selengkapnya, lihat Mendownload file.
Siapkan firmware peralatan baru:
- Perangkat packet switching di hardware GDC. Untuk mengetahui informasi selengkapnya, lihat Tombol.
- Perbarui penyimpanan file dan blok ONTAP dengan mengikuti petunjuk di Upgrade ONTAP manual.
Validasi sistem GDCH dalam kondisi baik menggunakan
gdcloud system doctorJika perintahgdcloud system doctortidak tersedia, gunakan metode alternatif di Verifikasi Penginstalan Jaringan.
Melakukan perluasan rak server horizontal
Tambahkan rak baru yang terdiri dari node komputasi, konsol, dan switch ToR dan pengelolaan ke zona melalui perluasan rak server horizontal. Langkah-langkah yang dijelaskan di bagian ini adalah untuk satu rak. Jika Anda memiliki beberapa rak, terapkan langkah-langkah ini ke setiap rak.
Melakukan operasi reset
Anda harus mereset peralatan berikut dengan aman:
- Lakukan server konsol serial reset aman. Hubungi Google untuk mendapatkan petunjuk ini, karena setiap deployment mungkin memiliki konsol serial yang berbeda.
Lakukan reset aman pada unit distribusi daya (PDU) Raritan:
- Hubungkan kabel USB-b ke PDU Raritan dari pengontrol sistem.
- Di konsol serial lokal, reset PDU ke setelan default pabrik menggunakan perintah:
reset factorydefaults. - PDU kini disetel ke
admin/legrand.
Lakukan reset aman, update firmware, dan reset switch ToR dan MGMT ke PowerOn Auto Provisioning (POAP) dengan mengikuti petunjuk di Penghapusan aman.
Hubungkan ke setiap server dan lakukan penghapusan aman secara manual.
Menyiapkan artefak
Ikuti langkah-langkah berikut untuk menerapkan file konfigurasi dan resource kustom yang diperlukan:
Buat file YAML
ZonalExpansion,CustomResourceshardware, dan resourceSubcomponentOverridehardware menggunakan perintahgdcloud system assets add:gdcloud system assets add \ --kubeconfig $KUBECONFIG \ --license-dir FILE_PATH/licenses/ \ --secrets FILE_PATH/secrets.yaml \ --devices FILE_PATH/devices.csv \ --cables FILE_PATH/cables.csv \ --include-cellcfg \ --name az-ae-expansion \ --output ./outputs/afGanti
FILE_PATHuntuk setiap file yang digunakan. Perhatikan, jalur ini mungkin berbeda jika setiap file berada di lokasi yang berbeda.Resource kustom
ZonalExpansionmelacak semua objek yang ditambahkan dan melaporkan status semua objek.Gunakan panduan berikut saat meninjau file YAML
ZonalExpansion:- Kolom
nameharus deskriptif, sepertiaz-ae-expansion. - Kolom
assetsharus menyertakan semua peralatan baru di rak ekspansi baru.
Berikut adalah contoh resource
ZonalExpansion:apiVersion: system.private.gdc.goog/v1alpha1 kind: ZonalExpansion metadata: name: file namespace: gpc-system spec: assets: - kind: ManagementSwitch name: az-ae-mgmtsw01 - kind: ManagementSwitch name: az-ae-mgmtsw02 - kind: TORSwitch name: az-ae-torsw01 - kind: TORSwitch name: az-ae-torsw02 - kind: TORSwitch name: az-ae-bm01- Kolom
Gunakan alat infrastruktur sebagai kode (IAC) untuk menerapkan resource kustom
ZonalExpansion. Untuk mengetahui informasi selengkapnya, lihat Penyiapan infrastruktur sebagai kode. Atau, ikuti runbook IAM-R0004 dan gunakankubectluntuk melakukannya.Pastikan resource
ZonalExpansiondanNonCompliantDeviceSettelah dibuat:Periksa status resource
ZonalExpansion:kubectl --kubeconfig $KUBECONFIG get -A zonalexpansion -o yamlPemeriksaan pra-peluncuran akan gagal pada tahap ini dengan alasan:
ReasonAssetsNotExisted.Resource
NonCompliantDeviceSetharus ada dengan nama yang diawali dengannoncompliantassets-.Daftar aset harus sama dengan kolom
assetsdi resource kustomZonalExpansion.
Ikuti petunjuk di OLT-R0003 untuk memperbarui aset.
Hubungkan switch ToR dan MGMT di rak baru ke switch agregasi di rak yang ada.
Hubungkan tombol secara fisik ke rak dasar.
Bootstrap server lengkap
Fase ini sebagian besar otomatis, tetapi beberapa langkah diperlukan. Anda harus memantau progres bootstrap dan menangani kasus kegagalan:
- Pengontrol akan otomatis memulai prosedur bootstrap setelah kondisi
PreflightCheck=Trueterpenuhi. - Verifikasi bahwa kondisi
NetworkBootstrapSucceed=Truedipublikasikan ke resource kustomZonalExpansion. Kondisi ini ditemukan di lokasiZonalExpansion.Status.PNETBootstrapStatus. Pastikan bahwa tombol dihapus dari daftar
NonCompliantDeviceSet:kubectl --kubeconfig $KUBECONFIG get noncompliantdeviceset noncompliantassets-EXPANSION_NAME -A -o yamlGanti
EXPANSION_NAMEdengan nama resource kustom ekspansi zona.Verifikasi bahwa tombol tidak ada di kolom
Spec.Assetsdari file YAML yang ditampilkan. Penghapusan ini memungkinkan GDC memperbarui ACL jaringan untuk mengizinkan prosedur bootstrap appliance lainnya. Dua ACL jaringan yang diperbarui adalahquarantine-mgmt-switch-acldanquarantine-data-switch-acl.Buat daftar semua alamat IP Baseboard Management Controller (BMC) untuk server dan periksa apakah alamat IP iLO ditetapkan ke mesin bare metal baru dan bootstrap dapat dimulai:
kubectl --kubeconfig $KUBECONFIG get servers -n gpc-system -o=custom-columns=SERVER:.metadata.name,BMC_IP:.spec.bmc.ipContoh output:
SERVER BMC_IP yz-aa-bm01 10.128.136.2 yz-aa-bm02 10.128.136.3 yz-aa-bm03 10.128.136.4 yz-ab-bm01 10.128.136.66 yz-ab-bm02 10.128.136.67 yz-ab-bm03 10.128.136.68 yz-ac-bm01 10.128.136.130 yz-ac-bm02 10.128.136.131 yz-ac-bm03 10.128.136.132 yz-ac-bm04 10.128.136.133 yz-ac-bm05 10.128.136.134 yz-ac-bm06 10.128.136.135 yz-ac-bm07 10.128.136.136 yz-ac-bm08 10.128.136.137 yz-ac-bm09 10.128.136.138 yz-ac-bm10 10.128.136.139 yz-ac-bm11 10.128.136.140 yz-ac-bm12 10.128.136.141 yz-ac-bm13 10.128.136.142 yz-ac-bm14 10.128.136.143 yz-ac-bm15 10.128.136.144 yz-ac-bm16 10.128.136.145 yz-ac-bm17 10.128.136.146 yz-ac-bm18 10.128.136.147GDC melakukan bootstrap server secara paralel untuk melakukan penghapusan aman, verifikasi, update setelan BIOS, dan prosedur bootstrap lainnya.
Pastikan kondisi
ServerBootstrapSucceeded=Truedipublikasikan ke resource kustomZonalExpansion. Kondisi ini ditemukan di lokasiZonalExpansion.Status.SERVBootstrapStatus:- Status host bare metal server memasuki status
AvailableatauProvisionedsetelah bootstrap berhasil. - Pada tingkat kejelasan CLI empat, Anda akan melihat log seperti
"Not all servers in the ZonalExpansion are bootstrapped"dengan daftar server yang belum siap.
- Status host bare metal server memasuki status
Pastikan server kini dihapus dari daftar
NonCompliantDeviceSet:kubectl --kubeconfig $KUBECONFIG get noncompliantdevicesets -n gpc-system "noncompliantassets-EXPANSION_NAME" -o yamlPeriksa apakah kondisi
ExpansionSucceeded=Truedipublikasikan ke resource kustomZonalExpansion. Kondisi ini ditemukan di lokasiZonalExpansion.Status.Conditions.Pastikan daftar
NonCompliantDeviceSetdihapus:kubectl --kubeconfig $KUBECONFIG get noncompliantdeviceset noncompliantassets-EXPANSION_NAME -AOutput yang diharapkan:
`Error from server (NotFound): noncompliantdevicesets.system.private.gdc.goog "noncompliantassets-EXPANSION_NAME" not found`
Melakukan perluasan server vertikal
Tambahkan blok perluasan server ke dalam rak yang memiliki slot perluasan kosong melalui perluasan server vertikal. Sebagian besar petunjuk untuk ekspansi ini mirip dengan ekspansi komputasi horizontal. Ikuti langkah-langkah berikut untuk melakukan perluasan rak server vertikal:
- Instal secara fisik blok server standar yang menggunakan enam node kapasitas, atau blok server GPU yang menggunakan tiga node kapasitas. Anda
dapat menambahkan beberapa blok per rak. Peringatan: Jangan colokkan kabel ke switch
mgmtswatauaggsw. Untuk mengetahui informasi selengkapnya, lihat Tombol. - Jangan lakukan pemasangan kabel apa pun kecuali untuk catu daya. Langkah ini memungkinkan proses pengaktifan server memverifikasi bahwa server tidak offline saat tiba.
Buat file YAML
ZonalExpansiondan resourceSubcomponentOverridehardware menggunakan perintahgdcloud system assets add:gdcloud system assets add \ --kubeconfig $KUBECONFIG \ --license-dir FILE_PATH/licenses/ \ --secrets FILE_PATH/secrets.yaml \ --devices FILE_PATH/devices.csv \ --cables FILE_PATH/cables.csv \ --include-cellcfg \ --name az-ae-expansion \ --output ./outputs/afGanti
FILE_PATHuntuk setiap file yang digunakan. Perhatikan, jalur ini mungkin berbeda jika setiap file berada di lokasi yang berbeda.Gunakan panduan berikut saat meninjau file YAML
ZonalExpansion:- Kolom
nameharus deskriptif, sepertiaz-ae-expansion. - Kolom
assetsharus menyertakan semua peralatan baru di rak ekspansi baru.
Berikut adalah contoh resource
ZonalExpansion:apiVersion: system.private.gdc.goog/v1alpha1 kind: ZonalExpansion metadata: name: file namespace: gpc-system spec: assets: - kind: ManagementSwitch name: az-ae-mgmtsw01 - kind: ManagementSwitch name: az-ae-mgmtsw02 - kind: TORSwitch name: az-ae-torsw01 - kind: TORSwitch name: az-ae-torsw02 - kind: TORSwitch name: az-ae-bm01- Kolom
Terapkan resource kustom
ZonalExpansionyang baru saja Anda buat ke cluster.Pastikan resource
ZonalExpansiondanNonCompliantDeviceSettelah dibuat:- Periksa status resource
ZonalExpansion. Pemeriksaan pra-peluncuran akan gagal pada tahap ini dengan alasan:ReasonAssetsNotExisted. - Resource
NonCompliantDeviceSetharus ada dengan nama yang diawali dengannoncompliantassets-. - Daftar aset harus sama dengan kolom
assetsdi resource kustomZonalExpansion.
- Periksa status resource
Ikuti petunjuk di OLT-R0003 untuk memperbarui aset.
Verifikasi bahwa ACL pengalihan karantina sedang berjalan dengan mengikuti runbook OLT-R0001.
Hubungkan kabel untuk server jika belum selesai. Ikuti file pengkabelan yang disediakan oleh Hewlett Packard Enterprise (HPE).
Pastikan proses bootstrap server dimulai dan berhasil diselesaikan. Untuk mengetahui informasi selengkapnya, lihat Menyelesaikan bootstrap server.
Melakukan perluasan penyimpanan file vertikal dan blok
Petunjuk ini mencakup langkah-langkah yang diperlukan untuk melakukan perluasan node penyimpanan vertikal atau rak tunggal. Ekspansi node penyimpanan dilakukan saat node penyimpanan ONTAP baru ditambahkan untuk memperluas kemampuan penyimpanan rak yang ada. Petunjuk pemasangan kabel untuk perangkat penyimpanan baru tidak disediakan di sini, hanya prosedur untuk menghapus, mengupgrade, dan menambahkan node penyimpanan baru ke cluster yang ada.
Melakukan penyiapan untuk perluasan node penyimpanan
Ikuti langkah-langkah berikut untuk menyiapkan cluster untuk perluasan node penyimpanan:
Ikuti pembuatan KUBECONFIG untuk membuat
KUBECONFIGbagi cluster admin node bidang kontrol. Gunakan file konfigurasiKUBECONFIGyang dihasilkan untuk semua langkahkubectldalam panduan ini:Terapkan resource
SubcomponentOverrideuntuk menonaktifkan rekonsiliasi penyimpanan saat melakukan penyiapan awal untuk perluasan node:kubectl --kubeconfig $KUBECONFIG apply -f - <<EOF apiVersion: lcm.private.gdc.goog/v1 kind: SubcomponentOverride metadata: name: file-storage-sub-override namespace: root spec: subComponentRef: "file-storage" backend: operableParameters: controller: enableReconcilers: "" disableReconcilers: "*" EOFPastikan penggantian berfungsi dan rekonsiliasi
file-storagetelah dinonaktifkan:kubectl --kubeconfig $KUBECONFIG describe deployment file-storage -n file-system | grep reconcilersAnda akan melihat berikut ini:
--enable-reconcilers= --disable-reconcilers=*Jika Anda tidak melihat status ini, tunggu beberapa menit agar penerapan resource
SubcomponentOverrideselesai, lalu lakukan pemeriksaan ini lagi. JikaSubcomponentOverridemasih belum diterapkan setelah beberapa menit, hubungi dukungan teknis GDC.Buat file YAML
ZonalExpansiondan resourceSubcomponentOverridehardware menggunakan perintahgdcloud system assets add:gdcloud system assets add \ --kubeconfig $KUBECONFIG \ --license-dir FILE_PATH/licenses/ \ --secrets FILE_PATH/secrets.yaml \ --devices FILE_PATH/devices.csv \ --cables FILE_PATH/cables.csv \ --include-cellcfg \ --name az-ae-expansion \ --output ./outputs/af ``` Replace FILE_PATH for each of the files used. Note, this path might be different if each file is in a different location. Use the following guidance when reviewing the `ZonalExpansion` YAML file: The `name` field must be descriptive, such as aj-ad-expansion. The `assets` field must include all new appliances in the new expansion rack. Here is an example of a `ZonalExpansion` resource: ```sh apiVersion: system.private.gdc.goog/v1alpha1 kind: ZonalExpansion metadata: name: file namespace: gpc-system spec: assets: - kind: StorageNode name: aj-ad-stge03-01 - kind: StorageNode name: aj-ad-stge03-02 ```Terapkan resource kustom
ZonalExpansionyang baru saja Anda buat ke cluster.Pastikan resource
ZonalExpansiondanNonCompliantDeviceSettelah dibuat:- Periksa status resource ZonalExpansion. Pemeriksaan pra-peluncuran akan gagal pada tahap ini dengan alasan:
ReasonAssetsNotExisted. - Resource
NonCompliantDeviceSetharus ada dengan nama yang diawali dengannoncompliantassets-. - Daftar aset harus sama dengan kolom aset di resource kustom
ZonalExpansion.
- Periksa status resource ZonalExpansion. Pemeriksaan pra-peluncuran akan gagal pada tahap ini dengan alasan:
Terapkan resource aset hardware
SubcomponentOverrideberikut ke cluster admin root menggunakan alat IaC.- file/file-storage.yaml
- inv/inv-core.yaml
Pastikan node baru ditambahkan ke cluster:
kubectl --kubeconfig $KUBECONFIG get storagenodes -n gpc-systemAnda akan melihat resource kustom node baru ditambahkan dengan nilai usia yang lebih baru:
NAME MGMTIP INTERCONNECTIP MODEL AGE aj-ad-stge01-01 172.22.243.129 169.254.0.1 AFF-A250 37d aj-ad-stge01-02 172.22.243.130 169.254.0.3 AFF-A250 37d aj-ad-stge03-01 172.22.243.133 169.254.0.9 AFF-A400 20d aj-ad-stge03-02 172.22.243.134 169.254.0.11 AFF-A400 20dGunakan perintah
describeuntuk mendapatkan informasi tentang kedua node, karena node tersebut berisi informasi yang diperlukan untuk langkah-langkah selanjutnya.kubectl --kubeconfig $KUBECONFIG describe storagenode NODE_NAME -n gpc-systemGanti
NODE_NAMEdengan nama setiap node yang dibuat.Contoh output:
NAME MGMTIP INTERCONNECTIP MODEL AGE aj-ad-stge03-02 172.22.243.134 169.254.0.11 AFF-A400 20d
Menyelesaikan proses perluasan node penyimpanan
Ikuti langkah-langkah berikut untuk menyelesaikan proses perluasan node penyimpanan:
- Lakukan upgrade manual pada node penyimpanan baru. Untuk setiap node, ikuti langkah-langkah dalam Upgrade ONTAP manual yang menyajikan file dari pengontrol sistem.
Lakukan penghapusan aman pada node penyimpanan baru. Untuk node ONTAP baru, ikuti langkah-langkah di Reset ONTAP untuk mereset node.
Lakukan inisialisasi node penyimpanan baru. Gunakan informasi di resource kustom
StorageNodeyang baru ditambahkan dan dijelaskan di langkah sebelumnya. Untuk setiap node, lakukan langkah-langkah di Menginisialisasi appliance ONTAP.Buat koneksi kabel dari node baru ke cluster saat ini dengan mengikuti Setup ONTAP.
Ikuti petunjuk di Melakukan penambahan cluster node baru ke cluster yang ada untuk menambahkan node baru ke cluster.
Memecahkan masalah perluasan dinamis
Gunakan runbook berikut dalam manual servis untuk memecahkan masalah ekspansi dinamis:
- OLT-R0001
- OLT-R0002
- OLT-R0003