Thông báo lỗi đó nghĩa là server có vấn đề với Non Paged Pool (NP). NP trên hệ thống windows 2k3 x86 bị giới hạn 256 MB, nó được dùng cho điều hành nhân (drivers), GUI và một số cái khác. Trong trường hợp NP Pool quá tải, hệ thống trở nên chậm chạp và không phản hồi lại, một số chương trình phần mềm không thể hoạt động bình thường (chẳng hạn như IIS từ chối kết nối).
Sự rò rỉ bộ nhớ của NP pool có thể do 1 chương trình nào đó hoạt đọng khong đúng hoặc do malware.
Virtuozzo chia sẻ NP pool giữ các VE, do đó chúng ta không nên chạy qúa nhiều VE 1 lúc (40->45 trên server với hệ thống x86). W2k3 x64 có 128GB NP pool limit nên có thể chạy được nhiều VE hơn.
Có thể giải uyết vấn đề theo cách sau:
1. Mở
Task Manager lên, vào tab
Performance và xem
Non-paged pool usage trong khu vực
Kernel Memory Usage . Giá trị
Nonpaged nên nhỏ hơn 220000K . Giới hạn
Non-paged pool size vào khoảng 256000K, nên nếu nó quá tải, Server vật lý trở nên không phản hồi (chỉ có trên cấu trúc x86).
2. Để tìm ra process nào đang chiếm dụng
Non paged memory pools, hãy mở thẻ
Processes, vào menu
View, chọn
columns, đánh dấu vào ô
PID, Session ID và
Non-paged Pool.
3. Sắp xếp lại danh sách theo cột
NP Pool và tìm tiến trình nào có giá trị
NP Pool lớn nhất. Giữ lại giá trị
PID của tiến trình đó.
4. Bật cmd và dùng lệnh
vzqueryđể tìm xem VE nào chạy tiến trình đó.
Code:
vzquery p2v <PID_found_at_previous_step>
5. Và sau đó bạn có thể xem những dịch vụ nào thuộc về tiến trình đó:
Code:
vzctl exec VEID tasklist /svc
Ví dụ: PID là 10872, tiến trình là svchost.exe
Code:
vzquery p2v 10872
Process ID: 10872
Session ID: 7 (ROOT)
VE ID: 119
Image Name PID Services
========================= ========
============================================
System Idle Process 0 N/A
System 4 N/A
smss.exe 868 N/A
csrss.exe 4388 N/A
winlogon.exe 6032 N/A
services.exe 2628 Eventlog, PlugPlay
lsass.exe 3316 Netlogon, PolicyAgent, ProtectedStorage, SamSs
svchost.exe 10104 DcomLaunch
svchost.exe 8248 RpcSs
svchost.exe 3112 Dhcp, Dnscache
svchost.exe 10440 LmHosts
svchost.exe 10872 AeLookupSvc, BITS, Browser, CryptSvc,
EventSystem, helpsvc, lanmanserver,
lanmanworkstation, Messenger, Nla,
Schedule, seclogon, SENS, winmgmt, wuauserv
spoolsv.exe 11680 Spooler
msdtc.exe 12044 MSDTC
Command 'exec' is successfully finished
Vậy, svchost.exe chiếm dụng bộ nhớ trong pool những gì chúng ta cần làm là:
Tắt dịch vụ BITS và Automatic updates (wuauserv):
Code:
vzctl exec VEID sc config wuauserv start= disabled
vzctl exec VEID sc config bits start= disabled
vzctl restart VEID
Ghi chú: Còn 1 lý do khiến các tiến trình chiếm dụng bộ nhớ là do malware. Và trong trường hợp này thì chỉ có mỗi 1 việc là kill ngay cái process đó rồi diệt virus con VE đó.