CSI Sürücüleri: Günlükleri toplama
Summary: Bu makalede, Dell Container Storage Modules (CSM) Ailesiyle ilgili sorunları gidermeye başlamak için temel günlüklerin nasıl toplanacağı gösterilmektedir: Dell Kapsayıcı Depolama Arabirimi (CSI) Sürücüleri ...
Instructions
CSI Sürücüsü günlük toplama
Bu, hata ayıklamayı etkinleştirmeyi, mümkünse sorunu yeniden oluşturmayı, CSI Sürücü denetleyicisi için günlükleri toplamayı ve düğüm bölmesinden günlükleri toplamayı içerir.
kubectl OpenShift ortamlarında komutlar "oc" ile değiştirilebilir.
CSI Sürücü denetleyicisi ve düğüm bölmeleri için hata ayıklama günlüklerini etkinleştirin.
Belgelerdeki "Dynamic Logging Configuration" özelliğine bakın: https://dell.github.io/csm-docs/docs/csidriver
Denetleyici ve düğüm bölmelerinin adlarını belirleyin.
Şunu kullanın: kubectl get pods Sürücü ad alanındaki bölmeleri listeleme komutu.
# kubectl get pods -n isilon NAME READY STATUS RESTARTS AGE isilon-controller-66d7d9d7c-6j6f4 6/6 Running 0 11m isilon-node-9wngk 2/2 Running 0 27d
CSI Sürücü Denetleyicisi günlüklerini toplayın.
Denetleyici bölmeleri için günlükler toplanmalıdır. Tüm denetleyicilerden günlükleri toplamak için kubectl logs yaparsınız. Sürücü gibi ilgili konteynerden geçtiğinizden emin olun.
kubectl logs -n <namespace> <controller> <container> > <file name>
Örneğin:
kubectl logs -n isilon isilon-controller-66d7d9d7c-6j6f4 driver > isilon-controller-66d7d9d7c-6j6f4_driver.log
Sorununuzla ilgili tüm gerekli kapsayıcılar (attach ögesi, snapshotter, provisioner, driver ögesi, resizer vb.) için bu işlemi tekrarlayın. Çıktı dosyasının dosya adını, denetleyici adı ve kapsayıcı ile eşleşecek şekilde değiştirdiğinizden emin olun.
CSI Sürücüsü düğüm bölmesi günlüklerini toplayın.
Çalışan düğümleri için günlükler de toplanmalıdır. Bu, bir düğüm içerebilir veya sorunlu bir bölme bir düğümden diğerine taşınıyorsa birden fazla düğüm içerebilir. Bu, CSI Sürücü düğümü bölmesindeki (sürücü, kayıt şirketi vb.) kapsayıcıların her biri için günlükleri toplar:
kubectl logs -n <namespace> <worker node> > <filename>.txt
Örneğin:
kubectl logs -n isilon isilon-node-9wngk driver > isilon-node-9wngk_driver.txt kubectl logs -n isilon isilon-node-9wngk registrar > isilon-node-9wngk_registrar.txt
Alternatif
Komut Dosyası
Bu, tüm Denetleyici günlüklerini ayrı ayrı oluşturur ("isilon" ad alanını gerekirse 2 basamak değiştirin) ve gerektiğinde kapsayıcılar ekler.
for x in $(kubectl get pods -n isilon | grep controller | awk '{print $1}'); do for i in attacher provisioner driver snapshotter;do kubectl logs -n isilon $x -c $i > $x-$i.txt;done;done
Bu, düğüm günlüklerini toplar (gerekirse "isilon" ad alanını iki yerde değiştirin) ve gerektiğinde kapsayıcıları ekler.
for x in $(kubectl get pods -n isilon | grep node | awk '{print $1}'); do for i in driver registrar;do kubectl logs -n isilon $x -c $i > $x-$i.txt;done;done
Seçenekten
beriTüm günlükleri toplamak, gerekenden daha fazla veri sağlayabilir. Bu "--since" seçeneği, bilinen bir süre boyunca toplamak için kullanılabilir. Bu seçeneği, günlük toplamanın ne kadar geriye gitmesi gerektiğine bağlı olarak saniye, dakika veya saat için "5 sn", "5 m" veya "5 h" izler. Bu, sorun yeniden oluşturulduysa, günlüklerin son 5 dakikasını (veya yeniden oluşturmak için geçen süreyi) toplayın ve yararlıdır:
Örneğin:
kubectl logs -n isilon isilon-node-xxx driver --since 5m > isilon-node-xxx_driver.txt
Tüm kapsayıcılar
Sorun giderme adımlarında, günlükleri yukarıda açıklandığı şekilde ayrı ayrı toplamak faydalı olur. Bazen, kapsayıcı adını "--all-containers"Bölmenin tüm kapsayıcılarının günlüklerini toplamak yararlı olabilir.
Örneğin:
kubectl logs -n isilon isilon-node-xxx --all-containers> isilon-node_driver.txt
Diğer gerekli bilgiler:
Container Orchestrator (K8s, OpenShift vb.) ve sürümü
Kubernetes sürümü ve türü
Sürücü sürümü
Dizi sürümü veya mikro kod
K8 düğümleri İşletim sistemi ve sürümü
Additional Information
Dağıtımları listele:
NAMESPACE NAME READY UP-TO-DATE AVAILABLE AGE
csi-powerscale isilon-controller 1/1 1 1 14d
powermax powermax-controller 1/1 1 26d
unity unity-controller 1/1 1 1 1 47d
vxflexos-controller 2/2 2 107d
-Adı:
X_CSI_DEBUG değeri: "true"
Isilon için OneFS REST API içeriğinin 0 (doğru) olarak ayarlayarak hata ayıklamada da oturum açması gerekir:
-Adı:
X_CSI_VERBOSE değeri: "0"
Daemonset'i düzenleyerek CSI Sürücü düğümü hata ayıklama günlüklerini etkinleştirme.
Hata ayıklama, daemonset'i düzenleyerek etkinleştirilir.
Daemonset'leri listele:
NAMESPACE NAME DESIRED CURRENT READY UP-TO-DATE AVAILABLE NODE SELECTOR AGE
csi-powerscale isilon-node 2 2 2 2 2 14d
powermax powermax-node 2 2 2 2 2 26d
unity unity-node 2 2 2 2 2 47d
vxflexos vxflexos-node 2 2 2 2 2 107d
-Adı:
X_CSI_DEBUG değeri: "true" (doğru)
Isilon için OneFS REST API'nin içeriği de 0 (doğru) olarak ayarlayarak hata ayıklamada oturum açılmalıdır:
-Adı:
X_CSI_VERBOSE değeri: "0"
Hata ayıklama günlükleri retroaktif olduğundan günlükleri toplamadan önce mümkünse sorunu yeniden gerçekleştirin.