Điểm:0

Một số quá trình đang ở trạng thái ngủ không thể thực hiện được trong khi i/o ở mức thấp

lá cờ es

Tôi là quản trị viên hệ thống của máy trạm dựa trên Arch Linux. Máy trạm của chúng tôi sử dụng Slurm làm trình quản lý tải và bao gồm một máy chính và 4 nút tính toán khác. Trong vài tháng qua, chúng tôi quan sát thấy rằng các quy trình trên một số nút thỉnh thoảng bị kẹt và việc khởi động lại nút sẽ giải quyết được sự cố. Chúng tôi thấy rằng các quy trình bị kẹt ở trạng thái D (đĩa ngủ), nhưng khi chúng tôi sử dụng top hoặc các lệnh khác để kiểm tra i/o của nút, chúng tôi thấy rằng i/o trên thực tế khá thấp.

Khi một số quy trình trên nút ở trạng thái D, mọi thứ trên nút đều chậm, nhưng điều này chỉ dành cho người dùng bình thường. Khi chúng tôi sử dụng siêu người dùng để chạy các lệnh (bao gồm cả python) trên các nút bị kẹt, mọi thứ đều hoạt động tốt. Nhưng khi chúng tôi thay đổi người dùng bằng cách su NORMAL_USER, quá trình lại bị kẹt. Chúng tôi đã sử dụng phụ trợ ps và thấy rằng quá trình -bash điều hành bởi NORMAL_USER đang ở trạng thái D. Chúng tôi đã thử sử dụng bước đi để theo dõi quá trình bị mắc kẹt và chúng tôi cũng đã đào sâu vào /proc/PID, nhưng chúng tôi không tìm thấy bất cứ điều gì hữu ích. Chúng tôi cũng không xác định được bất kỳ thông báo hữu ích nào từ tạp chí. Có lẽ chúng ta đang thiếu một cái gì đó. Chúng tôi sẵn sàng nhận bất kỳ lời khuyên hoặc nhận xét nào.

Phiên bản hạt nhân của chúng tôi là 5.10.47-1-lts.

Đây là /proc/PID/trạng thái cho quy trình ở trạng thái D. Quy trình là đánh đập quá trình khi chúng ta sử dụng su NORMAL_USER. Nó là một quá trình chủ đề duy nhất.

Tên: bash
Mặt nạ: 0022
Trạng thái: D (đĩa ngủ)
Tgid: 3136723
Ngại: 0
Mã: 3136723
PPid: 3136722
TracerPid: 0
Uid: 1000093 1000093 1000093 1000093
Gid: 1000000 1000000 1000000 1000000
FDSKích thước: 256
Nhóm: 1000000 1000083
NStgid: 3136723
NSpid: 3136723
NSpgid: 3136723
NSsid: 3110369
VmPeak: 16904 kB
Kích thước Vm: 16904 kB
VmLck: 0 kB
VmPin: 0 kB
VmHWM: 3788 kB
VmRSS: 3744 kB
RssAnon: 412 kB
RssTệp: 3332 kB
RssShmem: 0 kB
VmDữ liệu: 608 kB
VmStk: 132 kB
VmExe: 588 kB
VmLib: 1948 kB
VmPTE: 52 kB
VmSwap: 0 kB
Trang lớntlb: 0 kB
CoreDumping: 0
THP_enabled: 1
Chủ đề: 1
SigQ: 12/772094
SigPnd: 0000000000000000
ShdPnd: 0000000008000002
SigBlk: 0000000000000000
Ký tên: 0000000000384004
SigCgt: 000000004b813efb
CapInh: 0000000000000000
CapPrm: 0000000000000000
CapEff: 0000000000000000
CapBnd: 000001ffffffffff
CapAmb: 0000000000000000
NoNewPrivs: 0
bí mật: 0
Secomp_filters: 0
Speculation_Store_Bypass: chủ đề dễ bị tấn công
Cpus_allowed: ffff,ffffffff
Cpus_allowed_list: 0-47
Mems_allowed: 00000003
Mems_allowed_list: 0-1
tự nguyện_ctxt_switches: 4
nonvoluntary_ctxt_switches: 1

Đây là /proc/PID/ngăn xếp cho cùng một quá trình.

[<0>] nfs_wait_bit_killable+0x1e/0x90 [nfs]
[<0>] nfs4_wait_clnt_recover+0x60/0x90 [nfsv4]
[<0>] nfs4_client_recover_expired_lease+0x17/0x50 [nfsv4]
[<0>] nfs4_do_open+0x2f4/0xbe0 [nfsv4]
[<0>] nfs4_atomic_open+0xe7/0x100 [nfsv4]
[<0>] nfs_atomic_open+0x1e1/0x520 [nfs]
[<0>] path_openat+0x5f5/0xfc0
[<0>] do_filp_open+0x91/0x130
[<0>] do_sys_openat2+0x96/0x150
[<0>] __x64_sys_openat+0x53/0x90
[<0>] do_syscall_64+0x33/0x40
[<0>] entry_SYSCALL_64_after_hwframe+0x44/0xa9
lá cờ jp
Một quá trình bị kẹt trên NFS có thể bị hủy bằng tín hiệu SIGKILL (kill -9).
David Chiang avatar
lá cờ es
@AlexD Tôi đã cố gắng giết các tiến trình đó và thực sự chúng có thể bị giết! Cảm ơn bạn! Bạn có thể nghĩ ra bất kỳ lý do nào khiến quy trình bị kẹt trên NFS không? Mạng giữa nút tính toán và NFS đang hoạt động bình thường và chúng tôi không tìm thấy bất kỳ thông báo lỗi nào phàn nàn về NFS trong `journalctl`.
Michael Hampton avatar
lá cờ cz
Tại sao nút không được cập nhật?
David Chiang avatar
lá cờ es
@MichaelHampton Ý bạn là phiên bản của kernel phải không?
David Chiang avatar
lá cờ es
Chúng tôi nhận thấy rằng quá trình bị kẹt trên NFS có thể do các đối số mà chúng tôi viết trong `/etc/fstab`. Chúng tôi sử dụng các tham số mặc định và chúng tôi nghĩ rằng vấn đề của chúng tôi có thể được giải quyết nếu chúng tôi chỉ định `fsc` (mặc định là `nofsc`). Chúng tôi sẽ cập nhật câu hỏi nếu điều này giải quyết được vấn đề. Cảm ơn mọi người!
David Chiang avatar
lá cờ es
Sau khi chúng tôi thay đổi các tham số cài đặt NFS, sự cố vẫn còn.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.