Halaman ini mencakup langkah-langkah pemecahan masalah untuk beberapa masalah dan error umum.
Masalah umum
- Jika tidak ada I/O yang terjadi pada sistem file, grafik performa akan menampilkan pesan "Tidak ada data yang tersedia untuk rentang waktu yang dipilih". Hal ini karena metrik performa hanya dibuat saat ada I/O. Untuk mengetahui informasi selengkapnya tentang metrik, lihat Memantau instance dan operasi.
- Fitur Lustre berikut tidak didukung:
- Kompresi data sisi klien
- Caching klien persisten
- Beberapa perintah Lustre tidak didukung.
- Ada beberapa pengecualian terhadap kepatuhan POSIX.
Masalah operasi instance
Bagian berikut menjelaskan masalah terkait operasi instance.
Tidak dapat mengantrekan operasi
Jika Anda melihat error yang mirip dengan salah satu error berikut saat mencoba memulai operasi:
ERROR: (gcloud.lustre.instances.import-data) ABORTED: unable to queue the operation
ERROR: (gcloud.lustre.instances.export-data) ABORTED: unable to queue the operation
ERROR: (gcloud.lustre.instances.update) ABORTED: unable to queue the operation
Error ini terjadi saat Anda mencoba memulai operasi sementara operasi lain dengan jenis yang sama sudah berlangsung di instance yang sama.
- Impor/ekspor: Managed Lustre hanya mendukung satu operasi transfer aktif per instance dalam satu waktu. Pengantrean tidak didukung untuk operasi transfer.
- Update Instance: Lustre Terkelola memungkinkan satu update aktif per instance dalam satu waktu, dan memungkinkan operasi update tambahan diantrekan.
Untuk mengatasi masalah ini, tunggu hingga operasi saat ini selesai sebelum memulai operasi baru.
Masalah Compute Engine
Saat mengalami masalah dalam memasang sistem file Managed Lustre pada instance Compute Engine, ikuti langkah-langkah berikut untuk mendiagnosis masalah.
Pastikan instance Managed Lustre dapat dijangkau
Pertama, pastikan instance Managed Lustre Anda dapat dijangkau dari instance Compute Engine Anda:
sudo lctl ping IP_ADDRESS@tcp
Untuk mendapatkan nilai IP_ADDRESS, lihat Mendapatkan instance.
Ping yang berhasil akan menampilkan respons yang mirip dengan berikut ini:
12345-0@lo
12345-10.115.0.3@tcp
Ping yang gagal akan menampilkan hal berikut:
failed to ping 10.115.0.3@tcp: Input/output error
Jika ping Anda gagal:
Pastikan instance Managed Lustre dan instance Compute Engine Anda berada di jaringan VPC yang sama. Bandingkan output dari perintah berikut:
gcloud compute instances describe VM_NAME \ --zone=VM_ZONE \ --format='get(networkInterfaces[0].network)' gcloud lustre instances describe INSTANCE_NAME \ --location=ZONE --format='get(network)'Outputnya akan terlihat seperti:
https://www.googleapis.com/compute/v1/projects/my-project/global/networks/my-network projects/my-project/global/networks/my-networkOutput perintah
gcloud compute instances describediawali denganhttps://www.googleapis.com/compute/v1/; semua yang mengikuti string tersebut harus cocok dengan output perintahgcloud lustre instances describe.Tinjau aturan firewall dan konfigurasi perutean jaringan VPC Anda untuk memastikan bahwa aturan dan konfigurasi tersebut mengizinkan traffic antara instance Compute Engine dan instance Managed Lustre.
Memeriksa port penerimaan LNet
Instance Lustre terkelola dapat dikonfigurasi untuk mendukung
klien GKE dengan menentukan flag --gke-support-enabled pada
waktu pembuatan.
Jika dukungan GKE telah diaktifkan, Anda harus mengonfigurasi LNet di semua instance Compute Engine untuk menggunakan accept_port 6988. Lihat
Mengonfigurasi LNet untuk instance gke-support-enabled.
Untuk menentukan apakah instance telah dikonfigurasi untuk mendukung klien GKE, jalankan perintah berikut:
gcloud lustre instances describe INSTANCE_NAME \
--location=LOCATION | grep gkeSupportEnabled
Jika perintah menampilkan gkeSupportEnabled: true, Anda harus mengonfigurasi LNet.
Versi kernel Ubuntu tidak cocok dengan klien Lustre
Untuk instance Compute Engine yang menjalankan Ubuntu, versi kernel Ubuntu harus cocok dengan versi tertentu paket klien Lustre. Jika alat klien Lustre Anda gagal, periksa apakah instance Compute Engine Anda telah diupgrade otomatis ke kernel yang lebih baru.
Untuk memeriksa versi kernel Anda:
uname -r
Respons akan terlihat seperti ini:
6.8.0-1029-gcp
Untuk memeriksa versi paket klien Lustre Anda:
dpkg -l | grep -i lustre
Respons akan terlihat seperti ini:
ii lustre-client-modules-6.8.0-1029-gcp 2.14.0-ddn198-1 amd64 Lustre Linux kernel module (kernel 6.8.0-1029-gcp)
ii lustre-client-utils 2.14.0-ddn198-1 amd64 Userspace utilities for the Lustre filesystem (client)
Jika ada ketidakcocokan antara versi kernel yang tercantum dari kedua perintah, Anda harus menginstal ulang paket klien Lustre.
Periksa dmesg untuk mengetahui error Lustre
Banyak peringatan dan error Lustre dicatat ke buffer dering kernel Linux. Perintah
dmesg mencetak buffer ring kernel.
Untuk menelusuri pesan khusus Lustre, gunakan grep bersama dengan dmesg:
dmesg | grep -i lustre
Atau, untuk mencari error yang lebih umum yang mungkin terkait:
dmesg | grep -i error
Informasi yang harus disertakan dalam permintaan dukungan
Jika Anda tidak dapat menyelesaikan kegagalan pemasangan, kumpulkan informasi diagnostik sebelum membuat kasus dukungan.
Jalankan sosreport: Utilitas ini mengumpulkan log sistem dan informasi konfigurasi serta menghasilkan tarball terkompresi:
sudo sosreport
Lampirkan arsip sosreport dan output yang relevan dari dmesg ke kasus dukungan Anda.
Masalah GKE
Sebelum mengikuti langkah-langkah pemecahan masalah di bagian ini, lihat batasan saat menghubungkan ke Managed Lustre dari GKE.
Kapasitas instance minimum yang diperbarui
Kapasitas minimum untuk instance Managed Lustre telah diperbarui menjadi 9000 GiB. Untuk membuat instance 9000 GiB melalui driver CSI Lustre Terkelola, upgrade versi cluster Anda ke 1.34.0-gke.2285000 atau yang lebih baru.
Tingkat performa yang salah untuk instance Lustre yang disediakan secara dinamis
Saat menyediakan instance Lustre secara dinamis, pembuatan instance akan gagal dengan error InvalidArgument untuk PerUnitStorageThroughput, terlepas dari nilai perUnitStorageThroughput yang ditentukan dalam permintaan API. Masalah ini memengaruhi versi GKE 1.33 sebelum 1.33.4-gke.1036000.
Solusi:
Upgrade cluster GKE ke versi 1.33.4-gke.1036000 atau yang lebih baru. Jika menggunakan channel Stabil, versi yang lebih baru mungkin belum tersedia. Dalam hal ini, Anda dapat memilih versi secara manual dari saluran Reguler atau Cepat yang menyertakan perbaikan.
Port komunikasi Managed Lustre
Driver CSI Managed Lustre menggunakan port yang berbeda untuk berkomunikasi dengan instance Managed Lustre, bergantung pada versi cluster GKE dan konfigurasi Managed Lustre yang ada.
Port default (988): Untuk cluster GKE baru yang menjalankan versi
1.33.2-gke.4780000atau yang lebih baru, driver menggunakan port988untuk komunikasi Lustre secara default.Port Lama (6988): Driver menggunakan port
6988dalam skenario berikut:- Versi GKE sebelumnya: Jika cluster GKE Anda menjalankan versi yang lebih lama dari
1.33.2-gke.4780000, tanda--enable-legacy-lustre-portdiperlukan saat mengaktifkan driver CSI. Mengaktifkan flag ini akan mengatasi konflik port dengangke-metadata-serverdi node GKE. - Instance Managed Lustre yang sudah ada dengan dukungan GKE: Jika Anda terhubung ke instance Managed Lustre yang sudah ada dan dibuat dengan tanda
--gke-support-enabled, Anda harus menyertakan--enable-legacy-lustre-portsaat mengaktifkan driver CSI, terlepas dari versi cluster Anda. Tanpa tanda ini, cluster GKE Anda tidak akan dapat memasang instance Lustre yang ada.
Untuk mengetahui detail selengkapnya tentang cara mengaktifkan driver CSI dengan port lama, lihat Port komunikasi Lustre.
- Versi GKE sebelumnya: Jika cluster GKE Anda menjalankan versi yang lebih lama dari
Kueri log
Untuk memeriksa log, jalankan kueri berikut di Logs Explorer.
Untuk menampilkan log server node driver CSI Managed Lustre:
resource.type="k8s_container"
resource.labels.pod_name=~"lustre-csi-node*"
Memecahkan masalah penyediaan volume
Jika PersistentVolumeClaim (PVC) tetap dalam status Pending dan tidak ada PersistentVolume (PV) yang dibuat setelah 20-30 menit, mungkin terjadi error.
Periksa peristiwa PVC:
kubectl describe pvc PVC_NAMEJika error menunjukkan masalah konfigurasi atau argumen tidak valid, verifikasi parameter StorageClass Anda.
Buat ulang PVC.
Jika masalah berlanjut, hubungi Cloud Customer Care.
Memecahkan masalah pemasangan volume
Setelah Pod dijadwalkan ke node, volume akan di-mount. Jika gagal, periksa peristiwa Pod dan log kubelet.
kubectl describe pod POD_NAME
Masalah pengaktifan driver CSI
Gejala:
MountVolume.MountDevice failed for volume "yyy" : kubernetes.io/csi: attacher.MountDevice failed to create newCsiDriverClient: driver name lustre.csi.storage.gke.io not found in the list of registered CSI drivers
atau
MountVolume.SetUp failed for volume "yyy" : kubernetes.io/csi: mounter.SetUpAt failed to get CSI client: driver name lustre.csi.storage.gke.io not found in the list of registered CSI drivers
Penyebab: Driver CSI tidak diaktifkan atau belum berjalan.
Penyelesaian:
- Pastikan driver CSI diaktifkan.
- Jika cluster baru saja diubah skalanya atau diupgrade, tunggu beberapa menit hingga driver berfungsi.
- Jika error berlanjut, periksa log
lustre-csi-nodeuntuk mengetahui apakah ada pesan "Operation not permitted". Hal ini menunjukkan bahwa versi node terlalu lama untuk mendukung Managed Lustre. Untuk mengatasi hal ini, upgrade node pool Anda ke versi1.33.2-gke.1111000atau yang lebih baru. - Jika log menampilkan "LNET_PORT mismatch", upgrade node pool Anda untuk memastikan modul kernel Lustre yang kompatibel terinstal.
Titik pemasangan sudah ada
Gejala:
MountVolume.MountDevice failed for volume "yyy" : rpc error: code = AlreadyExists
desc = A mountpoint with the same lustre filesystem name "yyy" already exists on
node "yyy". Please mount different lustre filesystems
Penyebab: Pemasangan beberapa volume dari instance Managed Lustre yang berbeda dengan nama sistem file yang sama pada satu node tidak didukung.
Penyelesaian: Gunakan nama sistem file yang unik untuk setiap instance Managed Lustre.
Pemasangan gagal: Tidak ada file atau direktori tersebut
Gejala:
MountVolume.MountDevice failed for volume "yyy" : rpc error: code = Internal desc = Could not mount ... failed: No such file or directory
Penyebab: Nama sistem file yang ditentukan salah atau tidak ada.
Penyelesaian: Pastikan fs_name dalam konfigurasi StorageClass atau PV Anda cocok dengan instance Managed Lustre.
Pemasangan gagal: Error input/output
Gejala:
MountVolume.MountDevice failed for volume "yyy" : rpc error: code = Internal desc = Could not mount ... failed: Input/output error
Penyebab: Cluster tidak dapat terhubung ke instance Managed Lustre.
Penyelesaian:
- Verifikasi alamat IP instance Managed Lustre.
- Pastikan cluster GKE dan instance Managed Lustre berada di jaringan VPC yang sama atau di-peering dengan benar.
Error internal
Gejala: rpc error: code = Internal desc = ...
Penyelesaian: Jika error berlanjut, hubungi Cloud Customer Care.
Memecahkan masalah pelepasan volume
Gejala:
UnmountVolume.TearDown failed for volume "yyy" : rpc error: code = Internal desc = ...
Penyelesaian:
Hapus Pod secara paksa:
kubectl delete pod POD_NAME --forceJika masalah berlanjut, hubungi Cloud Customer Care.
Memecahkan masalah penghapusan volume
Jika PV tetap dalam status "Dirilis" untuk jangka waktu yang lama (misalnya, lebih dari satu jam) setelah menghapus PVC, hubungi Cloud Customer Care.
Memecahkan masalah ekspansi volume
PVC macet di ExternalExpanding
Gejala: Status PVC tidak berubah menjadi Resizing, dan peristiwa menampilkan ExternalExpanding.
Penyebab: Kolom allowVolumeExpansion mungkin tidak ada atau ditetapkan ke false.
Penyelesaian:
Pastikan StorageClass memiliki allowVolumeExpansion: true.
kubectl get storageclass STORAGE_CLASS_NAME -o yaml
Perluasan gagal: Argumen Tidak Valid
Gejala: VolumeResizeFailed: rpc error: code = InvalidArgument ...
Penyebab: Ukuran yang diminta tidak valid (misalnya, bukan kelipatan ukuran langkah atau di luar batas).
Resolusi: Periksa rentang kapasitas yang valid dan perbarui PVC dengan ukuran yang valid.
Perluasan gagal: Error Internal
Gejala: VolumeResizeFailed ... rpc error: code = Internal
Penyelesaian: Coba lagi perluasan dengan menerapkan kembali PVC. Jika gagal berulang kali, hubungi Cloud Customer Care.
Batas Waktu Terlampaui
Gejala: VolumeResizeFailed dengan DEADLINE_EXCEEDED.
Penyebab: Operasi memerlukan waktu lebih lama dari yang diperkirakan, tetapi mungkin masih dalam proses.
Resolusi: Tunggu hingga operasi selesai. Pengubah ukuran akan otomatis mencoba lagi. Jika terus terhenti dalam waktu yang lama (misalnya, > 90 menit), hubungi dukungan.
Melebihi Kuota
Gejala: Ekspansi gagal karena batas kuota.
Penyelesaian: Minta penambahan kuota atau minta penambahan kapasitas yang lebih kecil.
Masalah jaringan VPC
Bagian berikut menjelaskan masalah umum jaringan VPC.
Tidak dapat mengakses Managed Lustre dari project yang di-peering
Untuk mengakses instance Managed Lustre dari VM di jaringan VPC yang di-peering, Anda harus menggunakan Network Connectivity Center (NCC). NCC memungkinkan Anda menghubungkan beberapa jaringan VPC dan jaringan lokal ke hub pusat, sehingga menyediakan konektivitas di antara keduanya.
Untuk mengetahui petunjuk cara menyiapkan NCC, lihat dokumentasi Network Connectivity Center.
Pemasangan Lustre di VM multi-NIC gagal
Jika VM memiliki beberapa pengontrol antarmuka jaringan (NIC), dan instance Managed Lustre berada di VPC yang terhubung ke NIC sekunder (misalnya, eth1), pemasangan instance dapat gagal. Untuk mengatasi masalah ini, ikuti petunjuk untuk melakukan pemasangan menggunakan NIC sekunder.
Tidak dapat terhubung dari rentang subnet 172.17.0.0/16
Klien Compute Engine dan GKE dengan alamat IP dalam rentang subnet 172.17.0.0/16 tidak dapat memasang instance Managed Lustre.
Izin ditolak untuk menambahkan peering untuk layanan servicenetworking.googleapis.com
ERROR: (gcloud.services.vpc-peerings.connect) User [$(USER)] does not have
permission to access services instance [servicenetworking.googleapis.com]
(or it may not exist): Permission denied to add peering for service
'servicenetworking.googleapis.com'.
Error ini berarti Anda tidak memiliki izin IAM servicenetworking.services.addPeering
di akun pengguna Anda.
Lihat Kontrol akses dengan IAM untuk mengetahui petunjuk tentang cara menambahkan salah satu peran berikut ke akun Anda:
roles/compute.networkAdminatauroles/servicenetworking.networksAdmin
Tidak dapat memodifikasi rentang yang dialokasikan di CreateConnection
ERROR: (gcloud.services.vpc-peerings.connect) The operation
"operations/[operation_id]" resulted in a failure "Cannot modify allocated
ranges in CreateConnection. Please use UpdateConnection."
Error ini ditampilkan saat Anda telah membuat peering VPC di jaringan ini dengan rentang IP yang berbeda. Ada dua solusi yang memungkinkan:
Ganti rentang IP yang ada:
gcloud services vpc-peerings update \
--network=NETWORK_NAME \
--ranges=IP_RANGE_NAME \
--service=servicenetworking.googleapis.com \
--force
Atau, tambahkan rentang IP baru ke koneksi yang ada:
Ambil daftar rentang IP yang ada untuk peering:
EXISTING_RANGES="$( gcloud services vpc-peerings list \ --network=NETWORK_NAME \ --service=servicenetworking.googleapis.com \ --format="value(reservedPeeringRanges.list())" \ --flatten=reservedPeeringRanges )Kemudian, tambahkan rentang baru ke peering:
gcloud services vpc-peerings update \ --network=NETWORK_NAME \ --ranges="${EXISTING_RANGES}",IP_RANGE_NAME \ --service=servicenetworking.googleapis.com
Rentang alamat IP habis
Jika pembuatan instance gagal karena error rentang habis:
ERROR: (gcloud.alpha.Google Cloud Managed Lustre.instances.create) FAILED_PRECONDITION: Invalid
resource state for "NETWORK_RANGES_NOT_AVAILABLE": IP address range exhausted
Ikuti panduan VPC untuk mengubah koneksi pribadi yang ada guna menambahkan rentang alamat IP.
Sebaiknya gunakan panjang awalan minimal /20 (1024 alamat).