<![CDATA[Latest posts for the topic "Về giới hạn của tham số file-max của kernel"]]> /hvaonline/posts/list/24.html JForum - http://www.jforum.net Về giới hạn của tham số file-max của kernel 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 đỡ.]]>
/hvaonline/posts/list/35965.html#221076 /hvaonline/posts/list/35965.html#221076 GMT
Về giới hạn của tham số file-max của kernel

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.]]>
/hvaonline/posts/list/35965.html#221083 /hvaonline/posts/list/35965.html#221083 GMT
Về giới hạn của tham số file-max của kernel /hvaonline/posts/list/35965.html#221085 /hvaonline/posts/list/35965.html#221085 GMT Về giới hạn của tham số file-max của kernel

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?]]>
/hvaonline/posts/list/35965.html#221109 /hvaonline/posts/list/35965.html#221109 GMT
Về giới hạn của tham số file-max của kernel /hvaonline/posts/list/35965.html#221113 /hvaonline/posts/list/35965.html#221113 GMT Về giới hạn của tham số file-max của kernel /hvaonline/posts/list/35965.html#221117 /hvaonline/posts/list/35965.html#221117 GMT Về giới hạn của tham số file-max của kernel

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.]]>
/hvaonline/posts/list/35965.html#221118 /hvaonline/posts/list/35965.html#221118 GMT
Về giới hạn của tham số file-max của kernel

quanta wrote:

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.  
Đây là một ví dụ khi hệ thống gặp sự cố, output của lệnh #sar -a
Tần suất xuất hiện lỗi ngày càng ]]>
/hvaonline/posts/list/35965.html#221189 /hvaonline/posts/list/35965.html#221189 GMT
Về giới hạn của tham số file-max của kernel /hvaonline/posts/list/35965.html#221191 /hvaonline/posts/list/35965.html#221191 GMT Về giới hạn của tham số file-max của kernel /hvaonline/posts/list/35965.html#221193 /hvaonline/posts/list/35965.html#221193 GMT Về giới hạn của tham số file-max của kernel /hvaonline/posts/list/35965.html#221195 /hvaonline/posts/list/35965.html#221195 GMT Về giới hạn của tham số file-max của kernel

K4i wrote:
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
 
Hình như bạn K4i này là người quen :P Theo mình giờ phải thu nhỏ phạm vi nghi ngờ vào. Xem những ứng dụng chuyên biệt nào đang chạy (ví dụ như server này chỉ chạy db oracle thôi chẳng hạn), tìm xem có bug nào của ứng dụng này đẻ ra cái lỗi đó không? Nếu vẫn không được thì phải mò: -Log output của top và lsof ra file 1s 1 lần. Nhớ đặt rotate log không lại teo. Đành phải trâu bò tí vậy chứ biết sao :| ]]>
/hvaonline/posts/list/35965.html#221493 /hvaonline/posts/list/35965.html#221493 GMT
Về giới hạn của tham số file-max của kernel /hvaonline/posts/list/35965.html#221494 /hvaonline/posts/list/35965.html#221494 GMT Về giới hạn của tham số file-max của kernel

giobuon wrote:

K4i wrote:
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
 
Hình như bạn K4i này là người quen :P Theo mình giờ phải thu nhỏ phạm vi nghi ngờ vào. Xem những ứng dụng chuyên biệt nào đang chạy (ví dụ như server này chỉ chạy db oracle thôi chẳng hạn), tìm xem có bug nào của ứng dụng này đẻ ra cái lỗi đó không? Nếu vẫn không được thì phải mò: -Log output của top và lsof ra file 1s 1 lần. Nhớ đặt rotate log không lại teo. Đành phải trâu bò tí vậy chứ biết sao :|  
Bạn là người thứ hai biết con server này chạy Oracle :P. Nếu là người quen PM mình nhá :D. Top thì vẫn treo ở terminal suốt, có tắt đâu. Output của lsof trung bình cỡ khoảng 20k. 3.
ernel 2.6.9 là quá cũ rùi, nên sử dụng kernel từ 2.6.20 trở lên có thể bạn đang xài ext2/3 có giới hạn số file ở một thư mục nếu vậy có thể chuyển sang ext4 nó tốt hơn 
Ô cứ nói thay là thay được đó bạn. Có những thứ không dám nghĩ đến việc thay đấy...]]>
/hvaonline/posts/list/35965.html#222441 /hvaonline/posts/list/35965.html#222441 GMT
Về giới hạn của tham số file-max của kernel /hvaonline/posts/list/35965.html#222456 /hvaonline/posts/list/35965.html#222456 GMT Về giới hạn của tham số file-max của kernel

quanta wrote:
Có thể là bug của Oracle. Bạn vào Metalink search thử 5861703 xem. 
Doc ID 5861703, this bug is fixed in 10.2.0.4. Code:
system@PROD1> select version from v$instance;

VERSION
-----------------
10.2.0.4.0
@quanta: FYI]]>
/hvaonline/posts/list/35965.html#222459 /hvaonline/posts/list/35965.html#222459 GMT
Về giới hạn của tham số file-max của kernel

K4i wrote:
1. Lỗi vẫn lặp. Sau lần cuối cùng lỗi này xuất hiện mình đã tăng tham số lên gấp đôi (65530 x 2). Chưa thấy hiện tượng gì xảy ra.  
Lúc này thông báo là "file-max limit 65536 reached" hay 131072?

K4i wrote:
Output của lsof trung bình cỡ khoảng 20k. 
Bạn tìm xem process nào mở nhiều fd nhất, là bao nhiêu, có liên quan đến Oracle không? ]]>
/hvaonline/posts/list/35965.html#222463 /hvaonline/posts/list/35965.html#222463 GMT