[Question] Về giới hạn của tham số file-max của kernel |
20/09/2010 09:44:43 (+0700) | #1 | 221076 |
|
K4i
Moderator
|
Joined: 18/04/2006 09:32:13
Messages: 635
Location: Underground
Offline
|
|
Hi all,
Thỉnh thoảng một con server của mình xuất hiện một loạt thông báo trong /var/log/messages
Code:
Sep 14 16:57:53 xxxxsrv kernel: VFS: file-max limit 65536 reached
Thông báo này kéo dài trong khoảng 2, 3 phút, server down. Load average trong khoảng thời gian đó vọt lên cỡ 200 - 400.
Mình đã kiểm tra lại tham số file-max trong /proc
Code:
[root@xxxxsrv ~]# cat /proc/sys/kernel/file-max
cat: /proc/sys/kernel/file-max: No such file or directory
Dùng sysctl
Code:
[root@xxxxsrv ~]# sysctl -a | grep file-max
fs.file-max = 65536
Phiên bản của nhân
Code:
[user@xxxxsrv ~]$ uname -ra
Linux db09srv.ho.fpt.vn 2.6.9-67.0.22.ELlargesmp #1 SMP Fri Jul 11 10:59:18 EDT 2008 x86_64 x86_64 x86_64 GNU/Linux
Mình muốn hỏi mấy vấn đề:
- Có thể tăng giá trị file-max lên được không hay đây là giới hạn của hệ thống? Nếu như tăng lên thì lợi hại thế nào, liệu có thể giải quyết được vấn đề này không?
- Hiện tại mình đang nghi là có xảy ra hiện tượng memory leakage trên hệ thống nhưng đang chưa biết xử lý thế nào, debug ra sao?
Rất mong mọi người giúp đỡ. |
|
Sống là để không chết chứ không phải để trở thành anh hùng |
|
|
|
[Question] Về giới hạn của tham số file-max của kernel |
20/09/2010 11:13:24 (+0700) | #2 | 221083 |
|
quanta
Moderator
|
Joined: 28/07/2006 14:44:21
Messages: 7265
Location: $ locate `whoami`
Offline
|
|
K4i wrote:
Hi all,
Thỉnh thoảng một con server của mình xuất hiện một loạt thông báo trong /var/log/messages
Code:
Sep 14 16:57:53 xxxxsrv kernel: VFS: file-max limit 65536 reached
Thông báo này kéo dài trong khoảng 2, 3 phút, server down. Load average trong khoảng thời gian đó vọt lên cỡ 200 - 400.
Bạn kiểm tra xem có bị uninterruptible sleep không?
Code:
$ ps -eo pid,user,state,cmd | awk '$3 ~/[RD]/ { print $0 }'
K4i wrote:
Mình đã kiểm tra lại tham số file-max trong /proc
Code:
[root@xxxxsrv ~]# cat /proc/sys/kernel/file-max
cat: /proc/sys/kernel/file-max: No such file or directory
Nó nằm ở:
Code:
$ cat /proc/sys/fs/file-max
204883
K4i wrote:
Mình muốn hỏi mấy vấn đề:
- Có thể tăng giá trị file-max lên được không hay đây là giới hạn của hệ thống? Nếu như tăng lên thì lợi hại thế nào, liệu có thể giải quyết được vấn đề này không?
Câu trả lời là có vì nhìn vào cái output mặc định của mình thì thấy.
K4i wrote:
- Hiện tại mình đang nghi là có xảy ra hiện tượng memory leakage trên hệ thống nhưng đang chưa biết xử lý thế nào, debug ra sao?
Bạn có thể check với valgrind. |
|
Let's build on a great foundation! |
|
|
|
[Question] Về giới hạn của tham số file-max của kernel |
20/09/2010 11:34:17 (+0700) | #3 | 221085 |
|
K4i
Moderator
|
Joined: 18/04/2006 09:32:13
Messages: 635
Location: Underground
Offline
|
|
Hi quanta,
Em muốn hỏi mấy thứ
1. uninterruptible sleep thì ảnh hưởng gì ở đây mà cần kiểm tra, trong trạng thái bình thường cũng có các uninterruptible sleep này cơ mà.
2. Việc tăng file-max lên thì có thể, nhưng đâu thể giải thích chung chung là như vậy được. Cái em quan tâm là việc này ảnh hưởng gì đến tính ổn định của hệ thống hay không?
|
|
Sống là để không chết chứ không phải để trở thành anh hùng |
|
|
|
[Question] Về giới hạn của tham số file-max của kernel |
20/09/2010 15:14:02 (+0700) | #4 | 221109 |
|
quanta
Moderator
|
Joined: 28/07/2006 14:44:21
Messages: 7265
Location: $ locate `whoami`
Offline
|
|
Hi,
K4i wrote:
Em muốn hỏi mấy thứ
1. uninterruptible sleep thì ảnh hưởng gì ở đây mà cần kiểm tra, trong trạng thái bình thường cũng có các uninterruptible sleep này cơ mà.
Ảnh hưởng ở chỗ: nó có thể là nguyên nhân gây nên load average cao như vậy. Đã gọi là trạng thái bình thường thì không có process nào ở D state đâu (hoặc nếu có thì cũng chỉ 1, 2 cái là cùng).
K4i wrote:
2. Việc tăng file-max lên thì có thể, nhưng đâu thể giải thích chung chung là như vậy được. Cái em quan tâm là việc này ảnh hưởng gì đến tính ổn định của hệ thống hay không?
file-max là số lượng file descriptors lớn nhất có thể mở trên hệ thống. Khi gặp tình trạng này, bạn thử dùng lsof xác định xem con số thực là bao nhiêu. Việc tăng nó lên 2^16 * 1.5 hoặc 2^17 chắc chắn là không ảnh hưởng gì đến tính ổn định của hệ thống cả. Vấn đề cần tìm hiểu là tại sao cái process kia nó lại mở nhiều fd đến vậy.
PS: hệ thống của bạn có bao nhiêu RAM vậy? |
|
Let's build on a great foundation! |
|
|
|
[Question] Về giới hạn của tham số file-max của kernel |
20/09/2010 15:25:52 (+0700) | #5 | 221113 |
|
K4i
Moderator
|
Joined: 18/04/2006 09:32:13
Messages: 635
Location: Underground
Offline
|
|
Hi quanta,
Đây là một trường hợp phải debug thông qua log, do vậy em rất muốn hỏi các kinh nghiệm cần thiết vì không thể:
- Giả lập được tình huống đó trên thực tế vì thi thoảng mới xẩy ra tình huống đó nhưng đây là hệ thống most-critical nên cần phải giải quyết dứt điểm.
- Khi xuất hiện lỗi đó, average đột ngột tăng lên, hệ thống đờ đẫn ra và không thể nào control được.
Thêm nữa, nếu chỉ cố tăng file-max descriptor lên vô cùng thì em nghĩ chưa chắc đã giải quyết được vấn đề vì hoàn toàn có thể phòi ra một cái lỗi tương tự như đã từng xảy ra.
PS: máy chủ này 28GB RAM, đã cấu hình HugePages
|
|
Sống là để không chết chứ không phải để trở thành anh hùng |
|
|
|
[Question] Về giới hạn của tham số file-max của kernel |
20/09/2010 15:47:05 (+0700) | #6 | 221117 |
mR.Bi
Member
|
0 |
|
|
Joined: 22/03/2006 13:17:49
Messages: 812
Offline
|
|
Nguyên tắc của việc xử lí sự cố là loại trừ tất cả khả năng dẫn đến sự cố. Nếu bạn cứ ngồi đó mà băn khoăn xem thử có nên như thế không trong khi đã xác định được không thiết lập được tình huống thực tế là phi thực tế.
Câu hỏi là có thể tăng giá trị file-max lên được không thì anh Quanta đã trả lời rồi, vậy bạn cứ thử xem thế nào?
Thêm nữa, hệ thống đang chạy là hệ thống gì, kiểm tra xem có thể upgrade lên phiên bản mới không? Phiên bản cũ có gặp lỗi gì critical không? ....
Khi không thể xác định ngay thì cách duy nhất là...mò chứ còn gì nữa :- ) |
|
All of my life I have lived by a code and the code is simple: "honour your parent, love your woman and defend your children" |
|
|
|
[Question] Về giới hạn của tham số file-max của kernel |
20/09/2010 15:56:38 (+0700) | #7 | 221118 |
|
quanta
Moderator
|
Joined: 28/07/2006 14:44:21
Messages: 7265
Location: $ locate `whoami`
Offline
|
|
K4i wrote:
Hi quanta,
Đây là một trường hợp phải debug thông qua log, do vậy em rất muốn hỏi các kinh nghiệm cần thiết vì không thể:
- Giả lập được tình huống đó trên thực tế vì thi thoảng mới xẩy ra tình huống đó nhưng đây là hệ thống most-critical nên cần phải giải quyết dứt điểm.
- Khi xuất hiện lỗi đó, average đột ngột tăng lên, hệ thống đờ đẫn ra và không thể nào control được.
Thế thì nên thiết lập một hệ thống monitor để khi load average chạm ngưỡng nào đó là alert ngay để còn kịp gõ command chứ để đến khi nó vọt lên vài trăm và "không thể nào control được" thì bó tay.
K4i wrote:
Thêm nữa, nếu chỉ cố tăng file-max descriptor lên vô cùng thì em nghĩ chưa chắc đã giải quyết được vấn đề vì hoàn toàn có thể phòi ra một cái lỗi tương tự như đã từng xảy ra.
Thì mình đã nói là dựa vào kết quả lsof để mà tăng rồi mà, có ai nói tăng lên vô cùng đâu.
K4i wrote:
PS: máy chủ này 28GB RAM, đã cấu hình HugePages
Nếu vậy thì trên lý thuyết bạn có thể tăng file-max lên thành 65536 * 28. |
|
Let's build on a great foundation! |
|
|
|
|