PowerFlex 3.x: SDS hizmeti, işlev drl_IsClean ile sürekli panik yapar
Summary: Nadir senaryolarda, SDS hizmeti drl_IsClean işleviyle sürekli panikleyebilir. Bu sorun, SDS aygıtlarının boyutu 2 TB'tan büyük olduğunda gözlemlenmiştir.
Symptoms
SDS hizmeti, aşağıdaki yığın izlemesiyle sürekli panik yapar:
/opt/emc/scaleio/sds/logs/exp.0
2024/07/22 21:54:33.819866 Panic in file /data/build/workspace/ScaleIO-Common-Job/src/tgt/bm/drl.c, line 1238, function drl_IsClean, PID 17253.Panic Expression !(offsetInLbs < pDrl->protectedOffsetInLbs) PANIC_ID_tgt_1497349762194.
/opt/emc/scaleio/sds/bin/sds-3.6.400.107(mosDbg_PanicPrepare+0x13a) [0x93ab8a]
/opt/emc/scaleio/sds/bin/sds-3.6.400.107(drl_IsClean+0x5e) [0x9346ae]
/opt/emc/scaleio/sds/bin/sds-3.6.400.107(mgPhyDev_IsDrlGroupClean+0x4b) [0x93476b]
/opt/emc/scaleio/sds/bin/sds-3.6.400.107(mgPhyComb_ReadIntegrityBits+0x130) [0x906040]
/opt/emc/scaleio/sds/bin/sds-3.6.400.107(mgStorageRegion_ReadRegionIntegrity+0xb4) [0x906224]
/opt/emc/scaleio/sds/bin/sds-3.6.400.107(storageRegion_ReadDirtyRegion+0xad) [0x740f4d]
/opt/emc/scaleio/sds/bin/sds-3.6.400.107(raidComb_ReadDrl+0x7d) [0x74105d]
/opt/emc/scaleio/sds/bin/sds-3.6.400.107(ioh_ReadCombDrl+0x758) [0x5eb368]
/opt/emc/scaleio/sds/bin/sds-3.6.400.107(ioh_NewRequest+0x2084) [0x5fb4a4]
/opt/emc/scaleio/sds/bin/sds-3.6.400.107(contNet_RecvIORequest+0x2c4) [0x601534]
Etki
Başka herhangi bir SDS, aşağıdaki durumlardan birinde olmasının bir parçası olarak ayrıştırılırsa kullanıcı verilerinin kullanılamaması meydana gelebilir:
- Anında Bakım Modu (IMM)
- Hata durumu
- Devam eden bir yeniden oluşturma sırasında
Cause
Büyük aygıt ofsetlerinin neden olduğu SDS hizmet panikleri.
Resolution
Düzeltme:
- PowerFlex 3.6.5 ve üzeri (destek sonu)
- PowerFlex 4.5 ve üzeri
Geçici Çözüm:
Seçeneklerden birini takip edin.
1. Seçenek sorunu çözmezse 2. Seçeneğe gidin.
1. Seçenek:
-
- SDS düğümünü scli komut satırından veya Sunum Sunucusu kullanıcı arayüzünden IMM'ye girin.
- SDS düğümü IMM'ye giremezse, komut dosyasını çalıştırarak SDS daemon'ını durdurun
/opt/emc/scaleio/sds/bin/delete_service.shIP adresi için sorgular.Take necessary precautions to prevent the cluster from entering a Data Unavailability (DU) state. Before stopping the SDS daemon, verify that no Rebuild is in progress. If you're unsure about the DU state, consult L2 or an SME.
- SDS düğümü IMM'ye giremezse, komut dosyasını çalıştırarak SDS daemon'ını durdurun
- SDS İBB'ye yerleştirildikten sonra SDS hizmetini durdurun
/opt/emc/scaleio/sds/bin/delete_service.sh - SDS'deki paylaşılan belleği (CloudLink paylaşılan belleği dahil) çıkarın.
- Aşağıdaki komutla oluşturulan dosyaları geçici bir dizine taşıyın:
ls -l /dev/shm | egrep -i *EMC_sds* ls -l /dev/shm | egrep emc_scaleio_*
- Aşağıdaki komutla oluşturulan dosyaları geçici bir dizine taşıyın:
- SDS hizmetini başlatın
/opt/emc/scaleio/sds/bin/create_service.sh
- SDS düğümünü scli komut satırından veya Sunum Sunucusu kullanıcı arayüzünden IMM'ye girin.
-
- SCLI veya Sunum sunucusu kullanıcı arayüzünü kullanarak SDS'den IMM'den çıkın. Yeniden yapılanmanın başlaması bekleniyor. SDS İBB'de değilse, bir sonraki adıma geçin
- SDS'nin bağlı olduğundan emin olmak için aşağıdaki komutun çıktılarını kontrol edin:
scli --query_all_sds
- SCLI veya Sunum sunucusu kullanıcı arayüzünü kullanarak SDS'den IMM'den çıkın. Yeniden yapılanmanın başlaması bekleniyor. SDS İBB'de değilse, bir sonraki adıma geçin
2. Seçenek:
-
Sistem Veri Arızası durumunda değilse ve yeterli boş veya yedek kapasite mevcutsa, SDS düğümünü PowerFlex Kümesinden çıkarın. Yeniden dengeleme işlemi tamamlandıktan sonra SDS düğümünü tüm SDS aygıtlarıyla birlikte yeniden ekleyin.
ÖNEMLİ:
Arka Plan Tarayıcısı (BGS) ve Kısmi Aygıt Hatası (PDE), sorunun tekrarlanmasına neden olabilir. Mümkünse BGS'yi devre dışı bırakın veya BGS'yi "yalnızca rapor" modunda kullanın.
Kalıcı sağlamalar sorunları tetiklememelidir. Ancak sağlama toplamı uyuşmazlığı varsa küçük bir yeniden oluşturma işlemi başlatılır ve bu da sorunun yeniden ortaya çıkmasına neden olabilir. Mümkünse Kalıcı Sağlama Toplamını devre dışı bırakın.