Kümeye Yeni SDS Eklendikten Sonra PowerFlex SDC'lerde IO Hataları Görülüyor
Summary: PowerFlex kümesine yeni bir SDS eklendikten ve veriler yeni SDS'ye yeniden dengelendikten sonra bazı SDC'ler G/Ç hataları gösteriyor
Symptoms
- Kümeye SDS eklendi (MDM olaylarından)
2022-03-07 18:28:07.080 MDM_CLI_CONF_COMMAND_RECEIVED INFO Command add_sds received, User: 'admin'. [4576114] protection_domain with ID a876543f00000000, fault_set N/A, New SDS name: sds12, Hostnames: 172.1.0.12, Port: 7072 2022-03-07 18:28:07.324 CLI_COMMAND_SUCCEEDED INFO Command add_sds succeeded. [4576114] ID: 7d120650000002f
- SDC günlükleri, yeni SDS'ye bağlanmaya çalışırken çekirdek yığını izlerini gösteriyor. Bunlar, SDC yeni SDS'ye bağlanmaya çalışırken birden çok kez gösterilebilir:
022-03-07T18:29:02.880040-05:00 sdc32 kernel: net_sched: page allocation failure: order:4, mode:0x104020 2022-03-07T18:29:02.880170-05:00 sdc32 kernel: CPU: 16 PID: 5662 Comm: net_sched Kdump: loaded Tainted: P OE ------------ 3.10.0-1062.el7.x86_64 #1 2022-03-07T18:29:02.880242-05:00 sdc32 kernel: Hardware name: Dell Inc. PowerEdge R740xd/5XXXXX, BIOS 2.4.8 11/26/2019 2022-03-07T18:29:02.880355-05:00 sdc32 kernel: Call Trace: 2022-03-07T18:29:02.880453-05:00 sdc32 kernel: [<ffffffffbb179262>] dump_stack+0x19/0x1b 2022-03-07T18:29:02.880553-05:00 sdc32 kernel: [<ffffffffbabc23d0>] warn_alloc_failed+0x110/0x180 2022-03-07T18:29:02.880623-05:00 sdc32 kernel: [<ffffffffbb1747fc>] __alloc_pages_slowpath+0x6b6/0x724 2022-03-07T18:29:02.880709-05:00 sdc32 kernel: [<ffffffffc09c021e>] ? netAddress_ToStrCopy+0x2de/0x520 [scini] 2022-03-07T18:29:02.880787-05:00 sdc32 kernel: [<ffffffffbabc6b84>] __alloc_pages_nodemask+0x404/0x420 2022-03-07T18:29:02.880851-05:00 sdc32 kernel: [<ffffffffbac14c68>] alloc_pages_current+0x98/0x110 2022-03-07T18:29:02.880922-05:00 sdc32 kernel: [<ffffffffbabc117e>] __get_free_pages+0xe/0x40 2022-03-07T18:29:02.880995-05:00 sdc32 kernel: [<ffffffffbac2052e>] kmalloc_order_trace+0x2e/0xa0 2022-03-07T18:29:02.881053-05:00 sdc32 kernel: [<ffffffffbac24571>] __kmalloc+0x211/0x230 2022-03-07T18:29:02.881110-05:00 sdc32 kernel: [<ffffffffc0988274>] mapClass_AllocAndInitObj+0x44/0x140 [scini] 2022-03-07T18:29:02.881167-05:00 sdc32 kernel: [<ffffffffc098959e>] mapClass_UpdateAll+0x40e/0x9b0 [scini] 2022-03-07T18:29:02.881229-05:00 sdc32 kernel: [<ffffffffc09c9994>] ? mosMitSchedThrd_CurThrdOurs+0x64/0x90 [scini] 2022-03-07T18:29:02.881298-05:00 sdc32 kernel: [<ffffffffc099aa07>] mapMdm_HandleObjUpdate_CK+0x327/0x730 [scini] 2022-03-07T18:29:02.881360-05:00 sdc32 kernel: [<ffffffffc099c070>] ? mapMdm_SendUpdateReq_CK+0xf0/0xed0 [scini] 2022-03-07T18:29:02.881419-05:00 sdc32 kernel: [<ffffffffc099c4b0>] mapMdm_SendUpdateReq_CK+0x530/0xed0 [scini] 2022-03-07T18:29:02.881480-05:00 sdc32 kernel: [<ffffffffc09a704f>] ? netSock_DoIO+0xef/0x7d0 [scini] 2022-03-07T18:29:02.881543-05:00 sdc32 kernel: [<ffffffffc09aaf47>] ? netChanThrottler_TryToWakeupWaiterOfCond+0x27/0x100 [scini] 2022-03-07T18:29:02.881606-05:00 sdc32 kernel: [<ffffffffc09ab118>] ? netChanThrottler_TryToWakeupWaiter+0x58/0x80 [scini] 2022-03-07T18:29:02.881660-05:00 sdc32 kernel: [<ffffffffc095cc80>] ? netChan_SendReq_CK+0x90/0xa70 [scini] 2022-03-07T18:29:02.881716-05:00 sdc32 kernel: [<ffffffffc095cdd0>] netChan_SendReq_CK+0x1e0/0xa70 [scini] 2022-03-07T18:29:02.881775-05:00 sdc32 kernel: [<ffffffffc09699c5>] netCon_SendReq_CK+0x175/0x590 [scini] 2022-03-07T18:29:02.881835-05:00 sdc32 kernel: [<ffffffffc0963cf7>] ? netRPC_SendDone_CK+0x47/0xab0 [scini] 2022-03-07T18:29:02.881890-05:00 sdc32 kernel: [<ffffffffc0963dd3>] netRPC_SendDone_CK+0x123/0xab0 [scini] 2022-03-07T18:29:02.881959-05:00 sdc32 kernel: [<ffffffffc09c9c24>] mosMit_RunWithTLS+0x54/0x60 [scini] 2022-03-07T18:29:02.882017-05:00 sdc32 kernel: [<ffffffffc09cbb92>] mosMitSchedThrd_ThrdEntry+0x1a2/0x500 [scini] 2022-03-07T18:29:02.882071-05:00 sdc32 kernel: [<ffffffffc09c82f0>] ? mosTicks_DestroyEnvSpecific+0x10/0x10 [scini] 2022-03-07T18:29:02.882126-05:00 sdc32 kernel: [<ffffffffc09c8310>] mosOsThrd_Entry+0x20/0x50 [scini] 2022-03-07T18:29:02.882185-05:00 sdc32 kernel: [<ffffffffbaac50d1>] kthread+0xd1/0xe0 2022-03-07T18:29:02.882240-05:00 sdc32 kernel: [<ffffffffbaac5000>] ? insert_kthread_work+0x40/0x40 2022-03-07T18:29:02.882294-05:00 sdc32 kernel: [<ffffffffbb18bd37>] ret_from_fork_nospec_begin+0x21/0x21 2022-03-07T18:29:02.882351-05:00 sdc32 kernel: [<ffffffffbaac5000>] ? insert_kthread_work+0x40/0x40 2022-03-07T18:29:02.891431-05:00 sdc32 kernel: ScaleIO mapClass_AllocAndInitObj:1301 :Error: Failed to allocate memory 38480.Cannot process MDM response
- SDC günlükleri daha sonra G/Ç hatalarını gösterir:
2022-03-07T18:49:03.652009-05:00 sdc32 kernel: ScaleIO mapMultiHead_UpdateInPlace:561 :Warning: Invalid primaryTgtIdx 47 at 2. Multi-head ID dd990042. 2022-03-07T18:49:03.652130-05:00 sdc32 kernel: ScaleIO mapClass_UpdateAll:614 :Error: Object ffff948c7f350000 (class multi_head) failed to update in place.status NO_RESOURCES (67) 2022-03-07T18:49:04.662144-05:00 sdc32 kernel: ScaleIO mapVolIO_ReportIOErrorIfNeeded:491 :[67641433832] IO-ERROR Type READ. comb: 6ecc80210154. offsetInComb 14536800. SizeInLB 256. SDS_ID 7dd0d24700000033. Comb Gen 21c1. Head Gen 222c. StartLB 5fb1ac860. 2022-03-07T18:49:04.662268-05:00 sdc32 kernel: blk_update_request: I/O error, dev scinic, sector 25687672672
Etki
Bazı SDC'lerde G/Ç hataları
Cause
Resolution
GÇ hataları, yeni SDS'nin Anında Bakım Moduna alınmasıyla hemen durdurulabilir. SDC'ler verilerini kalan SDS'lerden alabilir. SDC bellek sorunu çözüldüğünde SDS'yi bakım dışı bırakın.
Burada yapılması gereken birkaç şey var, hepsi eylem planı için düşünülmeli:
- Bunu düzeltmek için emin bir yöntem gerekirse SDC ana bilgisayarının yeniden başlatılması sorunu çözer. İşletim sistemini yeniden başlatır ve daha önce var olan bellek parçalanması ortadan kalkar
-
Yeniden başlatma mümkün değilse aşağıdaki komutu kullanın. Parçalanmış belleği mümkün olduğunca geri kazanmaya ve sıkıştırmaya çalışır. Bunun işe yarayacağı garanti edilmez ve bellek parçalarını geri kazandığı/sıkıştırdığı birkaç saniye boyunca mevcut uygulamaları kesintiye uğratabilir:
sync; echo 1 > /proc/sys/vm/drop_caches; echo 1 > /proc/sys/vm/compact_memory
Yukarıdaki komutun yardımcı olup olmadığını görmek için "cat /proc/buddyinfo" ile bellek kullanımını kontrol edin. Sıfırın üzerine çıkıp çıkmadığını görmek için yukarıdaki komutu çalıştırmadan önce ve sonra kullanın. "Düğüm 0, bölge Normal" satırındaki dördüncü sütuna bakıyoruz; bu, kullanılabilir 64 KB bitişik bellek öbeği sayısıdır. Bu örnekte, geri kazanmak/sıkıştırmak için yukarıdaki komutu çalıştırmadan önce şunları gösterir:sdc32:~ # cat /proc/buddyinfo Node 0, zone DMA 1 0 0 1 2 1 1 0 1 1 2 Node 0, zone DMA32 9 5 7 5 9 6 8 6 7 5 295 Node 0, zone Normal 909921 1263646 202478 0<=== 0 0 0 0 0 0 0 Node 1, zone Normal 39085 0 0 0 0 0 0 0 0 0 0
- sysctl -a" komutunu kullanarak çekirdekteki aşırı bellek atama ayarlarını kontrol edin. Çekirdek varsayılanı aşağıdaki gibi kullanıyorsa:
vm.overcommit_memory = 0
vm.overcommit_ratio = 50
Yeniden başlatmanın ardından işletim sistemine daha fazla bellek sağlamak ve gelecekte bu sorunu önlemek için bu parametreleri aşağıdaki gibi değiştirme konusunda işletim sistemi satıcısıyla konuşmak avantajlı olacaktır:
vm.overcommit_memory = 2
vm.overcommit_ratio = 98
- Linux Çekirdeği, işletim sistemi bellek parçalanmasının düzenli bir modeli haline gelirse yükseltilmesi gerekebilir
Etkilenen Sürümler
Tüm PowerFlex SDC'ler işletim sistemi bellek parçalanması sorunlarından etkilenebilir.